[Bf-blender-cvs] [ce11640eef0] blender-v2.83-release: Fix T77504: Operator search gives wrong results
Campbell Barton
noreply at git.blender.org
Thu Jun 18 10:15:24 CEST 2020
Commit: ce11640eef03736c1d840f8293bc890a1012de49
Author: Campbell Barton
Date: Wed Jun 10 01:07:49 2020 +1000
Branches: blender-v2.83-release
https://developer.blender.org/rBce11640eef03736c1d840f8293bc890a1012de49
Fix T77504: Operator search gives wrong results
Regression in e8ab0137f8766
===================================================================
M source/blender/editors/interface/interface_handlers.c
M source/blender/editors/space_file/file_ops.c
===================================================================
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index c7cbe7f75f5..e7142972c96 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -8413,7 +8413,11 @@ static int ui_handle_button_over(bContext *C, const wmEvent *event, ARegion *reg
return WM_UI_HANDLER_CONTINUE;
}
-/* exported to interface.c: UI_but_active_only() */
+/**
+ * Exported to interface.c: #UI_but_active_only()
+ * \note The region is only for the button.
+ * The context needs to be set by the caller.
+ */
void ui_but_activate_event(bContext *C, ARegion *region, uiBut *but)
{
wmWindow *win = CTX_wm_window(C);
@@ -8427,10 +8431,7 @@ void ui_but_activate_event(bContext *C, ARegion *region, uiBut *but)
event.customdata = but;
event.customdatafree = false;
- ARegion *region_ctx = CTX_wm_region(C);
- CTX_wm_region_set(C, region);
ui_do_button(C, but->block, but, &event);
- CTX_wm_region_set(C, region_ctx);
}
/**
diff --git a/source/blender/editors/space_file/file_ops.c b/source/blender/editors/space_file/file_ops.c
index a5263378850..7167aa8bad7 100644
--- a/source/blender/editors/space_file/file_ops.c
+++ b/source/blender/editors/space_file/file_ops.c
@@ -2712,7 +2712,11 @@ static int file_start_filter_exec(bContext *C, wmOperator *UNUSED(op))
ARegion *region = BKE_area_find_region_type(area, RGN_TYPE_UI);
SpaceFile *sf = CTX_wm_space_file(C);
+ ARegion *region_ctx = CTX_wm_region(C);
+ CTX_wm_region_set(C, region);
UI_textbutton_activate_rna(C, region, sf->params, "filter_search");
+ CTX_wm_region_set(C, region_ctx);
+
return OPERATOR_FINISHED;
}
More information about the Bf-blender-cvs
mailing list