[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master faab1b2002: Fix extraneous overscroll activation on Haiku
From: |
Po Lu |
Subject: |
master faab1b2002: Fix extraneous overscroll activation on Haiku |
Date: |
Sun, 13 Mar 2022 22:47:42 -0400 (EDT) |
branch: master
commit faab1b20028d11b9f35beacba4b2b278ac0cdab3
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Fix extraneous overscroll activation on Haiku
* src/haiku_support.cc (class EmacsScrollBar): New field
`maybe_overscroll'.
(MouseDown): Set that field.
(MouseUp): Clear that field.
(MouseMoved): Also test `maybe_overscroll' to ensure that a grab
started inside the scroll bar.
---
src/haiku_support.cc | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/haiku_support.cc b/src/haiku_support.cc
index 1c1be178d2..cb8ffaf2d7 100644
--- a/src/haiku_support.cc
+++ b/src/haiku_support.cc
@@ -1571,6 +1571,7 @@ public:
bool handle_button = false;
bool in_overscroll = false;
bool can_overscroll = false;
+ bool maybe_overscroll = false;
BPoint last_overscroll;
int last_reported_overscroll_value;
int max_value, real_max_value;
@@ -1784,6 +1785,7 @@ public:
if (buttons == B_PRIMARY_MOUSE_BUTTON)
{
+ maybe_overscroll = true;
r = ButtonRegionFor (HAIKU_SCROLL_BAR_UP_BUTTON);
if (r.Contains (pt))
@@ -1833,6 +1835,7 @@ public:
BView *parent;
in_overscroll = false;
+ maybe_overscroll = false;
if (handle_button)
{
@@ -1922,7 +1925,9 @@ public:
return;
}
}
- else if (can_overscroll && (buttons == B_PRIMARY_MOUSE_BUTTON))
+ else if (can_overscroll
+ && (buttons == B_PRIMARY_MOUSE_BUTTON)
+ && maybe_overscroll)
{
value = Value ();
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master faab1b2002: Fix extraneous overscroll activation on Haiku,
Po Lu <=