[Libreoffice-commits] core.git: cui/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Fri Mar 22 11:41:38 UTC 2019


 cui/source/customize/acccfg.cxx |   14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

New commits:
commit 17fa95839c8942412c9fa2338eb271ae48401980
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Fri Mar 22 10:33:19 2019 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Fri Mar 22 12:41:08 2019 +0100

    Related: tdf#124196 fix parent-wait crash in customize dialog
    
    always within welded dialogs now
    
    Change-Id: If3d7adc54e8c65e164c9edce0a2f1dddd3d63e8f
    Reviewed-on: https://gerrit.libreoffice.org/69550
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/cui/source/customize/acccfg.cxx b/cui/source/customize/acccfg.cxx
index 8d5e509ec1f7..83ded12b470f 100644
--- a/cui/source/customize/acccfg.cxx
+++ b/cui/source/customize/acccfg.cxx
@@ -1311,9 +1311,7 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, TimeOut_Impl, Timer*, void)
 {
     // activating the selection, typically "all commands", can take a long time
     // -> show wait cursor and disable input
-    weld::Window* pDialog = GetDialogFrameWeld();
-    // perhaps the tabpage is part of a SingleTabDialog then pDialog == nullptr
-    std::unique_ptr<weld::WaitObject> xWait(pDialog ? new weld::WaitObject(pDialog) : nullptr);
+    weld::WaitObject aWaitObject(GetDialogFrameWeld());
 
     weld::TreeView& rTreeView = m_xGroupLBox->get_widget();
     SelectHdl(rTreeView);
@@ -1330,7 +1328,7 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, LoadHdl, sfx2::FileDialogHelper*, void
     if ( sCfgName.isEmpty() )
         return;
 
-    GetTabDialog()->EnterWait();
+    weld::WaitObject aWaitObject(GetDialogFrameWeld());
 
     uno::Reference<ui::XUIConfigurationManager> xCfgMgr;
     uno::Reference<embed::XStorage> xRootStorage; // we must hold the root storage alive, if xCfgMgr is used!
@@ -1387,11 +1385,8 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, LoadHdl, sfx2::FileDialogHelper*, void
     }
     catch(const uno::Exception&)
     {}
-
-    GetTabDialog()->LeaveWait();
 }
 
-
 IMPL_LINK_NOARG(SfxAcceleratorConfigPage, SaveHdl, sfx2::FileDialogHelper*, void)
 {
     assert(m_pFileDlg);
@@ -1403,7 +1398,7 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, SaveHdl, sfx2::FileDialogHelper*, void
     if ( sCfgName.isEmpty() )
         return;
 
-    GetTabDialog()->EnterWait();
+    weld::WaitObject aWaitObject(GetDialogFrameWeld());
 
     uno::Reference<embed::XStorage> xRootStorage;
 
@@ -1469,11 +1464,8 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, SaveHdl, sfx2::FileDialogHelper*, void
     }
     catch(const uno::Exception&)
     {}
-
-    GetTabDialog()->LeaveWait();
 }
 
-
 void SfxAcceleratorConfigPage::StartFileDialog( StartFileDialogType nType, const OUString& rTitle )
 {
     bool bSave = nType == StartFileDialogType::SaveAs;


More information about the Libreoffice-commits mailing list