diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-06-16 15:55:38 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-06-16 16:12:28 +0200 |
commit | 56f5a402287e735f5a9c1f84931dcbc9e7b579e7 (patch) | |
tree | 88938ca4ccd7537753c8b7e73a8f43a464f41215 /sd | |
parent | 6f7afbb4dccef0de5521d0a2d1cfef71690222f3 (diff) |
tdf#91887 handle LOK_MOUSEEVENT_MOUSEMOVE in SdXImpressDocument
Change-Id: If6948e523fd681dbe289909df68364806628ead6
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/inc/ViewShell.hxx | 2 | ||||
-rw-r--r-- | sd/source/ui/unoidl/unomodel.cxx | 3 | ||||
-rw-r--r-- | sd/source/ui/view/viewshel.cxx | 13 |
3 files changed, 18 insertions, 0 deletions
diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx index 49417b642797..97ed710a68f7 100644 --- a/sd/source/ui/inc/ViewShell.hxx +++ b/sd/source/ui/inc/ViewShell.hxx @@ -447,6 +447,8 @@ public: void LogicMouseButtonDown(const MouseEvent& rMouseEvent); /// Same as MouseButtonUp(), but coordinates are in logic unit. void LogicMouseButtonUp(const MouseEvent& rMouseEvent); + /// Same as MouseMove(), but coordinates are in logic unit. + void LogicMouseMove(const MouseEvent& rMouseEvent); /// Allows adjusting the point or mark of the selection to a document coordinate. void SetCursorMm100Position(const Point& rPosition, bool bPoint, bool bClearMark); /// Allows starting or ending a graphic move or resize action. diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx index d64c2b6b1b37..1029f1908525 100644 --- a/sd/source/ui/unoidl/unomodel.cxx +++ b/sd/source/ui/unoidl/unomodel.cxx @@ -2411,6 +2411,9 @@ void SdXImpressDocument::postMouseEvent(int nType, int nX, int nY, int nCount) case LOK_MOUSEEVENT_MOUSEBUTTONUP: pViewShell->LogicMouseButtonUp(aEvent); break; + case LOK_MOUSEEVENT_MOUSEMOVE: + pViewShell->LogicMouseMove(aEvent); + break; default: assert(false); break; diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx index 8e871374f3a5..d35cd0213478 100644 --- a/sd/source/ui/view/viewshel.cxx +++ b/sd/source/ui/view/viewshel.cxx @@ -523,6 +523,19 @@ void ViewShell::LogicMouseButtonUp(const MouseEvent& rMouseEvent) mpActiveWindow->SetPointerPosPixel(aPoint); } +void ViewShell::LogicMouseMove(const MouseEvent& rMouseEvent) +{ + // When we're not doing tiled rendering, then positions must be passed as pixels. + assert(GetDoc()->isTiledRendering()); + + Point aPoint = mpActiveWindow->GetPointerPosPixel(); + mpActiveWindow->SetLastMousePos(rMouseEvent.GetPosPixel()); + + MouseMove(rMouseEvent, 0); + + mpActiveWindow->SetPointerPosPixel(aPoint); +} + void ViewShell::SetCursorMm100Position(const Point& rPosition, bool bPoint, bool bClearMark) { if (SdrView* pSdrView = GetView()) |