svx/source/svdraw/svdmrkv.cxx | 2 +- sw/source/core/crsr/crsrsh.cxx | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-)
New commits: commit e180e8048c973ef63d2b9e9769168ee6e86929a4 Author: Dennis Francis <[email protected]> AuthorDate: Thu Jun 24 12:38:45 2021 +0530 Commit: Miklos Vajna <[email protected]> CommitDate: Mon Jul 19 12:33:47 2021 +0200 lok: fix incorrect multi-view table selection updates Use the correct writer shell to fetch selected table info, else the active view's table selection data is sent to all views which is incorrect. Also avoid interference from draw empty table updates in SdrMarkView::SetMarkHandlesForLOKit() if we are in writer. [tml: In this branch, this commit also includes a fix from Miklos.] Change-Id: Iff8181a7d43712e3c9a23cee43a8b6b98ba032d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118000 Tested-by: Jenkins CollaboraOffice <[email protected]> Reviewed-by: Miklos Vajna <[email protected]> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118941 diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx index 442a872253f3..d6951a791c47 100644 --- a/svx/source/svdraw/svdmrkv.cxx +++ b/svx/source/svdraw/svdmrkv.cxx @@ -1088,7 +1088,7 @@ void SdrMarkView::SetMarkHandlesForLOKit(tools::Rectangle const & rRect, const S boost::property_tree::write_json(aStream, aTableJsonTree); pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TABLE_SELECTED, aStream.str().c_str()); } - else + else if (!getSdrModelFromSdrView().IsWriter()) { pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TABLE_SELECTED, "{}"); } diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx index 861c1f4ea714..5b4971035c81 100644 --- a/sw/source/core/crsr/crsrsh.cxx +++ b/sw/source/core/crsr/crsrsh.cxx @@ -72,6 +72,7 @@ #include <tabcol.hxx> #include <wrtsh.hxx> #include <undobj.hxx> +#include <view.hxx> #include <boost/property_tree/json_parser.hpp> #include <hints.hxx> @@ -2044,10 +2045,12 @@ void SwCursorShell::UpdateCursor( sal_uInt16 eFlags, bool bIdleEnd ) void SwCursorShell::sendLOKCursorUpdates() { - SwWrtShell* pShell = GetDoc()->GetDocShell()->GetWrtShell(); - if (!pShell) + SwView* pView = static_cast<SwView*>(GetSfxViewShell()); + if (!pView || !pView->GetWrtShellPtr()) return; + SwWrtShell* pShell = &pView->GetWrtShell(); + SwFrame* pCurrentFrame = GetCurrFrame(); SelectionType eType = pShell->GetSelectionType(); _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
