diff --git a/src/qt/qt_machinestatus.cpp b/src/qt/qt_machinestatus.cpp index af81fc1e0..e873744a7 100644 --- a/src/qt/qt_machinestatus.cpp +++ b/src/qt/qt_machinestatus.cpp @@ -339,7 +339,7 @@ void MachineStatus::refresh(QStatusBar* sbar) { d->cassette.label = std::make_unique(); d->cassette.setEmpty(QString(cassette_fname).isEmpty()); connect((ClickableLabel*)d->cassette.label.get(), &ClickableLabel::clicked, [this](QPoint pos) { - MediaMenu::ptr->cassetteMenu->popup(pos); + MediaMenu::ptr->cassetteMenu->popup(pos - QPoint(0, MediaMenu::ptr->cassetteMenu->sizeHint().height())); }); d->cassette.label->setToolTip(MediaMenu::ptr->cassetteMenu->title()); sbar->addWidget(d->cassette.label.get()); @@ -347,10 +347,10 @@ void MachineStatus::refresh(QStatusBar* sbar) { if (machine_has_cartridge(machine)) { for (int i = 0; i < 2; ++i) { - d->cartridge[i].label = std::make_unique(); + d->cartridge[i].label = std::make_unique(); d->cartridge[i].setEmpty(QString(cart_fns[i]).isEmpty()); connect((ClickableLabel*)d->cartridge[i].label.get(), &ClickableLabel::clicked, [this, i](QPoint pos) { - MediaMenu::ptr->cartridgeMenus[i]->popup(pos); + MediaMenu::ptr->cartridgeMenus[i]->popup(pos - QPoint(0, MediaMenu::ptr->cartridgeMenus[i]->sizeHint().height())); }); d->cartridge[i].label->setToolTip(MediaMenu::ptr->cartridgeMenus[i]->title()); sbar->addWidget(d->cartridge[i].label.get()); @@ -370,7 +370,7 @@ void MachineStatus::refresh(QStatusBar* sbar) { d->fdd[i].setEmpty(QString(floppyfns[i]).isEmpty()); d->fdd[i].setActive(false); connect((ClickableLabel*)d->fdd[i].label.get(), &ClickableLabel::clicked, [this, i](QPoint pos) { - MediaMenu::ptr->floppyMenus[i]->popup(pos); + MediaMenu::ptr->floppyMenus[i]->popup(pos - QPoint(0, MediaMenu::ptr->floppyMenus[i]->sizeHint().height())); }); d->fdd[i].label->setToolTip(MediaMenu::ptr->floppyMenus[i]->title()); sbar->addWidget(d->fdd[i].label.get()); @@ -381,7 +381,7 @@ void MachineStatus::refresh(QStatusBar* sbar) { d->cdrom[i].setEmpty(cdrom[i].host_drive != 200 || QString(cdrom[i].image_path).isEmpty()); d->cdrom[i].setActive(false); connect((ClickableLabel*)d->cdrom[i].label.get(), &ClickableLabel::clicked, [this, i](QPoint pos) { - MediaMenu::ptr->cdromMenus[i]->popup(pos); + MediaMenu::ptr->cdromMenus[i]->popup(pos - QPoint(0, MediaMenu::ptr->cdromMenus[i]->sizeHint().height())); }); d->cdrom[i].label->setToolTip(MediaMenu::ptr->cdromMenus[i]->title()); sbar->addWidget(d->cdrom[i].label.get()); @@ -392,7 +392,7 @@ void MachineStatus::refresh(QStatusBar* sbar) { d->zip[i].setEmpty(QString(zip_drives[i].image_path).isEmpty()); d->zip[i].setActive(false); connect((ClickableLabel*)d->zip[i].label.get(), &ClickableLabel::clicked, [this, i](QPoint pos) { - MediaMenu::ptr->zipMenus[i]->popup(pos); + MediaMenu::ptr->zipMenus[i]->popup(pos - QPoint(0, MediaMenu::ptr->zipMenus[i]->sizeHint().height())); }); d->zip[i].label->setToolTip(MediaMenu::ptr->zipMenus[i]->title()); sbar->addWidget(d->zip[i].label.get()); @@ -403,7 +403,7 @@ void MachineStatus::refresh(QStatusBar* sbar) { d->mo[i].setEmpty(QString(mo_drives[i].image_path).isEmpty()); d->mo[i].setActive(false); connect((ClickableLabel*)d->mo[i].label.get(), &ClickableLabel::clicked, [this, i](QPoint pos) { - MediaMenu::ptr->moMenus[i]->popup(pos); + MediaMenu::ptr->moMenus[i]->popup(pos - QPoint(0, MediaMenu::ptr->moMenus[i]->sizeHint().height())); }); d->mo[i].label->setToolTip(MediaMenu::ptr->moMenus[i]->title()); sbar->addWidget(d->mo[i].label.get());