[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - 2 commits - sc/source svx/source
Jan Holesovsky
kendy at collabora.com
Fri Mar 27 14:32:36 PDT 2015
sc/source/ui/unoobj/docuno.cxx | 19 +++++++++++++------
sc/source/ui/view/gridwin.cxx | 6 ++++--
svx/source/svdraw/svdmrkv.cxx | 3 +++
3 files changed, 20 insertions(+), 8 deletions(-)
New commits:
commit cb1274abf95c99e386cb5655e20a613ed433f405
Author: Jan Holesovsky <kendy at collabora.com>
Date: Fri Mar 27 22:25:28 2015 +0100
sc tiled editing: Hide the cell selection when we select graphic.
Change-Id: I50f68cc292e971af8bb59782e0495d6142007d67
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 36d9fb1..717c633 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -5913,9 +5913,11 @@ void ScGridWindow::UpdateCursorOverlay()
mpOOCursors->append(*pOverlay);
// notify the LibreOfficeKit too, but only if there's no
- // selection yet, to avoid setting the LOK selection twice
+ // selection yet (either cell selection, or graphic object),
+ // to avoid setting the LOK selection twice
// (once for the cell only, and then for the selection)
- if (!pViewData->GetMarkData().IsMarked() && !pViewData->GetMarkData().IsMultiMarked())
+ if (!pViewData->GetMarkData().IsMarked() && !pViewData->GetMarkData().IsMultiMarked() &&
+ !pViewData->GetViewShell()->GetScDrawView()->IsMarking())
{
updateLibreOfficeKitSelection(pViewData, pDoc->GetDrawLayer(), aPixelRects);
}
diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx
index c40e76e..40d1c68 100644
--- a/svx/source/svdraw/svdmrkv.cxx
+++ b/svx/source/svdraw/svdmrkv.cxx
@@ -737,6 +737,9 @@ void SdrMarkView::SetMarkHandles()
}
sSelection = aSelection.toString();
+
+ // hide the text selection too
+ GetModel()->libreOfficeKitCallback(LOK_CALLBACK_TEXT_SELECTION, "");
}
GetModel()->libreOfficeKitCallback(LOK_CALLBACK_GRAPHIC_SELECTION, sSelection.getStr());
}
commit 08a501558bba91b6be0e94c615de4075f238f163
Author: Jan Holesovsky <kendy at collabora.com>
Date: Fri Mar 27 22:23:33 2015 +0100
sc tiled editing: Improve the deselection.
Change-Id: Ia7e320bbb8b61497f33e20b9b80aabfed4f75234
diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx
index 21d30e1..9a83105 100644
--- a/sc/source/ui/unoobj/docuno.cxx
+++ b/sc/source/ui/unoobj/docuno.cxx
@@ -567,7 +567,8 @@ void ScModelObj::setTextSelection(int nType, int nX, int nY)
SolarMutexGuard aGuard;
ScViewData* pViewData = ScDocShell::GetViewData();
- ScInputHandler* pInputHandler = SC_MOD()->GetInputHdl(pViewData->GetViewShell());
+ ScTabViewShell* pViewShell = pViewData->GetViewShell();
+ ScInputHandler* pInputHandler = SC_MOD()->GetInputHdl(pViewShell);
if (pInputHandler && pInputHandler->IsInputMode())
{
@@ -594,8 +595,6 @@ void ScModelObj::setTextSelection(int nType, int nX, int nY)
}
else
{
- // moving the cell selection handles
-
// There seems to be no clear way of getting the grid window for this
// particular document, hence we need to hope we get the right window.
ScGridWindow* pGridWindow = pViewData->GetActiveWin();
@@ -603,6 +602,7 @@ void ScModelObj::setTextSelection(int nType, int nX, int nY)
if (!pGridWindow)
return;
+ // move the cell selection handles
pGridWindow->SetCellSelectionPixel(nType, nX * pViewData->GetPPTX(), nY * pViewData->GetPPTY());
}
}
@@ -648,10 +648,17 @@ void ScModelObj::resetSelection()
SolarMutexGuard aGuard;
ScViewData* pViewData = ScDocShell::GetViewData();
- ScTabView* pTabView = pViewData->GetView();
+ ScTabViewShell* pViewShell = pViewData->GetViewShell();
- // deselect the shapes
- pTabView->DrawDeselectAll();
+ // deselect the shapes & texts
+ ScDrawView* pDrawView = pViewShell->GetScDrawView();
+ if (pDrawView)
+ {
+ pDrawView->ScEndTextEdit();
+ pDrawView->UnmarkAll();
+ }
+ else
+ pViewShell->Unmark();
// and hide the cell and text selection
pDocShell->GetDocument().GetDrawLayer()->libreOfficeKitCallback(LOK_CALLBACK_TEXT_SELECTION, "");
More information about the Libreoffice-commits
mailing list