summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-09-20 22:47:09 +0300
committerAndrei Karas <akaras@inbox.ru>2016-09-20 22:47:09 +0300
commit219ca3560cf16a3c303b9d88756448a9a2fb19a5 (patch)
treebf726003c48ba5ca03c86760eea97922790165c6
parenta2f54815d3310c3b5dab0f06b1b06510c8aa0620 (diff)
downloadplus-219ca3560cf16a3c303b9d88756448a9a2fb19a5.tar.gz
plus-219ca3560cf16a3c303b9d88756448a9a2fb19a5.tar.bz2
plus-219ca3560cf16a3c303b9d88756448a9a2fb19a5.tar.xz
plus-219ca3560cf16a3c303b9d88756448a9a2fb19a5.zip
Set scrollarea unselectable only if no scroll bars showed.
-rw-r--r--src/gui/widgets/scrollarea.cpp7
-rw-r--r--src/gui/widgets/scrollarea.h2
-rw-r--r--src/gui/widgets/widget.h2
3 files changed, 10 insertions, 1 deletions
diff --git a/src/gui/widgets/scrollarea.cpp b/src/gui/widgets/scrollarea.cpp
index 18b99527d..db44a8a93 100644
--- a/src/gui/widgets/scrollarea.cpp
+++ b/src/gui/widgets/scrollarea.cpp
@@ -1446,3 +1446,10 @@ void ScrollArea::checkPolicies()
break;
}
}
+
+bool ScrollArea::isSelectable() const
+{
+ if (mVBarVisible || mHBarVisible)
+ return true;
+ return Widget::isSelectable();
+}
diff --git a/src/gui/widgets/scrollarea.h b/src/gui/widgets/scrollarea.h
index 4392f4bcf..351814b79 100644
--- a/src/gui/widgets/scrollarea.h
+++ b/src/gui/widgets/scrollarea.h
@@ -432,6 +432,8 @@ class ScrollArea final : public BasicContainer,
void mouseWheelMovedDown(MouseEvent& event) override final;
+ bool isSelectable() const override final;
+
protected:
enum BUTTON_DIR
{
diff --git a/src/gui/widgets/widget.h b/src/gui/widgets/widget.h
index 4cae7369e..cbeb68874 100644
--- a/src/gui/widgets/widget.h
+++ b/src/gui/widgets/widget.h
@@ -1023,7 +1023,7 @@ class Widget notfinal : public Widget2
void setRedraw(const bool b) noexcept2
{ mRedraw = b; }
- bool isSelectable() const noexcept2 A_WARN_UNUSED
+ virtual bool isSelectable() const A_WARN_UNUSED
{ return mSelectable; }
void setSelectable(const bool selectable)