[Libreoffice-commits] core.git: Branch 'libreoffice-4-4' - sw/source

Caolán McNamara caolanm at redhat.com
Mon Feb 9 02:45:49 PST 2015


 sw/source/uibase/inc/workctrl.hxx    |   13 ++++++++++---
 sw/source/uibase/ribbar/workctrl.cxx |    6 +++---
 2 files changed, 13 insertions(+), 6 deletions(-)

New commits:
commit e33e78a6fce0faf86f944cfc13726d4f132ef4e5
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Feb 4 21:04:44 2015 +0000

    Resolves: tdf#85004 Crash when clicking the Reminder icon...
    
    on the Navigation toolbar
    
    the Parent window isn't a SwScrollNaviPopup anymore
    
    (cherry picked from commit 535f34bba60e06d390a6f3802072b16a9841bc4e)
    
    Conflicts:
    	sw/source/uibase/ribbar/workctrl.cxx
    
    Change-Id: I5c539d125aac28bfee0beb842ff2df001e19c945
    Reviewed-on: https://gerrit.libreoffice.org/14326
    Tested-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
    Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>

diff --git a/sw/source/uibase/inc/workctrl.hxx b/sw/source/uibase/inc/workctrl.hxx
index 493b164..6bb9c1f 100644
--- a/sw/source/uibase/inc/workctrl.hxx
+++ b/sw/source/uibase/inc/workctrl.hxx
@@ -110,14 +110,21 @@ public:
     DECL_LINK(PopupHdl, PopupMenu*);
 };
 
+class SwScrollNaviPopup;
+
 class SwScrollNaviToolBox : public ToolBox
 {
+    SwScrollNaviPopup *m_pNaviPopup;
+
     virtual void    MouseButtonUp( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     virtual void    RequestHelp( const HelpEvent& rHEvt ) SAL_OVERRIDE;
 
-    public:
-        SwScrollNaviToolBox(vcl::Window* pParent, WinBits nWinStyle ) :
-            ToolBox(pParent, nWinStyle ) {}
+public:
+    SwScrollNaviToolBox(vcl::Window* pParent, SwScrollNaviPopup* pNaviPopup, WinBits nWinStyle)
+        : ToolBox(pParent, nWinStyle)
+        , m_pNaviPopup(pNaviPopup)
+    {
+    }
 };
 
 class SwScrollNaviPopup : public SfxPopupWindow
diff --git a/sw/source/uibase/ribbar/workctrl.cxx b/sw/source/uibase/ribbar/workctrl.cxx
index d191cfd..56eb31f 100644
--- a/sw/source/uibase/ribbar/workctrl.cxx
+++ b/sw/source/uibase/ribbar/workctrl.cxx
@@ -394,7 +394,7 @@ SwScrollNaviPopup::SwScrollNaviPopup(sal_uInt16 nId, const Reference< XFrame >&
         "modules/swriter/ui/floatingnavigation.ui", rFrame),
     aIList(SW_RES(IL_VALUES))
 {
-    m_pToolBox = new SwScrollNaviToolBox(get<vcl::Window>("box"), 0);
+    m_pToolBox = new SwScrollNaviToolBox(get<vcl::Window>("box"), this, 0);
     get(m_pInfoField, "label");
 
     sal_uInt16 i;
@@ -502,8 +502,8 @@ IMPL_LINK(SwScrollNaviPopup, SelectHdl, ToolBox*, pSet)
 void SwScrollNaviToolBox::MouseButtonUp( const MouseEvent& rMEvt )
 {
     ToolBox::MouseButtonUp(rMEvt);
-    if ( ((SwScrollNaviPopup*)GetParent())->IsInPopupMode() )
-        ((SwScrollNaviPopup*)GetParent())->EndPopupMode( FLOATWIN_POPUPMODEEND_CLOSEALL );
+    if (m_pNaviPopup->IsInPopupMode())
+        m_pNaviPopup->EndPopupMode(FLOATWIN_POPUPMODEEND_CLOSEALL);
 }
 
 void  SwScrollNaviToolBox::RequestHelp( const HelpEvent& rHEvt )


More information about the Libreoffice-commits mailing list