svx/source/svdraw/svdedxv.cxx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-)
New commits: commit 10dc2e8a4661057672e64cecce5d0caa4de4110e Author: Pranam Lashkari <[email protected]> AuthorDate: Tue Feb 17 19:41:08 2026 +0530 Commit: Caolán McNamara <[email protected]> CommitDate: Tue Feb 17 16:33:48 2026 +0100 svx: fixed incorrect outlinerView used entering textbox editing problem: in multiple view when one view is in dark mode and another view is in light mode, and one user starts editing textbox, automatic font color changes according to editing view for all other views sometimes making text not reabable this patch was privously reverted due regression. Text was disappearing in different situation in different themes. original patch: 544ebb0 reverted patch: 534d2d9a Change-Id: I77ab216db579d358d0a152b30dc1017b489230f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199547 Tested-by: Jenkins CollaboraOffice <[email protected]> Tested-by: Caolán McNamara <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx index de6c2db55a55..2941d5e8c703 100644 --- a/svx/source/svdraw/svdedxv.cxx +++ b/svx/source/svdraw/svdedxv.cxx @@ -933,19 +933,19 @@ void SdrObjEditView::TextEditDrawing(SdrPaintWindow& rPaintWindow) if (!IsTextEdit()) return; - const SdrOutliner* pActiveOutliner = GetTextEditOutliner(); - if (!pActiveOutliner) - return; - - const sal_uInt32 nViewCount(pActiveOutliner->GetViewCount()); - if (!nViewCount) + SfxViewShell* pViewShell = SfxViewShell::Current(); + SdrView* pSdrView = pViewShell ? pViewShell->GetDrawView() : nullptr; + OutlinerView* pOLV = pSdrView ? pSdrView->GetTextEditOutlinerView() : nullptr; + if (!pOLV) return; const vcl::Region& rRedrawRegion = rPaintWindow.GetRedrawRegion(); const tools::Rectangle aCheckRect(rRedrawRegion.GetBoundRect()); - OutlinerView* pOLV = pActiveOutliner->GetView(0); - SdrPage* pPage = GetSdrPageView()->GetPage(); + SdrPage* pPage = pSdrView->GetSdrPageView()->GetPage(); + SAL_INFO("svx.svdraw", "SfxViewShell id: " << pViewShell->GetViewShellId().get()); + SAL_INFO("svx.svdraw", + "Page background color: " << pPage->GetPageBackgroundColor(GetSdrPageView(), true)); pOLV->SetBackgroundColor(pPage->GetPageBackgroundColor(GetSdrPageView(), true)); ImpPaintOutlinerView(*pOLV, aCheckRect, rPaintWindow.GetTargetOutputDevice()); }
