chart2/source/view/main/ChartView.cxx | 5 +++++ 1 file changed, 5 insertions(+)
New commits: commit 081f1e5e393dee9a4708e603c81173aa82aa6fe7 Author: Caolán McNamara <[email protected]> AuthorDate: Thu Feb 26 21:00:28 2026 +0000 Commit: Miklos Vajna <[email protected]> CommitDate: Fri Feb 27 08:37:16 2026 +0100 opt ChartView::impl_updateView out of BroadcastObjectChange since: commit 3f87466d6db4ba694a8ba9f74dcac1b142a15f30 Date: Tue Jan 27 13:07:22 2026 +0500 tdf#170386: Delay broadcasting object changes, not drop it those get queued and broadcast after unlocking controllers. Prior to that they were silently dropped. Kit clients, at least testing infra, depend on not getting EMPTY between INPLACE and INPLACE EXIT on inserting a chart Where the EMPTY comes from the ImpComeBackHdl, ModelHasChanged, AdjustMarkHdl, SetMarkHandles(marks=0), SetMarkHandlesForLOKit, sends graphicselection: EMPTY and ImpComeBackHdl is trigged from the BroadcastObjectChange() which was deferred after this change, and dropped before. Change-Id: Ib48f0c1e040d84e9af9c50a6fc1c9ca737ab67c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200526 Reviewed-by: Miklos Vajna <[email protected]> Tested-by: Jenkins CollaboraOffice <[email protected]> diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx index 43eb0c7d46f7..a6cdfb06c99b 100644 --- a/chart2/source/view/main/ChartView.cxx +++ b/chart2/source/view/main/ChartView.cxx @@ -1487,6 +1487,10 @@ void ChartView::impl_updateView( bool bCheckLockedCtrler ) { SolarMutexGuard aSolarGuard; m_pDrawModelWrapper->lockControllers(); + // Don't send deferred ObjectChange notifications to the parent + // document's SdrPaintView, that triggers unwanted + // graphicselection: EMPTY callbacks via ImpComeBackHdl. + m_pDrawModelWrapper->getSdrModel().setIgnoreDeferredObjectChanges(true); } //create chart view @@ -1521,6 +1525,7 @@ void ChartView::impl_updateView( bool bCheckLockedCtrler ) { SolarMutexGuard aSolarGuard; + m_pDrawModelWrapper->getSdrModel().setIgnoreDeferredObjectChanges(false); m_pDrawModelWrapper->unlockControllers(); }
