summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sfx2/source/sidebar/SidebarController.cxx13
1 files changed, 4 insertions, 9 deletions
diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx
index c67447f0770a..403a40b443e3 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -221,16 +221,11 @@ void SAL_CALL SidebarController::disposing()
aDeck.disposeAndClear();
}
- SidebarControllerContainer::iterator iEntry (maSidebarControllerContainer.find(mxFrame->getController()));
- if (iEntry != maSidebarControllerContainer.end())
- maSidebarControllerContainer.erase(iEntry);
+ uno::Reference<css::frame::XController> xController = mxFrame->getController();
+ if (!xController.is())
+ xController = mxCurrentController;
- css::uno::Reference<css::ui::XContextChangeEventMultiplexer> xMultiplexer (
- css::ui::ContextChangeEventMultiplexer::get(
- ::comphelper::getProcessComponentContext()));
- if (xMultiplexer.is())
- xMultiplexer->removeAllContextChangeEventListeners(
- static_cast<css::ui::XContextChangeEventListener*>(this));
+ unregisterSidebarForFrame(this, xController);
if (mxReadOnlyModeDispatch.is())
mxReadOnlyModeDispatch->removeStatusListener(this, Tools::GetURL(gsReadOnlyCommandName));