From 7e049ad52cce66cf4fe3bf96b9a1ac4c3688d887 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Wed, 28 Sep 2016 16:29:50 +0100 Subject: Resolves: tdf#102343 unable to undo stylesheet changes in master... slides done via proxy textbox objects regression since... commit 12a4200e8ff7f045efcc7e9d15a24b15b248c437 Author: Armin Le Grand Date: Thu Aug 9 08:42:27 2012 +0000 Related: #i120498# Enhanced Undo/Redo and user experience... when editing texts in graphic objects and/or tables The issue is that the formatting changes in these master textboxes create changes in the stylesheet, rather than just changes in the textbox itself and the changes above don't take that into account and throw away these unusual undo objects. Change-Id: I209758cefa96b2f886161de1d44d6a68d007faa7 (cherry picked from commit 057d8abebb19fedd769a43120621488ba305cf93) Reviewed-on: https://gerrit.libreoffice.org/29369 Tested-by: Jenkins Tested-by: Yousuf Philips Reviewed-by: Miklos Vajna --- sd/source/ui/view/drviews1.cxx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx index 710f073b59bb..0302f7a91667 100644 --- a/sd/source/ui/view/drviews1.cxx +++ b/sd/source/ui/view/drviews1.cxx @@ -412,6 +412,9 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) SetAppBackgroundColor( aFillColor ); SwitchPage(nActualPageNum); + + //tdf#102343 re-enable common undo on switch back from master mode + mpDrawView->GetModel()->SetDisableTextEditUsesCommonUndoManager(false); } else { @@ -452,6 +455,12 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) maTabControl->SetCurPageId(nActualMasterPageNum + 1); SwitchPage(nActualMasterPageNum); + + //tdf#102343 changing attributes of textboxes in master typically + //changes the stylesheet they are linked to, so if the common + //undo manager is in use, those stylesheet changes are thrown + //away at present + mpDrawView->GetModel()->SetDisableTextEditUsesCommonUndoManager(true); } // If the master view toolbar is to be shown we turn it on after the -- cgit