From b1a5dd9f302b2ae278aef1a90536796e8c98757a Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Thu, 4 Feb 2021 14:35:04 +0000 Subject: lok: sc - suppress LOK editengine events for the calc input bar. The calc input uses an EditEngine - but it emits events as if it is part of the document - as well as emitting events as if it is a dialog window. This causes horrible jumping artifacts to the top of the document with word auto-completion and typing in cells a few page down. Also remove obsolete tweak to turn off autocorrect for LOK, since it was contradicted by: 1f0943e5e9432f96daff9f3b006388d5bc7415b2 Change-Id: I7352cd3b5ca6d18645cfd9e18959b0e44ec969d7 Signed-off-by: Michael Meeks Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110422 Tested-by: Jenkins --- sc/source/ui/app/inputwin.cxx | 5 +++++ sc/source/ui/unoobj/docuno.cxx | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index 0429da49731c..8974bbc2cf2c 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -1510,6 +1510,11 @@ void ScTextWnd::InitEditEngine() static_cast(m_xEditEngine.get())->SetTextCurrentDefaults(aString); // At least the right text then m_xEditView = std::make_unique(m_xEditEngine.get(), nullptr); + + // we get cursor, selection etc. messages from the VCL/window layer + // otherwise these are injected into the document causing confusion. + m_xEditView->SuppressLOKMessages(true); + m_xEditView->setEditViewCallbacks(this); m_xEditView->SetInsertMode(bIsInsertMode); diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 1cfcb23aad8e..5ba795cf5298 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -1159,11 +1159,6 @@ void ScModelObj::initializeForTiledRendering(const css::uno::SequenceGetAppOptions() ); - aAppOptions.SetAutoComplete(false); - SC_MOD()->SetAppOptions(aAppOptions); - for (const beans::PropertyValue& rValue : rArguments) { if (rValue.Name == ".uno:SpellOnline" && rValue.Value.has()) -- cgit