summaryrefslogtreecommitdiff
path: root/sc/source/ui/view/tabview5.cxx
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2021-09-24 11:25:27 +0200
committerLuboš Luňák <l.lunak@collabora.com>2021-10-15 13:39:43 +0200
commit3b729db05553c1a6d461fb41c89a05702f407448 (patch)
tree42a0195fe2dd40a97126b5e0fd4c4d55b737ed10 /sc/source/ui/view/tabview5.cxx
parentaf908d9f18fbb83a5c393f856026cebefd821f18 (diff)
do not use text-based LOK callback internally
CallbackFlushHandler post-processes LOK messages, but for things like dropping useless invalidations it needs to know the rectangle or the view id, and since the only data it gets are string messages, it needs to convert those back to binary form. Which is slow with large numbers of messages. Add internal LOK callback variant that allows also passing specific data in the original binary form. And then use directly the binary data in CallbackFlushHandler. Change-Id: I8dd30d2ff9c09feadebc31a44d8e6a8ccc306504 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123589 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Diffstat (limited to 'sc/source/ui/view/tabview5.cxx')
-rw-r--r--sc/source/ui/view/tabview5.cxx3
1 files changed, 1 insertions, 2 deletions
diff --git a/sc/source/ui/view/tabview5.cxx b/sc/source/ui/view/tabview5.cxx
index fc5bd4ccf6f0..5e6d7be6d392 100644
--- a/sc/source/ui/view/tabview5.cxx
+++ b/sc/source/ui/view/tabview5.cxx
@@ -347,8 +347,7 @@ void ScTabView::TabChanged( bool bSameTabButMoved )
// Invalidate first
tools::Rectangle aRectangle(0, 0, 1000000000, 1000000000);
- OString sPayload = aRectangle.toString() + ", " + OString::number(aViewData.GetTabNo());
- pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_INVALIDATE_TILES, sPayload.getStr());
+ pViewShell->libreOfficeKitViewInvalidateTilesCallback(&aRectangle, aViewData.GetTabNo());
ScModelObj* pModel = comphelper::getFromUnoTunnel<ScModelObj>(pViewShell->GetCurrentDocument());
SfxLokHelper::notifyDocumentSizeChanged(pViewShell, sRect, pModel, false);