summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2019-07-16 17:41:48 +0200
committerKatarina Behrens <Katarina.Behrens@cib.de>2019-07-18 15:46:50 +0200
commitdf43979db9179780e0c95bc2dc2478ee95858342 (patch)
tree38dd1549afa2e7e498945c1d047b93d186777446
parent6bd9fc46121c3488c836b011f5c37c996c507aac (diff)
tdf#126424 Don't dispose decks before saving their state
Only dispose them in SidebarController::disposing after the state has been saved. Change-Id: I9e42383e20e2bc0100557b8cb8fbd26b3505f236 Reviewed-on: https://gerrit.libreoffice.org/75719 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> (cherry picked from commit b58aa94f1f365c746135470bceb97cc182c289bc) Reviewed-on: https://gerrit.libreoffice.org/75832 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
-rw-r--r--sfx2/source/sidebar/SidebarController.cxx21
1 files changed, 1 insertions, 20 deletions
diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx
index 066ebe52751f..24660ef3dc2f 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -191,7 +191,6 @@ void SidebarController::registerSidebarForFrame(SidebarController* pController,
void SidebarController::unregisterSidebarForFrame(SidebarController* pController, const css::uno::Reference<css::frame::XController>& xController)
{
- pController->disposeDecks();
css::uno::Reference<css::ui::XContextChangeEventMultiplexer> xMultiplexer (
css::ui::ContextChangeEventMultiplexer::get(
::comphelper::getProcessComponentContext()));
@@ -227,22 +226,7 @@ void SAL_CALL SidebarController::disposing()
}
// clear decks
- ResourceManager::DeckContextDescriptorContainer aDecks;
-
- mpResourceManager->GetMatchingDecks (
- aDecks,
- GetCurrentContext(),
- IsDocumentReadOnly(),
- mxFrame->getController());
-
- for (const auto& rDeck : aDecks)
- {
- std::shared_ptr<DeckDescriptor> deckDesc = mpResourceManager->GetDeckDescriptor(rDeck.msId);
-
- VclPtr<Deck> aDeck = deckDesc->mpDeck;
- if (aDeck)
- aDeck.disposeAndClear();
- }
+ disposeDecks();
uno::Reference<css::frame::XController> xController = mxFrame->getController();
if (!xController.is())
@@ -697,9 +681,6 @@ void SidebarController::SwitchToDeck (
const DeckDescriptor& rDeckDescriptor,
const Context& rContext)
{
-
- maFocusManager.Clear();
-
const bool bForceNewDeck ((mnRequestedForceFlags&SwitchFlag_ForceNewDeck)!=0);
const bool bForceNewPanels ((mnRequestedForceFlags&SwitchFlag_ForceNewPanels)!=0);
mnRequestedForceFlags = SwitchFlag_NoForce;