Added click counter reset on window activate/deactivate for Windows Areas.
This commit is contained in:
parent
582e3b4644
commit
b359f995f5
|
@ -644,7 +644,14 @@ func areaWndProc(s *sysData) func(hwnd _HWND, uMsg uint32, wParam _WPARAM, lPara
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
return defwndproc()
|
return defwndproc()
|
||||||
|
case _WM_ACTIVATE:
|
||||||
|
// don't keep the double-click timer running if the user switched programs in between clicks
|
||||||
|
s.clickCounter.reset()
|
||||||
|
// MSDN says this message will be sent alongside WM_MOUSEACTIVATE, but we'll reset there too, just in case
|
||||||
|
return 0
|
||||||
case _WM_MOUSEACTIVATE:
|
case _WM_MOUSEACTIVATE:
|
||||||
|
// don't keep the double-click timer running if the user switched programs in between clicks
|
||||||
|
s.clickCounter.reset()
|
||||||
// transfer keyboard focus to our Area on an activating click
|
// transfer keyboard focus to our Area on an activating click
|
||||||
// (see http://www.catch22.net/tuts/custom-controls)
|
// (see http://www.catch22.net/tuts/custom-controls)
|
||||||
r1, _, err := _setFocus.Call(uintptr(s.hwnd))
|
r1, _, err := _setFocus.Call(uintptr(s.hwnd))
|
||||||
|
|
|
@ -203,6 +203,9 @@ const (
|
||||||
|
|
||||||
// Window keyboard event messages and related constants.
|
// Window keyboard event messages and related constants.
|
||||||
const (
|
const (
|
||||||
|
// filed under keyboard events by MSDN
|
||||||
|
_WM_ACTIVATE = 0x0006
|
||||||
|
|
||||||
// from winuser.h
|
// from winuser.h
|
||||||
_WM_KEYDOWN = 0x0100
|
_WM_KEYDOWN = 0x0100
|
||||||
_WM_KEYUP = 0x0101
|
_WM_KEYUP = 0x0101
|
||||||
|
|
Loading…
Reference in New Issue