aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/render
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-03-13 16:05:21 +0800
committercrupest <crupest@outlook.com>2021-03-13 16:05:21 +0800
commit49dfb2bc9f965b398aa12e711148696d28443eaf (patch)
tree7fffb9ad42988709809929802c8d08425eec8a42 /include/cru/ui/render
parente19d42f2f89ad6670e6b9a226bcf7abc12003bb5 (diff)
downloadcru-49dfb2bc9f965b398aa12e711148696d28443eaf.tar.gz
cru-49dfb2bc9f965b398aa12e711148696d28443eaf.tar.bz2
cru-49dfb2bc9f965b398aa12e711148696d28443eaf.zip
feat: Scrollbar auto collapse.
Diffstat (limited to 'include/cru/ui/render')
-rw-r--r--include/cru/ui/render/ScrollBar.hpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/cru/ui/render/ScrollBar.hpp b/include/cru/ui/render/ScrollBar.hpp
index fc2910c4..7cfd2576 100644
--- a/include/cru/ui/render/ScrollBar.hpp
+++ b/include/cru/ui/render/ScrollBar.hpp
@@ -94,6 +94,11 @@ class ScrollBar : public Object {
void SetCursor();
void RestoreCursor();
+ void BeginAutoCollapseTimer();
+ void StopAutoCollapseTimer();
+
+ void OnMouseLeave();
+
protected:
gsl::not_null<ScrollRenderObject*> render_object_;
@@ -118,6 +123,8 @@ class ScrollBar : public Object {
Event<Scroll> scroll_attempt_event_;
std::optional<std::shared_ptr<platform::gui::ICursor>> old_cursor_;
+
+ platform::gui::TimerAutoCanceler auto_collapse_timer_canceler_;
};
class HorizontalScrollBar : public ScrollBar {