diff options
author | Matt K <mattkse@gmail.com> | 2023-12-12 20:16:12 -0600 |
---|---|---|
committer | Caolán McNamara <caolan.mcnamara@collabora.com> | 2023-12-21 21:17:42 +0100 |
commit | e760dcf43052212952191ccdadbfb677fea3b5b8 (patch) | |
tree | 735a34913309d80b38793999f78108d5153ea9a3 /sc | |
parent | ba712e9a35179c480cdc6f9d600d79040a273d53 (diff) |
tdf#153690 Prevent invisible dialogs in Calc Full Screen
This change just adds the flag "SfxChildWindowFlags::NEVERHIDE"
to the info passed around so that the dialogs are not treated as
invisible when executing SfxWorkWindow::ShowChildren_Impl.
Change-Id: I35f0be94132cee438b3be9f4b4217208617a1e77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160660
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/inc/ChildWindowWrapper.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/reffact.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/tabvwsh.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/view/reffact.cxx | 3 | ||||
-rw-r--r-- | sc/source/ui/view/tabvwshc.cxx | 7 |
5 files changed, 10 insertions, 6 deletions
diff --git a/sc/source/ui/inc/ChildWindowWrapper.hxx b/sc/source/ui/inc/ChildWindowWrapper.hxx index 5fb038df27dd..926e456c87ce 100644 --- a/sc/source/ui/inc/ChildWindowWrapper.hxx +++ b/sc/source/ui/inc/ChildWindowWrapper.hxx @@ -22,7 +22,7 @@ class ChildControllerWrapper : public SfxChildWindow { public: ChildControllerWrapper(vcl::Window* pParentP, sal_uInt16 nId, - SfxBindings* pBindings, const SfxChildWinInfo* pInfo) + SfxBindings* pBindings, SfxChildWinInfo* pInfo) : SfxChildWindow(pParentP, nId) { ScTabViewShell* pViewShell = getTabViewShell( pBindings ); diff --git a/sc/source/ui/inc/reffact.hxx b/sc/source/ui/inc/reffact.hxx index 4fbe965c15d9..de001354bda8 100644 --- a/sc/source/ui/inc/reffact.hxx +++ b/sc/source/ui/inc/reffact.hxx @@ -28,7 +28,7 @@ class Class : public SfxChildWindow \ { \ public: \ - Class( vcl::Window*, sal_uInt16, SfxBindings*, const SfxChildWinInfo* ); \ + Class( vcl::Window*, sal_uInt16, SfxBindings*, SfxChildWinInfo* ); \ SFX_DECL_CHILDWINDOW_WITHID(Class); \ }; diff --git a/sc/source/ui/inc/tabvwsh.hxx b/sc/source/ui/inc/tabvwsh.hxx index 1b80b0ab2f25..47c5c46e1bb0 100644 --- a/sc/source/ui/inc/tabvwsh.hxx +++ b/sc/source/ui/inc/tabvwsh.hxx @@ -356,7 +356,7 @@ public: static ScTabViewShell* GetActiveViewShell(); std::shared_ptr<SfxModelessDialogController> CreateRefDialogController(SfxBindings* pB, SfxChildWindow* pCW, - const SfxChildWinInfo* pInfo, + SfxChildWinInfo* pInfo, weld::Window* pParent, sal_uInt16 nSlotId); void UpdateOleZoom(); diff --git a/sc/source/ui/view/reffact.cxx b/sc/source/ui/view/reffact.cxx index 3834e3b8c33f..999f0402d0a6 100644 --- a/sc/source/ui/view/reffact.cxx +++ b/sc/source/ui/view/reffact.cxx @@ -67,7 +67,7 @@ namespace Class::Class( vcl::Window* pParentP, \ sal_uInt16 nId, \ SfxBindings* p, \ - const SfxChildWinInfo* pInfo ) \ + SfxChildWinInfo* pInfo ) \ : SfxChildWindow(pParentP, nId) \ { \ /************************************************************************************/\ @@ -227,6 +227,7 @@ ScAcceptChgDlgWrapper::ScAcceptChgDlgWrapper(vcl::Window* pParentP, { auto xDlg = std::make_shared<ScAcceptChgDlg>(pBindings, this, pParentP->GetFrameWeld(), &pViewShell->GetViewData()); SetController(xDlg); + pInfo->nFlags = SfxChildWindowFlags::NEVERHIDE; xDlg->Initialize( pInfo ); } else diff --git a/sc/source/ui/view/tabvwshc.cxx b/sc/source/ui/view/tabvwshc.cxx index 8e2e74e8e4fb..f94850596731 100644 --- a/sc/source/ui/view/tabvwshc.cxx +++ b/sc/source/ui/view/tabvwshc.cxx @@ -115,7 +115,7 @@ void ScTabViewShell::SwitchBetweenRefDialogs(SfxModelessDialogController* pDialo std::shared_ptr<SfxModelessDialogController> ScTabViewShell::CreateRefDialogController( SfxBindings* pB, SfxChildWindow* pCW, - const SfxChildWinInfo* pInfo, + SfxChildWinInfo* pInfo, weld::Window* pParent, sal_uInt16 nSlotId) { // only open dialog when called through ScModule::SetRefDialog, @@ -449,7 +449,10 @@ std::shared_ptr<SfxModelessDialogController> ScTabViewShell::CreateRefDialogCont } if (xResult) - xResult->Initialize( pInfo ); + { + pInfo->nFlags = SfxChildWindowFlags::NEVERHIDE; + xResult->Initialize(pInfo); + } return xResult; } |