sc/source/ui/view/tabvwsha.cxx |    6 ++++++
 1 file changed, 6 insertions(+)

New commits:
commit dbcfabe25d2806974fedb774f39a3517dd1a4df6
Author:     Maxim Monastirsky <momonas...@gmail.com>
AuthorDate: Fri Jun 16 11:53:37 2023 +0300
Commit:     Maxim Monastirsky <momonas...@gmail.com>
CommitDate: Sun Jun 18 20:28:26 2023 +0200

    sc drawstyles: Restore text selection after applying a style
    
    Change-Id: I0a9bb39d8a7a9e770b3593eaa0a97867cbe86913
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153171
    Tested-by: Jenkins
    Reviewed-by: Maxim Monastirsky <momonas...@gmail.com>
    (cherry picked from commit 8a0a4a4e1fa63edaa5ef923e0db56df7d08eb73c)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153221

diff --git a/sc/source/ui/view/tabvwsha.cxx b/sc/source/ui/view/tabvwsha.cxx
index f1305672a096..ed556d472286 100644
--- a/sc/source/ui/view/tabvwsha.cxx
+++ b/sc/source/ui/view/tabvwsha.cxx
@@ -933,6 +933,8 @@ void ScTabViewShell::ExecStyle( SfxRequest& rReq )
     ScMarkData&         rMark       = GetViewData().GetMarkData();
     ScModule*           pScMod      = SC_MOD();
     SdrObject*          pEditObject = GetDrawView()->GetTextEditObject();
+    OutlinerView*       pOLV        = GetDrawView()->GetTextEditOutlinerView();
+    ESelection          aSelection  = pOLV ? pOLV->GetSelection() : 
ESelection();
     OUString            aRefName;
     bool                bUndo       = rDoc.IsUndoEnabled();
 
@@ -1683,7 +1685,11 @@ void ScTabViewShell::ExecStyle( SfxRequest& rReq )
     // reactivate text editing instead:
     auto pFuText = dynamic_cast<FuText*>(GetDrawFuncPtr());
     if (pFuText && pEditObject != GetDrawView()->GetTextEditObject())
+    {
         pFuText->SetInEditMode(pEditObject);
+        if (GetDrawView()->GetTextEditOutlinerView())
+            GetDrawView()->GetTextEditOutlinerView()->SetSelection(aSelection);
+    }
 }
 
 void ScTabViewShell::GetStyleState( SfxItemSet& rSet )

Reply via email to