[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.2' - sc/source
Tomaž Vajngerl (via logerrit)
logerrit at kemper.freedesktop.org
Wed Dec 18 23:10:04 UTC 2019
sc/source/ui/view/gridwin.cxx | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
New commits:
commit df6871286d7b769bc47554955213a2d727c47875
Author: Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
AuthorDate: Wed Dec 18 22:32:07 2019 +0100
Commit: Michael Meeks <michael.meeks at collabora.com>
CommitDate: Thu Dec 19 00:08:54 2019 +0100
lok: send "EMPTY" if the rect is empty for cell selection or fill
It can happen that the selection or auto-fill rectangles are
empty and if that's the case then we need to send "EMPTY" string
and not the content of an empty rectangle (0, 0, -32768, -32768).
This can happen for CELL_SELECTION_AREA or CELL_AUTO_FILL_AREA in
calc.
Change-Id: I9a60e3907a2ab8b0e0fd1a2ff81137fba6c8e9a3
Reviewed-on: https://gerrit.libreoffice.org/85437
Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
Tested-by: Michael Meeks <michael.meeks at collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 638c8b645aa6..b591b974dabf 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -5902,7 +5902,10 @@ void ScGridWindow::UpdateKitSelection(const std::vector<tools::Rectangle>& rRect
}
ScTabViewShell* pViewShell = pViewData->GetViewShell();
- pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, aBoundingBox.toString().getStr());
+ OString sBoundingBoxString = "EMPTY";
+ if (!aBoundingBox.IsEmpty())
+ sBoundingBoxString = aBoundingBox.toString();
+ pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, sBoundingBoxString.getStr());
pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TEXT_SELECTION, rectanglesToString(aLogicRects).getStr());
for (SfxViewShell* it = SfxViewShell::GetFirst(); it;
@@ -5955,7 +5958,11 @@ void ScGridWindow::updateOtherKitSelections() const
OString aRectsString = rectanglesToString(aOtherLogicRects);
if (it == pViewShell)
{
- pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, aBoundingBox.toString().getStr());
+ OString sBoundingBoxString = "EMPTY";
+ if (!aBoundingBox.IsEmpty())
+ sBoundingBoxString = aBoundingBox.toString();
+
+ pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_SELECTION_AREA, sBoundingBoxString.getStr());
pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_TEXT_SELECTION, aRectsString.getStr());
}
else
@@ -5975,13 +5982,18 @@ void updateLibreOfficeKitAutoFill(const ScViewData* pViewData, tools::Rectangle
double nPPTX = pViewData->GetPPTX();
double nPPTY = pViewData->GetPPTY();
- // selection start handle
- tools::Rectangle aLogicRectangle(
- rRectangle.Left() / nPPTX, rRectangle.Top() / nPPTY,
- rRectangle.Right() / nPPTX, rRectangle.Bottom() / nPPTY);
+ OString sRectangleString = "EMPTY";
+ if (!rRectangle.IsEmpty())
+ {
+ // selection start handle
+ tools::Rectangle aLogicRectangle(
+ rRectangle.Left() / nPPTX, rRectangle.Top() / nPPTY,
+ rRectangle.Right() / nPPTX, rRectangle.Bottom() / nPPTY);
+ sRectangleString = aLogicRectangle.toString();
+ }
ScTabViewShell* pViewShell = pViewData->GetViewShell();
- pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_AUTO_FILL_AREA, aLogicRectangle.toString().getStr());
+ pViewShell->libreOfficeKitViewCallback(LOK_CALLBACK_CELL_AUTO_FILL_AREA, sRectangleString.getStr());
}
} //end anonymous namespace
More information about the Libreoffice-commits
mailing list