aboutsummaryrefslogtreecommitdiffstats
path: root/pugl/detail/win.c
diff options
context:
space:
mode:
Diffstat (limited to 'pugl/detail/win.c')
-rw-r--r--pugl/detail/win.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/pugl/detail/win.c b/pugl/detail/win.c
index 42b9427..a4597b5 100644
--- a/pugl/detail/win.c
+++ b/pugl/detail/win.c
@@ -631,10 +631,16 @@ puglGrabFocus(PuglView* view)
SetFocus(view->impl->hwnd);
}
+bool
+puglHasFocus(const PuglView* view)
+{
+ return GetFocus() == view->impl->hwnd;
+}
+
void
puglRequestAttention(PuglView* view)
{
- if (!view->impl->mouseTracked || GetFocus() != view->impl->hwnd) {
+ if (!view->impl->mouseTracked || !puglHasFocus(view)) {
FlashWindow(view->impl->hwnd, TRUE);
SetTimer(view->impl->hwnd, PUGL_URGENT_TIMER_ID, 500, NULL);
view->impl->flashing = true;