Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-02-19 08:09:14 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-02-19 08:18:23 +0300
commitbb6692be8a90f7d86d620557a893c6bb48bdd236 (patch)
tree7f79d2d0682b6b59a477e2ad370ae4cd023bafd3 /source/blender/windowmanager/intern/wm_keymap.c
parentd718338828c19f6fa1bbaa0530dcc0fbc72e46c4 (diff)
WM: move keymap handler to it's own type
Illuminate dead code, using wmEventHandler_KeymapFn from gizmo handler type where it was never set.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_keymap.c')
-rw-r--r--source/blender/windowmanager/intern/wm_keymap.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/source/blender/windowmanager/intern/wm_keymap.c b/source/blender/windowmanager/intern/wm_keymap.c
index 7d01e4d0553..c170f0589c0 100644
--- a/source/blender/windowmanager/intern/wm_keymap.c
+++ b/source/blender/windowmanager/intern/wm_keymap.c
@@ -1226,20 +1226,22 @@ static wmKeyMapItem *wm_keymap_item_find_handlers(
wmKeyMap **r_keymap)
{
wmWindowManager *wm = CTX_wm_manager(C);
- wmEventHandler *handler;
wmKeyMap *keymap;
/* find keymap item in handlers */
- for (handler = handlers->first; handler; handler = handler->next) {
- keymap = WM_keymap_active(wm, handler->keymap);
- if (keymap && WM_keymap_poll((bContext *)C, keymap)) {
- wmKeyMapItem *kmi = wm_keymap_item_find_in_keymap(
- keymap, opname, properties, is_strict, params);
- if (kmi != NULL) {
- if (r_keymap) {
- *r_keymap = keymap;
+ for (wmEventHandler *handler_base = handlers->first; handler_base; handler_base = handler_base->next) {
+ if (handler_base->type == WM_HANDLER_TYPE_KEYMAP) {
+ wmEventHandler_Keymap *handler = (wmEventHandler_Keymap *)handler_base;
+ keymap = WM_keymap_active(wm, handler->keymap);
+ if (keymap && WM_keymap_poll((bContext *)C, keymap)) {
+ wmKeyMapItem *kmi = wm_keymap_item_find_in_keymap(
+ keymap, opname, properties, is_strict, params);
+ if (kmi != NULL) {
+ if (r_keymap) {
+ *r_keymap = keymap;
+ }
+ return kmi;
}
- return kmi;
}
}
}