From 8da55990034e2d5b0a9910583706e4ea99d0f3ce Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 22 Oct 2020 11:53:40 +1100 Subject: WM: warn when event's have repeat set for non keyboard events Also add docs to event and keymap item flag. --- source/blender/makesdna/DNA_windowmanager_types.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'source/blender/makesdna') diff --git a/source/blender/makesdna/DNA_windowmanager_types.h b/source/blender/makesdna/DNA_windowmanager_types.h index 3f7e3e61d56..4b4e17b38bd 100644 --- a/source/blender/makesdna/DNA_windowmanager_types.h +++ b/source/blender/makesdna/DNA_windowmanager_types.h @@ -383,6 +383,19 @@ enum { KMI_EXPANDED = (1 << 1), KMI_USER_MODIFIED = (1 << 2), KMI_UPDATE = (1 << 3), + /** + * When set, ignore events with #wmEvent.is_repeat enabled. + * + * \note this flag isn't cleared when editing/loading the key-map items, + * so it may be set in cases which don't make sense (modifier-keys or mouse-motion for example). + * + * Knowing if an event may repeat is something set at the operating-systems event handling level + * so rely on #wmEvent.is_repeat being false non keyboard events instead of checking if this + * flag makes sense. + * + * Only used when: `ISKEYBOARD(kmi->type) || (kmi->type == KM_TEXTINPUT)` + * as mouse, 3d-mouse, timer... etc never repeat. + */ KMI_REPEAT_IGNORE = (1 << 4), }; -- cgit v1.2.3