aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2020-11-09 20:10:56 +0800
committercrupest <crupest@outlook.com>2020-11-09 20:10:56 +0800
commit7d380576ec4a86938d3d2021657bb8d6eba98c1a (patch)
tree19492c4509645a0789115156030f90c730ee855a
parent68fc33443981fcd499dfe263c228787e213ae943 (diff)
downloadcru-7d380576ec4a86938d3d2021657bb8d6eba98c1a.tar.gz
cru-7d380576ec4a86938d3d2021657bb8d6eba98c1a.tar.bz2
cru-7d380576ec4a86938d3d2021657bb8d6eba98c1a.zip
...
-rw-r--r--src/ui/host/WindowHost.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/ui/host/WindowHost.cpp b/src/ui/host/WindowHost.cpp
index 4bd981c2..1550361b 100644
--- a/src/ui/host/WindowHost.cpp
+++ b/src/ui/host/WindowHost.cpp
@@ -223,10 +223,12 @@ void WindowHost::SetFocusControl(controls::Control* control) {
bool WindowHost::CaptureMouseFor(controls::Control* control) {
if (!native_window_) return false;
+ if (!native_window_->CaptureMouse()) return false;
if (control == mouse_captured_control_) return true;
if (control == nullptr) {
+ native_window_->ReleaseMouse();
const auto old_capture_control = mouse_captured_control_;
mouse_captured_control_ =
nullptr; // update this in case this is used in event handlers