diff options
author | Dennis Francis <dennis.francis@collabora.com> | 2020-06-03 17:27:28 +0530 |
---|---|---|
committer | Dennis Francis <dennis.francis@collabora.com> | 2020-07-06 17:44:21 +0200 |
commit | 18d8297fe2ae9a312473a0fc4e450fc6dcfa6450 (patch) | |
tree | 3b1ebc39cc8cc236c529abc746bfcf2fa572b9c3 /editeng | |
parent | 849d7d8c09120d842ea1a75dd266ee375cb25c78 (diff) |
lokit: Avoid sending wrong edit-cursor/selection messages when...
the EditView's output-area needs to be tweaked temporarily to render it
to a tile which is meant for another view.
Change-Id: I2b8fc1986c247ce65c18ea64e3b43d25625c7e9c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98065
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
Diffstat (limited to 'editeng')
-rw-r--r-- | editeng/source/editeng/editview.cxx | 10 | ||||
-rw-r--r-- | editeng/source/editeng/impedit.cxx | 3 | ||||
-rw-r--r-- | editeng/source/editeng/impedit.hxx | 6 |
3 files changed, 17 insertions, 2 deletions
diff --git a/editeng/source/editeng/editview.cxx b/editeng/source/editeng/editview.cxx index f96a9f6f5519..23cd5010c1ab 100644 --- a/editeng/source/editeng/editview.cxx +++ b/editeng/source/editeng/editview.cxx @@ -1606,4 +1606,14 @@ bool EditView::HasLOKSpecialPositioning() const return pImpEditView->HasLOKSpecialPositioning(); } +void EditView::SupressLOKMessages(bool bSet) +{ + pImpEditView->SupressLOKMessages(bSet); +} + +bool EditView::IsSupressLOKMessages() const +{ + return pImpEditView->IsSupressLOKMessages(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx index 27036c689721..ed2c8d43bf9c 100644 --- a/editeng/source/editeng/impedit.cxx +++ b/editeng/source/editeng/impedit.cxx @@ -191,6 +191,7 @@ ImpEditView::ImpEditView( EditView* pView, EditEngine* pEng, vcl::Window* pWindo eAnchorMode = EEAnchorMode::TopLeft; mpEditViewCallbacks = nullptr; mbBroadcastLOKViewCursor = comphelper::LibreOfficeKit::isActive(); + mbSupressLOKMessages = false; nInvMore = 1; nTravelXPos = TRAVEL_X_DONTKNOW; nControl = EVControlBits::AUTOSCROLL | EVControlBits::ENABLEPASTE; @@ -1263,7 +1264,7 @@ void ImpEditView::ShowCursor( bool bGotoCursor, bool bForceVisCursor ) GetCursor()->SetSize( aCursorSz ); - if (comphelper::LibreOfficeKit::isActive() && mpViewShell) + if (comphelper::LibreOfficeKit::isActive() && mpViewShell && !mbSupressLOKMessages) { Point aPos = GetCursor()->GetPos(); boost::property_tree::ptree aMessageParams; diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx index 5568beecd3f5..3e76d820db60 100644 --- a/editeng/source/editeng/impedit.hxx +++ b/editeng/source/editeng/impedit.hxx @@ -309,7 +309,8 @@ private: // repaints of the EditView(s) const EditViewCallbacks* mpEditViewCallbacks; std::unique_ptr<LOKSpecialPositioning> mpLOKSpecialPositioning; - bool mbBroadcastLOKViewCursor; + bool mbBroadcastLOKViewCursor:1; + bool mbSupressLOKMessages:1; const EditViewCallbacks* getEditViewCallbacks() const { @@ -469,6 +470,9 @@ public: void SetLOKSpecialVisArea(const tools::Rectangle& rVisArea); tools::Rectangle GetLOKSpecialVisArea() const; bool HasLOKSpecialPositioning() const; + + void SupressLOKMessages(bool bSet) { mbSupressLOKMessages = bSet; } + bool IsSupressLOKMessages() const { return mbSupressLOKMessages; } }; |