summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-11-24 15:04:33 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-11-24 15:53:45 +0100
commitd562df03098ecb91a89e91ccf69dd6a1eeb98c89 (patch)
treecef7c427bab8b70a56fb033cc420d2ff925cee4a
parentd7acb44b148893fe0cc48a54c3eb73406c251668 (diff)
sw lok comments: implement drag of the scrollbar
With this, if a comment has a vertical scrollbar, then not only the buttons of the scrollbar can be clicked on, but also the slider of the scrollbar can be dragged. Change-Id: I2e39e18bf60c42a878bb8bfd808f1d47be27eecb
-rw-r--r--sw/source/uibase/docvw/SidebarScrollBar.cxx5
-rw-r--r--sw/source/uibase/docvw/SidebarScrollBar.hxx1
-rw-r--r--sw/source/uibase/docvw/SidebarWin.cxx10
3 files changed, 11 insertions, 5 deletions
diff --git a/sw/source/uibase/docvw/SidebarScrollBar.cxx b/sw/source/uibase/docvw/SidebarScrollBar.cxx
index 909aa763dba1..ede46100b37c 100644
--- a/sw/source/uibase/docvw/SidebarScrollBar.cxx
+++ b/sw/source/uibase/docvw/SidebarScrollBar.cxx
@@ -60,6 +60,11 @@ void SidebarScrollBar::LogicInvalidate(const Rectangle* pRectangle)
rWrtShell.libreOfficeKitCallback(LOK_CALLBACK_INVALIDATE_TILES, sRectangle.getStr());
}
+void SidebarScrollBar::MouseMove(const MouseEvent& rMouseEvent)
+{
+ TrackingEvent aEvent(rMouseEvent);
+ Tracking(aEvent);
+}
SidebarScrollBar::~SidebarScrollBar()
{
diff --git a/sw/source/uibase/docvw/SidebarScrollBar.hxx b/sw/source/uibase/docvw/SidebarScrollBar.hxx
index 9543205387df..ea5639e42e92 100644
--- a/sw/source/uibase/docvw/SidebarScrollBar.hxx
+++ b/sw/source/uibase/docvw/SidebarScrollBar.hxx
@@ -30,6 +30,7 @@ class SidebarScrollBar : public ScrollBar
protected:
/// @see OutputDevice::LogicInvalidate().
void LogicInvalidate(const Rectangle* pRectangle) override;
+ void MouseMove(const MouseEvent& rMouseEvent) override;
public:
SidebarScrollBar(SwSidebarWin& rSidebarWin, WinBits nStyle, SwView& rView);
virtual ~SidebarScrollBar();
diff --git a/sw/source/uibase/docvw/SidebarWin.cxx b/sw/source/uibase/docvw/SidebarWin.cxx
index a9a97c244b0f..fc4c79091848 100644
--- a/sw/source/uibase/docvw/SidebarWin.cxx
+++ b/sw/source/uibase/docvw/SidebarWin.cxx
@@ -463,15 +463,15 @@ void SwSidebarWin::KeyInput(const KeyEvent& rKeyEvent)
void SwSidebarWin::MouseMove(const MouseEvent& rMouseEvent)
{
- if (mpSidebarTextControl)
+ if (vcl::Window* pHit = lcl_getHitWindow(*this, rMouseEvent))
{
- mpSidebarTextControl->Push(PushFlags::MAPMODE);
+ pHit->Push(PushFlags::MAPMODE);
MouseEvent aMouseEvent(rMouseEvent);
- lcl_translateTwips(EditWin(), *mpSidebarTextControl, &aMouseEvent);
+ lcl_translateTwips(EditWin(), *pHit, &aMouseEvent);
- mpSidebarTextControl->MouseMove(aMouseEvent);
+ pHit->MouseMove(aMouseEvent);
- mpSidebarTextControl->Pop();
+ pHit->Pop();
}
}