[Bf-blender-cvs] [df4525d1d9d] master: Fix key repeat events resetting the click timer
Campbell Barton
noreply at git.blender.org
Thu Jun 7 16:52:47 CEST 2018
Commit: df4525d1d9d5250b8d0bdc6370f2736c2607b044
Author: Campbell Barton
Date: Thu Jun 7 16:51:03 2018 +0200
Branches: master
https://developer.blender.org/rBdf4525d1d9d5250b8d0bdc6370f2736c2607b044
Fix key repeat events resetting the click timer
===================================================================
M source/blender/windowmanager/intern/wm_event_system.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c
index 7c81f836bc1..83bad28ce02 100644
--- a/source/blender/windowmanager/intern/wm_event_system.c
+++ b/source/blender/windowmanager/intern/wm_event_system.c
@@ -3523,9 +3523,12 @@ void wm_event_add_ghostevent(wmWindowManager *wm, wmWindow *win, int type, int U
/* double click test - only for press */
if (event.val == KM_PRESS) {
- evt->prevclicktime = PIL_check_seconds_timer();
- evt->prevclickx = event.x;
- evt->prevclicky = event.y;
+ /* Don't reset timer & location when holding the key generates repeat events. */
+ if ((evt->prevtype != event.type) || (evt->prevval != KM_PRESS)) {
+ evt->prevclicktime = PIL_check_seconds_timer();
+ evt->prevclickx = event.x;
+ evt->prevclicky = event.y;
+ }
}
wm_event_add(win, &event);
More information about the Bf-blender-cvs
mailing list