From 5e6fdaa07fff907e02b36813ccde0702bad4fb4d Mon Sep 17 00:00:00 2001 From: Germano Cavalcante Date: Tue, 16 Nov 2021 21:05:30 -0300 Subject: Revert "Allow navigating while transforming" This reverts commit 1d1855e95f916685fed970904fc37701a4a0e031. --- source/blender/windowmanager/WM_api.h | 3 - .../blender/windowmanager/intern/wm_event_system.c | 2 +- .../windowmanager/intern/wm_operator_utils.c | 101 --------------------- source/blender/windowmanager/wm_event_system.h | 1 - 4 files changed, 1 insertion(+), 106 deletions(-) (limited to 'source/blender/windowmanager') diff --git a/source/blender/windowmanager/WM_api.h b/source/blender/windowmanager/WM_api.h index 35bd5ef4e3f..8d25ece3753 100644 --- a/source/blender/windowmanager/WM_api.h +++ b/source/blender/windowmanager/WM_api.h @@ -640,9 +640,6 @@ char *WM_operatortype_description_or_name(struct bContext *C, /* wm_operator_utils.c */ void WM_operator_type_modal_from_exec_for_object_edit_coords(struct wmOperatorType *ot); -bool WM_operator_do_navigation(struct bContext *C, - struct wmOperator *op, - const struct wmEvent *event); /* wm_uilist_type.c */ void WM_uilisttype_init(void); diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index f08c23c6543..f51c8c48c48 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -2003,7 +2003,7 @@ void WM_event_remove_handlers(bContext *C, ListBase *handlers) } } -bool wm_eventmatch(const wmEvent *winevent, const wmKeyMapItem *kmi) +static bool wm_eventmatch(const wmEvent *winevent, const wmKeyMapItem *kmi) { if (kmi->flag & KMI_INACTIVE) { return false; diff --git a/source/blender/windowmanager/intern/wm_operator_utils.c b/source/blender/windowmanager/intern/wm_operator_utils.c index 4f4259408d8..85a0a28de79 100644 --- a/source/blender/windowmanager/intern/wm_operator_utils.c +++ b/source/blender/windowmanager/intern/wm_operator_utils.c @@ -21,9 +21,7 @@ */ #include -#include -#include "BLI_listbase.h" #include "BLI_string.h" #include "BLI_utildefines.h" @@ -37,8 +35,6 @@ #include "WM_api.h" /* Own include. */ #include "WM_types.h" -#include "wm_event_system.h" - #include "MEM_guardedalloc.h" #include "ED_object.h" @@ -362,101 +358,4 @@ void WM_operator_type_modal_from_exec_for_object_edit_coords(wmOperatorType *ot) RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE); } -bool WM_operator_do_navigation(bContext *C, wmOperator *op, const wmEvent *event) -{ - const char *op_names[] = { - /* 3D View. */ - "VIEW3D_OT_zoom", - "VIEW3D_OT_rotate", - "VIEW3D_OT_move", - "VIEW3D_OT_view_pan", - "VIEW3D_OT_dolly", - "VIEW3D_OT_view_orbit", - "VIEW3D_OT_view_roll", -#ifdef WITH_INPUT_NDOF - "VIEW3D_OT_ndof_orbit_zoom", - "VIEW3D_OT_ndof_orbit", - "VIEW3D_OT_ndof_pan", - "VIEW3D_OT_ndof_all", -#endif - /* Image. */ - "IMAGE_OT_view_pan", - "IMAGE_OT_view_zoom_in", - "IMAGE_OT_view_zoom_out", -#ifdef WITH_INPUT_NDOF - "IMAGE_OT_view_ndof", -#endif - /* View2D. */ - "VIEW2D_OT_pan", - "VIEW2D_OT_zoom_in", - "VIEW2D_OT_zoom_out", -#ifdef WITH_INPUT_NDOF - "VIEW2D_OT_ndof", -#endif - }; - - static struct { - wmKeyMapItem *kmi; - wmOperatorType *ot; - } kmi_ot[70]; - static int kmi_ot_len; - - /* Lazy initialization (avoids having to allocating a context). */ - static wmOperatorType *ot_last = NULL; - static char spacetype_last = SPACE_EMPTY; - SpaceLink *sl = CTX_wm_space_data(C); - if ((ot_last != op->type) || (spacetype_last != sl->spacetype)) { - ot_last = op->type; - spacetype_last = sl->spacetype; - - wmWindowManager *wm = CTX_wm_manager(C); - wmKeyMap *km; - if (sl->spacetype == SPACE_VIEW3D) { - km = WM_keymap_find_all(wm, "3D View", SPACE_VIEW3D, 0); - } - else if (sl->spacetype == SPACE_IMAGE) { - km = WM_keymap_find_all(wm, "Image", SPACE_IMAGE, 0); - } - else { - km = WM_keymap_find_all(wm, "View2D", 0, 0); - } - - kmi_ot_len = 0; - LISTBASE_FOREACH (wmKeyMapItem *, kmi, &km->items) { - if (!(STRPREFIX(kmi->idname, "VIEW") || STRPREFIX(kmi->idname, "IMAGE"))) { - continue; - } - if (kmi->flag & KMI_INACTIVE) { - continue; - } - for (int i = 0; i < ARRAY_SIZE(op_names); i++) { - if (STREQ(kmi->idname, op_names[i])) { - kmi_ot[kmi_ot_len].kmi = kmi; - kmi_ot[kmi_ot_len].ot = WM_operatortype_find(op_names[i], true); - kmi_ot_len++; - break; - } - } - if (kmi_ot_len == ARRAY_SIZE(kmi_ot)) { - BLI_assert(false); - break; - } - } - } - - if (event->type == EVT_MODAL_MAP) { - wmWindow *win = CTX_wm_window(C); - event = win->eventstate; - } - - for (int i = 0; i < kmi_ot_len; i++) { - if (wm_eventmatch(event, kmi_ot[i].kmi)) { - return WM_operator_name_call_ptr( - C, kmi_ot[i].ot, WM_OP_INVOKE_DEFAULT, kmi_ot[i].kmi->ptr) != OPERATOR_CANCELLED; - } - } - - return false; -} - /** \} */ diff --git a/source/blender/windowmanager/wm_event_system.h b/source/blender/windowmanager/wm_event_system.h index c90a808c65e..9b0f128d071 100644 --- a/source/blender/windowmanager/wm_event_system.h +++ b/source/blender/windowmanager/wm_event_system.h @@ -147,7 +147,6 @@ typedef struct wmEventHandler_Dropbox { void wm_event_free_all(wmWindow *win); void wm_event_free(wmEvent *event); void wm_event_free_handler(wmEventHandler *handler); -bool wm_eventmatch(const wmEvent *winevent, const wmKeyMapItem *kmi); /* goes over entire hierarchy: events -> window -> screen -> area -> region */ void wm_event_do_handlers(bContext *C); -- cgit v1.2.3