[Libreoffice-commits] core.git: 3 commits - include/vcl sfx2/source svx/source vcl/inc vcl/source

Caolán McNamara caolanm at redhat.com
Sun Jul 31 20:33:15 UTC 2016


 include/vcl/accel.hxx                     |    1 +
 sfx2/source/sidebar/SidebarController.cxx |    1 +
 svx/source/sidebar/PanelLayout.cxx        |    2 ++
 vcl/inc/svdata.hxx                        |    1 -
 vcl/source/window/dialog.cxx              |    2 +-
 vcl/source/window/dockwin.cxx             |    4 ++--
 vcl/source/window/syswin.cxx              |    4 ++--
 vcl/source/window/tabpage.cxx             |    4 ++--
 8 files changed, 11 insertions(+), 8 deletions(-)

New commits:
commit e02e103e3e90d1c6fa32605fdfdc4ac8cd27e6b8
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sun Jul 31 21:29:11 2016 +0100

    Resolves: tdf#101221 VclPtr: funkiness with PopupMenu dtor before dispose
    
    Change-Id: I6f8d980cc14b7f8c7b7ed5ee66a54dfce9d6e09a

diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx
index 80afec5..34c181f 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -927,6 +927,7 @@ void SidebarController::ShowPopupMenu (
     Rectangle aBox (rButtonBox);
     aBox.Move(mpTabBar->GetPosPixel().X(), 0);
     pMenu->Execute(mpParentWindow, aBox, PopupMenuFlags::ExecuteDown);
+    pMenu.disposeAndClear();
 }
 
 VclPtr<PopupMenu> SidebarController::CreatePopupMenu (
commit df0baf4b00a84669997c2105b63d96f0865bfb3b
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jul 30 21:54:49 2016 +0100

    Related: tdf#99324 let panels assign auto mnemonics
    
    Change-Id: I9882dc3611f4ba04d02b210eceee362514fd699c

diff --git a/svx/source/sidebar/PanelLayout.cxx b/svx/source/sidebar/PanelLayout.cxx
index 62ffa61..f4ec456 100644
--- a/svx/source/sidebar/PanelLayout.cxx
+++ b/svx/source/sidebar/PanelLayout.cxx
@@ -27,6 +27,8 @@ PanelLayout::PanelLayout(vcl::Window* pParent, const OString& rID, const OUStrin
     m_pUIBuilder = new VclBuilder(this, getUIRootDir(), rUIXMLDescription, rID, rFrame);
     m_aPanelLayoutIdle.SetPriority(SchedulerPriority::RESIZE);
     m_aPanelLayoutIdle.SetIdleHdl( LINK( this, PanelLayout, ImplHandlePanelLayoutTimerHdl ) );
+    if (GetSettings().GetStyleSettings().GetAutoMnemonic())
+       Accelerator::GenerateAutoMnemonicsOnHierarchy(this);
 }
 
 PanelLayout::~PanelLayout()
commit 76be678e7478e4863a8360e26425a39afa5af4fb
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jul 30 21:53:56 2016 +0100

    rename ImplWindowAutoMnemonic and expose
    
    Change-Id: Iddb0d84b6dbfeb263a68ddc3b8b5c39bbdcf46f6

diff --git a/include/vcl/accel.hxx b/include/vcl/accel.hxx
index 295e2db..ad5ad56 100644
--- a/include/vcl/accel.hxx
+++ b/include/vcl/accel.hxx
@@ -82,6 +82,7 @@ public:
     Accelerator&            operator=( const Accelerator& rAccel );
 
     static bool             ToggleMnemonicsOnHierarchy(const CommandEvent& rCEvent, vcl::Window *pWindow);
+    static void             GenerateAutoMnemonicsOnHierarchy(vcl::Window* pWindow);
 };
 
 #endif // INCLUDED_VCL_ACCEL_HXX
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx
index 4ef13ca..b538d48 100644
--- a/vcl/inc/svdata.hxx
+++ b/vcl/inc/svdata.hxx
@@ -349,7 +349,6 @@ VCL_PLUGIN_PUBLIC ResMgr*     ImplGetResMgr();
 VCL_PLUGIN_PUBLIC ResId VclResId( sal_Int32 nId ); // throws std::bad_alloc if no res mgr
 DockingManager*     ImplGetDockingManager();
 BlendFrameCache*    ImplGetBlendFrameCache();
-void        ImplWindowAutoMnemonic( vcl::Window* pWindow );
 
 bool        ImplCallHotKey( const vcl::KeyCode& rKeyCode );
 void        ImplFreeHotKeyData();
diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx
index 63657f5..ec4a3be 100644
--- a/vcl/source/window/dialog.cxx
+++ b/vcl/source/window/dialog.cxx
@@ -189,7 +189,7 @@ vcl::Window * firstLogicalChildOfParent(vcl::Window *pTopLevel)
     return pChild;
 }
 
-void ImplWindowAutoMnemonic( vcl::Window* pWindow )
+void Accelerator::GenerateAutoMnemonicsOnHierarchy(vcl::Window* pWindow)
 {
     MnemonicGenerator   aMnemonicGenerator;
     vcl::Window*                 pGetChild;
diff --git a/vcl/source/window/dockwin.cxx b/vcl/source/window/dockwin.cxx
index da9ffc5..56c968c 100644
--- a/vcl/source/window/dockwin.cxx
+++ b/vcl/source/window/dockwin.cxx
@@ -697,8 +697,8 @@ void DockingWindow::Resizing( Size& )
 
 void DockingWindow::DoInitialLayout()
 {
-    if ( GetSettings().GetStyleSettings().GetAutoMnemonic() )
-       ImplWindowAutoMnemonic( this );
+    if (GetSettings().GetStyleSettings().GetAutoMnemonic())
+       Accelerator::GenerateAutoMnemonicsOnHierarchy(this);
 
     if (isLayoutEnabled())
     {
diff --git a/vcl/source/window/syswin.cxx b/vcl/source/window/syswin.cxx
index 836bca9..d482cbd 100644
--- a/vcl/source/window/syswin.cxx
+++ b/vcl/source/window/syswin.cxx
@@ -1152,8 +1152,8 @@ void SystemWindow::setOptimalLayoutSize()
 
 void SystemWindow::DoInitialLayout()
 {
-    if ( GetSettings().GetStyleSettings().GetAutoMnemonic() )
-       ImplWindowAutoMnemonic( this );
+    if (GetSettings().GetStyleSettings().GetAutoMnemonic())
+       Accelerator::GenerateAutoMnemonicsOnHierarchy(this);
 
     if (isLayoutEnabled())
     {
diff --git a/vcl/source/window/tabpage.cxx b/vcl/source/window/tabpage.cxx
index 36c9506..e09f18f 100644
--- a/vcl/source/window/tabpage.cxx
+++ b/vcl/source/window/tabpage.cxx
@@ -104,8 +104,8 @@ void TabPage::StateChanged( StateChangedType nType )
 
     if ( nType == StateChangedType::InitShow )
     {
-        if ( GetSettings().GetStyleSettings().GetAutoMnemonic() )
-            ImplWindowAutoMnemonic( this );
+        if (GetSettings().GetStyleSettings().GetAutoMnemonic())
+            Accelerator::GenerateAutoMnemonicsOnHierarchy(this);
         // FIXME: no layouting, workaround some clipping issues
         ImplAdjustNWFSizes();
     }


More information about the Libreoffice-commits mailing list