VirtualBox

Changeset 102552 in vbox


Ignore:
Timestamp:
Dec 8, 2023 4:41:52 PM (15 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
160698
Message:

FE/Qt: bugref:10570: UIMachineLogic: Fixing app shutdown hangs caused by Session Information and Soft Keyboard dialogs; This must be something new caused by changed Qt6 closeEvent handling, we have seen lots of such things already.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/runtime
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp

    r102140 r102552  
    16661666        m_pVMInformationDialog->setWindowState(m_pVMInformationDialog->windowState() & ~Qt::WindowMinimized);
    16671667        m_pVMInformationDialog->activateWindow();
    1668         connect(m_pVMInformationDialog, &UIVMInformationDialog::sigClose, this, &UIMachineLogic::sltCloseInformationDialogDefault);
    1669     }
    1670 }
    1671 
    1672 void UIMachineLogic::sltCloseInformationDialog(bool fAsync /* = false */)
    1673 {
    1674     if (!m_pVMInformationDialog)
    1675         return;
    1676     if (fAsync)
    1677         m_pVMInformationDialog->deleteLater();
    1678     else
    1679         delete m_pVMInformationDialog;
     1668        connect(m_pVMInformationDialog, &UIVMInformationDialog::sigClose,
     1669                this, &UIMachineLogic::sltCloseInformationDialog);
     1670    }
     1671}
     1672
     1673void UIMachineLogic::sltCloseInformationDialog()
     1674{
     1675    delete m_pVMInformationDialog;
    16801676    m_pVMInformationDialog = 0;
    16811677}
     
    20442040        QWidget *pCenterWidget = windowManager().realParentWindow(activeMachineWindow());
    20452041        m_pSoftKeyboardDialog = new UISoftKeyboard(0, uimachine(), pCenterWidget, uimachine()->machineName());
    2046         connect(m_pSoftKeyboardDialog, &UISoftKeyboard::sigClose, this, &UIMachineLogic::sltCloseSoftKeyboardDefault);
     2042        connect(m_pSoftKeyboardDialog, &UISoftKeyboard::sigClose,
     2043                this, &UIMachineLogic::sltCloseSoftKeyboard);
    20472044    }
    20482045
     
    20562053}
    20572054
    2058 void UIMachineLogic::sltCloseSoftKeyboard(bool fAsync /* = false */)
    2059 {
    2060     if (!m_pSoftKeyboardDialog)
    2061         return;
    2062     if (fAsync)
    2063         m_pSoftKeyboardDialog->deleteLater();
    2064     else
    2065         delete m_pSoftKeyboardDialog;
     2055void UIMachineLogic::sltCloseSoftKeyboard()
     2056{
     2057    delete m_pSoftKeyboardDialog;
    20662058    m_pSoftKeyboardDialog = 0;
    20672059}
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h

    r102138 r102552  
    238238    void sltTakeSnapshot();
    239239    void sltShowInformationDialog();
    240     void sltCloseInformationDialog(bool fAsync = false);
    241     void sltCloseInformationDialogDefault() { sltCloseInformationDialog(true); }
     240    void sltCloseInformationDialog();
    242241    void sltShowFileManagerDialog();
    243242    void sltCloseFileManagerDialog();
     
    263262    void sltShowKeyboardSettings();
    264263    void sltShowSoftKeyboard();
    265     void sltCloseSoftKeyboard(bool fAsync = false);
    266     void sltCloseSoftKeyboardDefault() { sltCloseSoftKeyboard(true); }
     264    void sltCloseSoftKeyboard();
    267265    void sltTypeCAD();
    268266#ifdef VBOX_WS_NIX
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette