diff options
author | Ashod Nakashian <ashod.nakashian@collabora.co.uk> | 2019-05-05 11:51:30 -0400 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2019-08-01 13:57:33 +0200 |
commit | 26bcfbe48b30e0a525a0f25b73ddcacdd158256b (patch) | |
tree | c1b3584587e2830d323ee8adc1eadd1204a3186a /sfx2 | |
parent | de77f1d4a06148f94312df3917999e7285775bb3 (diff) |
Notify the client when we close the sidebar
Reviewed-on: https://gerrit.libreoffice.org/71844
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit 60c048e665c7e8dc32c378f0364931b6e26a9ca2)
Change-Id: I4879d65285e01cf2fd99233d226f4201997b4dd7
Reviewed-on: https://gerrit.libreoffice.org/76784
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/sidebar/SidebarController.cxx | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx index 55e1c3a5a29e..752c59387376 100644 --- a/sfx2/source/sidebar/SidebarController.cxx +++ b/sfx2/source/sidebar/SidebarController.cxx @@ -74,13 +74,13 @@ namespace const static sal_Int32 gnWidthCloseThreshold (70); const static sal_Int32 gnWidthOpenThreshold (40); - std::string UnoNameFromDeckId(const OUString& rsDeckId) + std::string UnoNameFromDeckId(const OUString& rsDeckId, bool isDraw=false) { if (rsDeckId == "SdCustomAnimationDeck") return ".uno:CustomAnimation"; if (rsDeckId == "PropertyDeck") - return ".uno:ModifyPage"; + return isDraw ? ".uno:ModifyPage" : ".uno:Sidebar"; if (rsDeckId == "SdLayoutsDeck") return ".uno:ModifyPage"; @@ -234,7 +234,17 @@ void SidebarController::disposeDecks() SolarMutexGuard aSolarMutexGuard; if (comphelper::LibreOfficeKit::isActive()) + { + if (const SfxViewShell* pViewShell = mpViewFrame->GetViewShell()) + { + const std::string hide = UnoNameFromDeckId(msCurrentDeckId); + if (!hide.empty()) + pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, + (hide + "=false").c_str()); + } + mpParentWindow->ReleaseLOKNotifier(); + } mpCurrentDeck.clear(); maFocusManager.Clear(); |