[Libreoffice-commits] core.git: include/sfx2 sfx2/source svx/source sw/source

Maxim Monastirsky momonasmon at gmail.com
Sat Sep 30 23:20:39 UTC 2017


 include/sfx2/charmapcontrol.hxx                         |    3 +-
 include/sfx2/emojicontrol.hxx                           |    3 +-
 include/sfx2/tbxctrl.hxx                                |    6 -----
 sfx2/source/control/charmapcontrol.cxx                  |    4 +--
 sfx2/source/control/emojicontrol.cxx                    |    4 +--
 sfx2/source/control/emojipopup.cxx                      |    2 -
 sfx2/source/dialog/charmappopup.cxx                     |    2 -
 sfx2/source/toolbox/tbxitem.cxx                         |   16 +------------
 svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx |    4 +--
 svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx |    2 -
 svx/source/sidebar/paragraph/ParaLineSpacingPopup.cxx   |    2 -
 svx/source/sidebar/text/TextCharacterSpacingControl.cxx |    4 +--
 svx/source/sidebar/text/TextCharacterSpacingControl.hxx |    2 -
 svx/source/sidebar/text/TextCharacterSpacingPopup.cxx   |    2 -
 svx/source/sidebar/text/TextUnderlineControl.cxx        |    4 +--
 svx/source/sidebar/text/TextUnderlineControl.hxx        |    2 -
 svx/source/sidebar/text/TextUnderlinePopup.cxx          |    2 -
 svx/source/tbxctrls/layctrl.cxx                         |   19 +++++++++-------
 svx/source/tbxctrls/lboxctrl.cxx                        |    2 -
 sw/source/uibase/sidebar/PageColumnControl.cxx          |    4 +--
 sw/source/uibase/sidebar/PageColumnControl.hxx          |    2 -
 sw/source/uibase/sidebar/PageColumnPopup.cxx            |    2 -
 sw/source/uibase/sidebar/PageMarginControl.cxx          |    4 +--
 sw/source/uibase/sidebar/PageMarginControl.hxx          |    2 -
 sw/source/uibase/sidebar/PageMarginPopup.cxx            |    2 -
 sw/source/uibase/sidebar/PageOrientationControl.cxx     |    4 +--
 sw/source/uibase/sidebar/PageOrientationControl.hxx     |    2 -
 sw/source/uibase/sidebar/PageOrientationPopup.cxx       |    2 -
 sw/source/uibase/sidebar/PageSizeControl.cxx            |    4 +--
 sw/source/uibase/sidebar/PageSizeControl.hxx            |    2 -
 sw/source/uibase/sidebar/PageSizePopup.cxx              |    2 -
 31 files changed, 53 insertions(+), 64 deletions(-)

New commits:
commit cb9970400d0bbd73e508f25a67e1ad2c7dd28eb6
Author: Maxim Monastirsky <momonasmon at gmail.com>
Date:   Wed Sep 27 17:34:38 2017 +0300

    Wayland: Make various popups work in the overflow toolbar
    
    Were failing to show, with this warning:
    
    Gdk-WARNING **: Tried to map a popup with a non-top most parent
    
    Change-Id: Ib68b5fc9b3edb3d25a23b66397c13833a4d080ac
    Reviewed-on: https://gerrit.libreoffice.org/42936
    Reviewed-by: Maxim Monastirsky <momonasmon at gmail.com>
    Tested-by: Maxim Monastirsky <momonasmon at gmail.com>

