summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Cecchetti <mrcekets@gmail.com>2018-11-22 19:40:35 +0100
committerJan Holesovsky <kendy@collabora.com>2018-12-10 12:34:29 +0100
commit888e8190238d3d6dadec0b135af012d4a11bef4d (patch)
tree278987282184608f82c35a1d2678419d2e4dec6f
parent73cff42d33f3270e53792bf6419e94282e545309 (diff)
lok: get correct handlers for a single rotated shape
Change-Id: I74668ca8079d8d56b8c3f2c4513e2a2ec95872c6
-rw-r--r--svx/source/svdraw/svdmrkv.cxx13
1 files changed, 8 insertions, 5 deletions
diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx
index 23e5cfdf8822..91db7024faa8 100644
--- a/svx/source/svdraw/svdmrkv.cxx
+++ b/svx/source/svdraw/svdmrkv.cxx
@@ -579,10 +579,13 @@ void SdrMarkView::showMarkHandles()
bool SdrMarkView::ImpIsFrameHandles() const
{
+ // There can be multiple mark views, but we're only interested in the one that has a window associated.
+ const bool bTiledRendering = comphelper::LibreOfficeKit::isActive() && GetFirstOutputDevice() && GetFirstOutputDevice()->GetOutDevType() == OUTDEV_WINDOW;
+
const size_t nMarkCount=GetMarkedObjectCount();
bool bFrmHdl=nMarkCount>static_cast<size_t>(mnFrameHandlesLimit) || mbForceFrameHandles;
bool bStdDrag=meDragMode==SdrDragMode::Move;
- if (nMarkCount==1 && bStdDrag && bFrmHdl)
+ if (!bTiledRendering && nMarkCount==1 && bStdDrag && bFrmHdl)
{
const SdrObject* pObj=GetMarkedObjectByIndex(0);
if (pObj->GetObjInventor()==SdrInventor::Default)
@@ -656,12 +659,15 @@ void SdrMarkView::SetMarkHandles(SfxViewShell* pOtherShell)
if(areMarkHandlesHidden())
return;
+ // There can be multiple mark views, but we're only interested in the one that has a window associated.
+ const bool bTiledRendering = comphelper::LibreOfficeKit::isActive() && GetFirstOutputDevice() && GetFirstOutputDevice()->GetOutDevType() == OUTDEV_WINDOW;
+
const size_t nMarkCount=GetMarkedObjectCount();
bool bStdDrag=meDragMode==SdrDragMode::Move;
bool bSingleTextObjMark=false;
bool bLimitedRotation(false);
- if (nMarkCount==1)
+ if (!bTiledRendering && nMarkCount==1)
{
mpMarkedObj=GetMarkedObjectByIndex(0);
@@ -699,9 +705,6 @@ void SdrMarkView::SetMarkHandles(SfxViewShell* pOtherShell)
// correct position )
Point aGridOff = GetGridOffset();
- // There can be multiple mark views, but we're only interested in the one that has a window associated.
- const bool bTiledRendering = comphelper::LibreOfficeKit::isActive() && GetFirstOutputDevice() && GetFirstOutputDevice()->GetOutDevType() == OUTDEV_WINDOW;
-
// check if text edit or ole is active and handles need to be suppressed. This may be the case
// when a single object is selected
// Using a strict return statement is okay here; no handles means *no* handles.