diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-16 08:23:55 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-16 08:23:55 +0400 |
commit | 665ea6b1161921333dddc5cc6d821fa2cac1253c (patch) | |
tree | 669ddb74df120f2493f6ec2f6062dbd59b352359 /source/blender/windowmanager | |
parent | 4d65a3297dbb14bae69428b45ccd8081d39374cd (diff) |
don't check for mouse-movement if the double click event isn't on a mouse-button.
Diffstat (limited to 'source/blender/windowmanager')
-rw-r--r-- | source/blender/windowmanager/intern/wm_event_system.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index 97abfb37fe9..d81aa74e138 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -2749,11 +2749,20 @@ static wmWindow *wm_event_cursor_other_windows(wmWindowManager *wm, wmWindow *wi static bool wm_event_is_double_click(wmEvent *event, wmEvent *event_state) { - return (((event->type == event_state->prevtype && event_state->prevval == KM_RELEASE && event->val == KM_PRESS)) && - ((ABS(event->x - event_state->prevclickx)) <= 2 && - (ABS(event->y - event_state->prevclicky)) <= 2 && - ((PIL_check_seconds_timer() - event_state->prevclicktime) * 1000 < U.dbl_click_time)) - ); + if ((event->type == event_state->prevtype) && + (event_state->prevval == KM_RELEASE) && + (event->val == KM_PRESS)) + { + if ((ISMOUSE(event->type) == false) || ((ABS(event->x - event_state->prevclickx)) <= 2 && + (ABS(event->y - event_state->prevclicky)) <= 2)) + { + if ((PIL_check_seconds_timer() - event_state->prevclicktime) * 1000 < U.dbl_click_time) { + return true; + } + } + } + + return false; } /* windows store own event queues, no bContext here */ |