diff --git a/include/sfx2/charmapcontrol.hxx b/include/sfx2/charmapcontrol.hxx
index 2cecea301969..92796714d326 100644
--- a/include/sfx2/charmapcontrol.hxx
+++ b/include/sfx2/charmapcontrol.hxx
@@ -32,7 +32,8 @@ class SvxCharView;
 class SFX2_DLLPUBLIC SfxCharmapCtrl : public SfxPopupWindow
 {
 public:
-    explicit SfxCharmapCtrl(sal_uInt16 nId, const css::uno::Reference< css::frame::XFrame >& rFrame);
+    explicit SfxCharmapCtrl(sal_uInt16 nId, vcl::Window* pParent,
+                            const css::uno::Reference< css::frame::XFrame >& rFrame);
 
     virtual ~SfxCharmapCtrl() override;
 
diff --git a/include/sfx2/emojicontrol.hxx b/include/sfx2/emojicontrol.hxx
index fe8a627c94bb..d759de4725b4 100644
--- a/include/sfx2/emojicontrol.hxx
+++ b/include/sfx2/emojicontrol.hxx
@@ -27,7 +27,8 @@ enum class FILTER_CATEGORY;
 class SFX2_DLLPUBLIC SfxEmojiControl : public SfxPopupWindow
 {
 public:
-    explicit SfxEmojiControl(sal_uInt16 nId, const css::uno::Reference< css::frame::XFrame >& rFrame);
+    explicit SfxEmojiControl(sal_uInt16 nId, vcl::Window* pParent,
+                             const css::uno::Reference< css::frame::XFrame >& rFrame);
 
     virtual ~SfxEmojiControl() override;
 
diff --git a/include/sfx2/tbxctrl.hxx b/include/sfx2/tbxctrl.hxx
index b75e9b10de5c..9bbd0a09b58e 100644
--- a/include/sfx2/tbxctrl.hxx
+++ b/include/sfx2/tbxctrl.hxx
@@ -92,13 +92,9 @@ protected:
     virtual void            statusChanged( const css::frame::FeatureStateEvent& rEvent );
 
 public:
-                            SfxPopupWindow( sal_uInt16 nId,
+                            SfxPopupWindow(sal_uInt16 nId, vcl::Window *pParent,
                                             const css::uno::Reference< css::frame::XFrame >& rFrame,
                                             WinBits nBits );
-                            SfxPopupWindow(sal_uInt16 nId,
-                                           const OString& rID, const OUString& rUIXMLDescription,
-                                           const css::uno::Reference<css::frame::XFrame> &rFrame =
-                                               css::uno::Reference<css::frame::XFrame>());
                             SfxPopupWindow(sal_uInt16 nId, vcl::Window *pParent,
                                            const OString& rID, const OUString& rUIXMLDescription,
                                            const css::uno::Reference<css::frame::XFrame> &rFrame =
diff --git a/sfx2/source/control/charmapcontrol.cxx b/sfx2/source/control/charmapcontrol.cxx
index 3551a18c9050..e7631351e805 100644
--- a/sfx2/source/control/charmapcontrol.cxx
+++ b/sfx2/source/control/charmapcontrol.cxx
@@ -24,8 +24,8 @@
 
 using namespace css;
 
-SfxCharmapCtrl::SfxCharmapCtrl(sal_uInt16 nId, const css::uno::Reference< css::frame::XFrame >& rFrame)
-    : SfxPopupWindow(nId, "charmapctrl", "sfx/ui/charmapcontrol.ui", rFrame)
+SfxCharmapCtrl::SfxCharmapCtrl(sal_uInt16 nId, vcl::Window* pParent, const css::uno::Reference< css::frame::XFrame >& rFrame)
+    : SfxPopupWindow(nId, pParent, "charmapctrl", "sfx/ui/charmapcontrol.ui", rFrame)
 {
     get( m_pRecentCharView[0], "viewchar1" );
     get( m_pRecentCharView[1], "viewchar2" );
diff --git a/sfx2/source/control/emojicontrol.cxx b/sfx2/source/control/emojicontrol.cxx
index 58650a604983..c8bd584977a9 100644
--- a/sfx2/source/control/emojicontrol.cxx
+++ b/sfx2/source/control/emojicontrol.cxx
@@ -36,8 +36,8 @@ const char FILTER_UNICODE9[]  = "unicode9";
 
 using namespace com::sun::star;
 
-SfxEmojiControl::SfxEmojiControl(sal_uInt16 nId, const css::uno::Reference< css::frame::XFrame >& rFrame)
-    : SfxPopupWindow(nId, "emojictrl", "sfx/ui/emojicontrol.ui", rFrame)
+SfxEmojiControl::SfxEmojiControl(sal_uInt16 nId, vcl::Window* pParent, const css::uno::Reference< css::frame::XFrame >& rFrame)
+    : SfxPopupWindow(nId, pParent, "emojictrl", "sfx/ui/emojicontrol.ui", rFrame)
 {
     get(mpTabControl, "tab_control");
     get(mpEmojiView, "emoji_view");
diff --git a/sfx2/source/control/emojipopup.cxx b/sfx2/source/control/emojipopup.cxx
index af864bacff69..1cc35d02b12d 100644
--- a/sfx2/source/control/emojipopup.cxx
+++ b/sfx2/source/control/emojipopup.cxx
@@ -35,7 +35,7 @@ EmojiPopup::~EmojiPopup()
 
 VclPtr<SfxPopupWindow> EmojiPopup::CreatePopupWindow()
 {
-    VclPtr<SfxEmojiControl> pControl = VclPtr<SfxEmojiControl>::Create(GetSlotId(), m_xFrame);
+    VclPtr<SfxEmojiControl> pControl = VclPtr<SfxEmojiControl>::Create(GetSlotId(), &GetToolBox(), m_xFrame);
 
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
 
diff --git a/sfx2/source/dialog/charmappopup.cxx b/sfx2/source/dialog/charmappopup.cxx
index 49c047dc7ee5..cbc62649cbc3 100644
--- a/sfx2/source/dialog/charmappopup.cxx
+++ b/sfx2/source/dialog/charmappopup.cxx
@@ -35,7 +35,7 @@ CharmapPopup::~CharmapPopup()
 
 VclPtr<SfxPopupWindow> CharmapPopup::CreatePopupWindow()
 {
-    VclPtr<SfxCharmapCtrl> pControl = VclPtr<SfxCharmapCtrl>::Create(GetSlotId(), m_xFrame);
+    VclPtr<SfxCharmapCtrl> pControl = VclPtr<SfxCharmapCtrl>::Create(GetSlotId(), &GetToolBox(), m_xFrame);
 
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
 
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index f7252f593320..2ad6897e6f25 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -710,22 +710,10 @@ void SAL_CALL SfxFrameStatusListener::statusChanged( const css::frame::FeatureSt
 
 SfxPopupWindow::SfxPopupWindow(
     sal_uInt16 nId,
+    vcl::Window* pParentWindow,
     const Reference< XFrame >& rFrame,
     WinBits nBits ) :
-    FloatingWindow( SfxGetpApp()->GetTopWindow(), nBits )
-    , m_bFloating( false )
-    , m_bCascading( false )
-    , m_nId( nId )
-    , m_xFrame( rFrame )
-{
-    vcl::Window* pWindow = GetTopMostParentSystemWindow( this );
-    if ( pWindow )
-        static_cast<SystemWindow *>(pWindow)->GetTaskPaneList()->AddWindow( this );
-}
-
-SfxPopupWindow::SfxPopupWindow(sal_uInt16 nId, const OString& rID, const OUString& rUIXMLDescription,
-                               const css::uno::Reference<css::frame::XFrame> &rFrame)
-    : FloatingWindow(SfxGetpApp()->GetTopWindow(), rID, rUIXMLDescription, rFrame)
+    FloatingWindow( pParentWindow, nBits )
     , m_bFloating( false )
     , m_bCascading( false )
     , m_nId( nId )
diff --git a/svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx b/svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx
index 2cda7a14cd82..b5e54801dde7 100644
--- a/svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx
+++ b/svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx
@@ -46,8 +46,8 @@
 
 using namespace svx;
 
-ParaLineSpacingControl::ParaLineSpacingControl(sal_uInt16 nId)
-    : SfxPopupWindow(nId, "ParaLineSpacingControl", "svx/ui/paralinespacingcontrol.ui")
+ParaLineSpacingControl::ParaLineSpacingControl(sal_uInt16 nId, vcl::Window* pParent)
+    : SfxPopupWindow(nId, pParent, "ParaLineSpacingControl", "svx/ui/paralinespacingcontrol.ui")
 {
     mpSpacing1Button = get<PushButton>("spacing_1");
     mpSpacing115Button = get<PushButton>("spacing_115");
diff --git a/svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx b/svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx
index e467392bf6a9..2816916002fe 100644
--- a/svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx
+++ b/svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx
@@ -30,7 +30,7 @@ namespace svx {
 class ParaLineSpacingControl : public SfxPopupWindow
 {
 public:
-    explicit ParaLineSpacingControl(sal_uInt16 nId);
+    explicit ParaLineSpacingControl(sal_uInt16 nId, vcl::Window* pParent);
     virtual ~ParaLineSpacingControl() override;
     virtual void dispose() override;
 
diff --git a/svx/source/sidebar/paragraph/ParaLineSpacingPopup.cxx b/svx/source/sidebar/paragraph/ParaLineSpacingPopup.cxx
index d8c549f0d31f..4920c79c3b1d 100644
--- a/svx/source/sidebar/paragraph/ParaLineSpacingPopup.cxx
+++ b/svx/source/sidebar/paragraph/ParaLineSpacingPopup.cxx
@@ -39,7 +39,7 @@ ParaLineSpacingPopup::~ParaLineSpacingPopup()
 
 VclPtr<SfxPopupWindow> ParaLineSpacingPopup::CreatePopupWindow()
 {
-    VclPtr<ParaLineSpacingControl> pControl = VclPtr<ParaLineSpacingControl>::Create(GetSlotId());
+    VclPtr<ParaLineSpacingControl> pControl = VclPtr<ParaLineSpacingControl>::Create(GetSlotId(), &GetToolBox());
 
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
 
diff --git a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
index f1b8ae5d45ff..e43c423fc694 100644
--- a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
+++ b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
@@ -39,8 +39,8 @@
 
 namespace svx {
 
-TextCharacterSpacingControl::TextCharacterSpacingControl(sal_uInt16 nId)
-    : SfxPopupWindow(nId, "TextCharacterSpacingControl", "svx/ui/textcharacterspacingcontrol.ui")
+TextCharacterSpacingControl::TextCharacterSpacingControl(sal_uInt16 nId, vcl::Window* pParent)
+    : SfxPopupWindow(nId, pParent, "TextCharacterSpacingControl", "svx/ui/textcharacterspacingcontrol.ui")
 ,   mnId(nId)
 ,   mnCustomKern(0)
 ,   mnLastCus(SPACING_NOCUSTOM)
diff --git a/svx/source/sidebar/text/TextCharacterSpacingControl.hxx b/svx/source/sidebar/text/TextCharacterSpacingControl.hxx
index 9035c71290ad..1008441ada24 100644
--- a/svx/source/sidebar/text/TextCharacterSpacingControl.hxx
+++ b/svx/source/sidebar/text/TextCharacterSpacingControl.hxx
@@ -34,7 +34,7 @@ namespace svx {
 class TextCharacterSpacingControl : public SfxPopupWindow
 {
 public:
-    explicit TextCharacterSpacingControl(sal_uInt16 nId);
+    explicit TextCharacterSpacingControl(sal_uInt16 nId, vcl::Window* pParent);
     virtual ~TextCharacterSpacingControl() override;
     virtual void dispose() override;
 
diff --git a/svx/source/sidebar/text/TextCharacterSpacingPopup.cxx b/svx/source/sidebar/text/TextCharacterSpacingPopup.cxx
index 7ce654fe3009..cdf0f99b8bb9 100644
--- a/svx/source/sidebar/text/TextCharacterSpacingPopup.cxx
+++ b/svx/source/sidebar/text/TextCharacterSpacingPopup.cxx
@@ -38,7 +38,7 @@ TextCharacterSpacingPopup::~TextCharacterSpacingPopup()
 
 VclPtr<SfxPopupWindow> TextCharacterSpacingPopup::CreatePopupWindow()
 {
-    VclPtr<TextCharacterSpacingControl> pControl = VclPtr<TextCharacterSpacingControl>::Create(GetSlotId());
+    VclPtr<TextCharacterSpacingControl> pControl = VclPtr<TextCharacterSpacingControl>::Create(GetSlotId(), &GetToolBox());
 
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
 
diff --git a/svx/source/sidebar/text/TextUnderlineControl.cxx b/svx/source/sidebar/text/TextUnderlineControl.cxx
index aaf5f82d3dee..1e2870f80503 100644
--- a/svx/source/sidebar/text/TextUnderlineControl.cxx
+++ b/svx/source/sidebar/text/TextUnderlineControl.cxx
@@ -29,8 +29,8 @@
 
 namespace svx {
 
-TextUnderlineControl::TextUnderlineControl(sal_uInt16 nId)
-:   SfxPopupWindow(nId, "TextUnderlineControl", "svx/ui/textunderlinecontrol.ui")
+TextUnderlineControl::TextUnderlineControl(sal_uInt16 nId, vcl::Window* pParent)
+:   SfxPopupWindow(nId, pParent, "TextUnderlineControl", "svx/ui/textunderlinecontrol.ui")
 {
     get(maNone, "none");
     get(maSingle, "single");
diff --git a/svx/source/sidebar/text/TextUnderlineControl.hxx b/svx/source/sidebar/text/TextUnderlineControl.hxx
index db9cfe8bdcf2..ec1df4bbb696 100644
--- a/svx/source/sidebar/text/TextUnderlineControl.hxx
+++ b/svx/source/sidebar/text/TextUnderlineControl.hxx
@@ -31,7 +31,7 @@ namespace svx {
 class TextUnderlineControl : public SfxPopupWindow
 {
 public:
-    explicit TextUnderlineControl(sal_uInt16 nId);
+    explicit TextUnderlineControl(sal_uInt16 nId, vcl::Window* pParent);
     virtual ~TextUnderlineControl() override;
     virtual void dispose() override;
 
diff --git a/svx/source/sidebar/text/TextUnderlinePopup.cxx b/svx/source/sidebar/text/TextUnderlinePopup.cxx
index 5b2645f7234f..b55e2d4032a3 100644
--- a/svx/source/sidebar/text/TextUnderlinePopup.cxx
+++ b/svx/source/sidebar/text/TextUnderlinePopup.cxx
@@ -43,7 +43,7 @@ void TextUnderlinePopup::initialize( const css::uno::Sequence< css::uno::Any >&
 
 VclPtr<SfxPopupWindow> TextUnderlinePopup::CreatePopupWindow()
 {
-    VclPtr<TextUnderlineControl> pControl = VclPtr<TextUnderlineControl>::Create(GetSlotId());
+    VclPtr<TextUnderlineControl> pControl = VclPtr<TextUnderlineControl>::Create(GetSlotId(), &GetToolBox());
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
     SetPopupWindow(pControl);
 
diff --git a/svx/source/tbxctrls/layctrl.cxx b/svx/source/tbxctrls/layctrl.cxx
index ef22cab1e8e9..9a4cecdc7453 100644
--- a/svx/source/tbxctrls/layctrl.cxx
+++ b/svx/source/tbxctrls/layctrl.cxx
@@ -72,6 +72,7 @@ private:
 
 public:
                             TableWindow( sal_uInt16                 nSlotId,
+                                         vcl::Window*               pParent,
                                          const OUString&            rCmd,
                                          const OUString&            rText,
                                          const Reference< XFrame >& rFrame );
@@ -100,9 +101,9 @@ IMPL_LINK_NOARG(TableWindow, SelectHdl, Button*, void)
 }
 
 
-TableWindow::TableWindow( sal_uInt16 nSlotId, const OUString& rCmd, const OUString& rText,
-                          const Reference< XFrame >& rFrame )
-    : SfxPopupWindow( nSlotId, rFrame, WinBits( WB_STDPOPUP ) )
+TableWindow::TableWindow( sal_uInt16 nSlotId, vcl::Window* pParent, const OUString& rCmd,
+                          const OUString& rText, const Reference< XFrame >& rFrame )
+    : SfxPopupWindow( nSlotId, pParent, rFrame, WB_STDPOPUP )
     , aTableButton( VclPtr<PushButton>::Create(this) )
     , nCol( 0 )
     , nLine( 0 )
@@ -393,7 +394,8 @@ private:
 
     void UpdateSize_Impl( long nNewCol );
 public:
-                            ColumnsWindow( sal_uInt16 nId, const OUString& rCmd, const OUString &rText, const Reference< XFrame >& rFrame );
+                            ColumnsWindow( sal_uInt16 nId, vcl::Window* pParent, const OUString& rCmd,
+                                           const OUString &rText, const Reference< XFrame >& rFrame );
 
     void                    KeyInput( const KeyEvent& rKEvt ) override;
     virtual void            MouseMove( const MouseEvent& rMEvt ) override;
@@ -404,8 +406,9 @@ public:
 };
 
 
-ColumnsWindow::ColumnsWindow( sal_uInt16 nId, const OUString& rCmd, const OUString& rText, const Reference< XFrame >& rFrame ) :
-    SfxPopupWindow( nId, rFrame, WB_STDPOPUP ),
+ColumnsWindow::ColumnsWindow( sal_uInt16 nId, vcl::Window* pParent, const OUString& rCmd,
+                              const OUString& rText, const Reference< XFrame >& rFrame ) :
+    SfxPopupWindow( nId, pParent, rFrame, WB_STDPOPUP ),
     bInitialKeyInput(true),
     m_bMod1(false),
     mxFrame(rFrame),
@@ -687,7 +690,7 @@ VclPtr<SfxPopupWindow> SvxTableToolBoxControl::CreatePopupWindow()
     if ( bEnabled )
     {
         ToolBox& rTbx = GetToolBox();
-        VclPtr<TableWindow> pWin = VclPtr<TableWindow>::Create( GetSlotId(), m_aCommandURL, GetToolBox().GetItemText( GetId() ), m_xFrame );
+        VclPtr<TableWindow> pWin = VclPtr<TableWindow>::Create( GetSlotId(), &GetToolBox(), m_aCommandURL, GetToolBox().GetItemText( GetId() ), m_xFrame );
         pWin->StartPopupMode( &rTbx, FloatWinPopupFlags::GrabFocus|FloatWinPopupFlags::NoKeyClose );
         SetPopupWindow( pWin );
         return pWin;
@@ -732,7 +735,7 @@ VclPtr<SfxPopupWindow> SvxColumnsToolBoxControl::CreatePopupWindow()
     VclPtr<ColumnsWindow> pWin;
     if(bEnabled)
     {
-            pWin = VclPtr<ColumnsWindow>::Create( GetSlotId(), m_aCommandURL, GetToolBox().GetItemText( GetId() ), m_xFrame );
+            pWin = VclPtr<ColumnsWindow>::Create( GetSlotId(), &GetToolBox(), m_aCommandURL, GetToolBox().GetItemText( GetId() ), m_xFrame );
             pWin->StartPopupMode( &GetToolBox(),
                                   FloatWinPopupFlags::GrabFocus|FloatWinPopupFlags::NoKeyClose );
             SetPopupWindow( pWin );
diff --git a/svx/source/tbxctrls/lboxctrl.cxx b/svx/source/tbxctrls/lboxctrl.cxx
index f8f87bdd279b..1f5df981716e 100644
--- a/svx/source/tbxctrls/lboxctrl.cxx
+++ b/svx/source/tbxctrls/lboxctrl.cxx
@@ -71,7 +71,7 @@ public:
 };
 
 SvxPopupWindowListBox::SvxPopupWindowListBox(sal_uInt16 nSlotId, const OUString& rCommandURL, sal_uInt16 nId, ToolBox& rTbx)
-    : SfxPopupWindow(nSlotId, "FloatingUndoRedo", "svx/ui/floatingundoredo.ui")
+    : SfxPopupWindow(nSlotId, &rTbx, "FloatingUndoRedo", "svx/ui/floatingundoredo.ui")
     , rToolBox(rTbx)
     , bUserSel(false)
     , nTbxId(nId)
diff --git a/sw/source/uibase/sidebar/PageColumnControl.cxx b/sw/source/uibase/sidebar/PageColumnControl.cxx
index c039dd8624e5..af5ce7fa4467 100644
--- a/sw/source/uibase/sidebar/PageColumnControl.cxx
+++ b/sw/source/uibase/sidebar/PageColumnControl.cxx
@@ -31,8 +31,8 @@
 
 namespace sw { namespace sidebar {
 
-PageColumnControl::PageColumnControl( sal_uInt16 nId )
-    : SfxPopupWindow( nId, "PageColumnControl", "modules/swriter/ui/pagecolumncontrol.ui" )
+PageColumnControl::PageColumnControl( sal_uInt16 nId, vcl::Window* pParent )
+    : SfxPopupWindow( nId, pParent, "PageColumnControl", "modules/swriter/ui/pagecolumncontrol.ui" )
 {
     get( m_pMoreButton, "moreoptions" );
 
diff --git a/sw/source/uibase/sidebar/PageColumnControl.hxx b/sw/source/uibase/sidebar/PageColumnControl.hxx
index 544aeb9fb47b..61d89fb7d6c3 100644
--- a/sw/source/uibase/sidebar/PageColumnControl.hxx
+++ b/sw/source/uibase/sidebar/PageColumnControl.hxx
@@ -30,7 +30,7 @@ namespace sw { namespace sidebar {
 class PageColumnControl : public SfxPopupWindow
 {
 public:
-    explicit PageColumnControl(sal_uInt16 nId);
+    explicit PageColumnControl(sal_uInt16 nId, vcl::Window* pParent);
 
     virtual ~PageColumnControl() override;
     virtual void dispose() override;
diff --git a/sw/source/uibase/sidebar/PageColumnPopup.cxx b/sw/source/uibase/sidebar/PageColumnPopup.cxx
index f9e970c2b698..c05546451c90 100644
--- a/sw/source/uibase/sidebar/PageColumnPopup.cxx
+++ b/sw/source/uibase/sidebar/PageColumnPopup.cxx
@@ -35,7 +35,7 @@ PageColumnPopup::~PageColumnPopup()
 
 VclPtr<SfxPopupWindow> PageColumnPopup::CreatePopupWindow()
 {
-    VclPtr<sw::sidebar::PageColumnControl> pControl = VclPtr<sw::sidebar::PageColumnControl>::Create(GetSlotId());
+    VclPtr<sw::sidebar::PageColumnControl> pControl = VclPtr<sw::sidebar::PageColumnControl>::Create(GetSlotId(), &GetToolBox());
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
     SetPopupWindow(pControl);
 
diff --git a/sw/source/uibase/sidebar/PageMarginControl.cxx b/sw/source/uibase/sidebar/PageMarginControl.cxx
index b5c2930463fc..f20c51123869 100644
--- a/sw/source/uibase/sidebar/PageMarginControl.cxx
+++ b/sw/source/uibase/sidebar/PageMarginControl.cxx
@@ -94,8 +94,8 @@ namespace
 
 namespace sw { namespace sidebar {
 
-PageMarginControl::PageMarginControl( sal_uInt16 nId )
-    : SfxPopupWindow( nId, "PageMarginControl", "modules/swriter/ui/pagemargincontrol.ui" )
+PageMarginControl::PageMarginControl( sal_uInt16 nId, vcl::Window* pParent )
+    : SfxPopupWindow( nId, pParent, "PageMarginControl", "modules/swriter/ui/pagemargincontrol.ui" )
     , m_nPageLeftMargin(0)
     , m_nPageRightMargin(0)
     , m_nPageTopMargin(0)
diff --git a/sw/source/uibase/sidebar/PageMarginControl.hxx b/sw/source/uibase/sidebar/PageMarginControl.hxx
index 6482097fc45b..a2b9e0a7deb2 100644
--- a/sw/source/uibase/sidebar/PageMarginControl.hxx
+++ b/sw/source/uibase/sidebar/PageMarginControl.hxx
@@ -44,7 +44,7 @@ namespace sw { namespace sidebar {
 class PageMarginControl : public SfxPopupWindow
 {
 public:
-    explicit PageMarginControl( sal_uInt16 nId );
+    explicit PageMarginControl( sal_uInt16 nId, vcl::Window* pParent );
     virtual ~PageMarginControl() override;
     virtual void dispose() override;
 
diff --git a/sw/source/uibase/sidebar/PageMarginPopup.cxx b/sw/source/uibase/sidebar/PageMarginPopup.cxx
index e8e890db29ea..91536cce9470 100644
--- a/sw/source/uibase/sidebar/PageMarginPopup.cxx
+++ b/sw/source/uibase/sidebar/PageMarginPopup.cxx
@@ -35,7 +35,7 @@ PageMarginPopup::~PageMarginPopup()
 
 VclPtr<SfxPopupWindow> PageMarginPopup::CreatePopupWindow()
 {
-    VclPtr<sw::sidebar::PageMarginControl> pControl = VclPtr<sw::sidebar::PageMarginControl>::Create(GetSlotId());
+    VclPtr<sw::sidebar::PageMarginControl> pControl = VclPtr<sw::sidebar::PageMarginControl>::Create(GetSlotId(), &GetToolBox());
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
     SetPopupWindow(pControl);
 
diff --git a/sw/source/uibase/sidebar/PageOrientationControl.cxx b/sw/source/uibase/sidebar/PageOrientationControl.cxx
index b1f9047d681c..1812a572ceef 100644
--- a/sw/source/uibase/sidebar/PageOrientationControl.cxx
+++ b/sw/source/uibase/sidebar/PageOrientationControl.cxx
@@ -52,8 +52,8 @@ namespace {
 
 namespace sw { namespace sidebar {
 
-PageOrientationControl::PageOrientationControl( sal_uInt16 nId )
-    : SfxPopupWindow( nId, "PageOrientationControl", "modules/swriter/ui/pageorientationcontrol.ui" )
+PageOrientationControl::PageOrientationControl( sal_uInt16 nId, vcl::Window* pParent )
+    : SfxPopupWindow( nId, pParent, "PageOrientationControl", "modules/swriter/ui/pageorientationcontrol.ui" )
     , mpPageItem( new SvxPageItem(SID_ATTR_PAGE) )
     , mpPageSizeItem( new SvxSizeItem(SID_ATTR_PAGE_SIZE) )
     , mpPageLRMarginItem( new SvxLongLRSpaceItem( 0, 0, SID_ATTR_PAGE_LRSPACE ) )
diff --git a/sw/source/uibase/sidebar/PageOrientationControl.hxx b/sw/source/uibase/sidebar/PageOrientationControl.hxx
index ea29ec7370d8..d206a6fd8544 100644
--- a/sw/source/uibase/sidebar/PageOrientationControl.hxx
+++ b/sw/source/uibase/sidebar/PageOrientationControl.hxx
@@ -32,7 +32,7 @@ namespace sw { namespace sidebar {
 class PageOrientationControl : public SfxPopupWindow
 {
 public:
-    explicit PageOrientationControl(sal_uInt16 nId);
+    explicit PageOrientationControl(sal_uInt16 nId, vcl::Window* pParent);
     virtual ~PageOrientationControl() override;
     virtual void dispose() override;
 
diff --git a/sw/source/uibase/sidebar/PageOrientationPopup.cxx b/sw/source/uibase/sidebar/PageOrientationPopup.cxx
index ab9f5fbd523d..9b4f3fcb0f22 100644
--- a/sw/source/uibase/sidebar/PageOrientationPopup.cxx
+++ b/sw/source/uibase/sidebar/PageOrientationPopup.cxx
@@ -35,7 +35,7 @@ PageOrientationPopup::~PageOrientationPopup()
 
 VclPtr<SfxPopupWindow> PageOrientationPopup::CreatePopupWindow()
 {
-    VclPtr<sw::sidebar::PageOrientationControl> pControl = VclPtr<sw::sidebar::PageOrientationControl>::Create(GetSlotId());
+    VclPtr<sw::sidebar::PageOrientationControl> pControl = VclPtr<sw::sidebar::PageOrientationControl>::Create(GetSlotId(), &GetToolBox());
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
     SetPopupWindow(pControl);
 
diff --git a/sw/source/uibase/sidebar/PageSizeControl.cxx b/sw/source/uibase/sidebar/PageSizeControl.cxx
index 6dfb0867a9f1..ee31d4c597c9 100644
--- a/sw/source/uibase/sidebar/PageSizeControl.cxx
+++ b/sw/source/uibase/sidebar/PageSizeControl.cxx
@@ -65,8 +65,8 @@ namespace
 
 namespace sw { namespace sidebar {
 
-PageSizeControl::PageSizeControl( sal_uInt16 nId )
-    : SfxPopupWindow( nId, "PageSizeControl", "modules/swriter/ui/pagesizecontrol.ui" )
+PageSizeControl::PageSizeControl( sal_uInt16 nId, vcl::Window* pParent )
+    : SfxPopupWindow( nId, pParent, "PageSizeControl", "modules/swriter/ui/pagesizecontrol.ui" )
     , maPaperList()
 {
     get(maMoreButton, "moreoptions");
diff --git a/sw/source/uibase/sidebar/PageSizeControl.hxx b/sw/source/uibase/sidebar/PageSizeControl.hxx
index c5247dd18795..902e86298442 100644
--- a/sw/source/uibase/sidebar/PageSizeControl.hxx
+++ b/sw/source/uibase/sidebar/PageSizeControl.hxx
@@ -41,7 +41,7 @@ namespace sw { namespace sidebar {
 class PageSizeControl : public SfxPopupWindow
 {
 public:
-    explicit PageSizeControl(sal_uInt16 nId);
+    explicit PageSizeControl(sal_uInt16 nId, vcl::Window* pParent);
     virtual ~PageSizeControl() override;
     virtual void dispose() override;
 
diff --git a/sw/source/uibase/sidebar/PageSizePopup.cxx b/sw/source/uibase/sidebar/PageSizePopup.cxx
index 178a4a7e5666..b94ae4dfda0f 100644
--- a/sw/source/uibase/sidebar/PageSizePopup.cxx
+++ b/sw/source/uibase/sidebar/PageSizePopup.cxx
@@ -35,7 +35,7 @@ PageSizePopup::~PageSizePopup()
 
 VclPtr<SfxPopupWindow> PageSizePopup::CreatePopupWindow()
 {
-    VclPtr<sw::sidebar::PageSizeControl> pControl = VclPtr<sw::sidebar::PageSizeControl>::Create(GetSlotId());
+    VclPtr<sw::sidebar::PageSizeControl> pControl = VclPtr<sw::sidebar::PageSizeControl>::Create(GetSlotId(), &GetToolBox());
     pControl->StartPopupMode(&GetToolBox(), FloatWinPopupFlags::GrabFocus);
     SetPopupWindow(pControl);
 


More information about the Libreoffice-commits mailing list