diff --git a/source/blender/editors/interface/interface_handlers.cc b/source/blender/editors/interface/interface_handlers.cc index 093363153dc..9839c30251d 100644 --- a/source/blender/editors/interface/interface_handlers.cc +++ b/source/blender/editors/interface/interface_handlers.cc @@ -8781,7 +8781,7 @@ uiBut *UI_context_active_but_prop_get(const bContext *C, PropertyRNA **r_prop, int *r_index) { - uiBut *activebut = ui_context_rna_button_active(C); + uiBut *activebut = UI_context_active_but_get_respect_menu(C); if (activebut && activebut->rnapoin.data) { *r_ptr = activebut->rnapoin; @@ -8799,7 +8799,7 @@ uiBut *UI_context_active_but_prop_get(const bContext *C, void UI_context_active_but_prop_handle(bContext *C, const bool handle_undo) { - uiBut *activebut = ui_context_rna_button_active(C); + uiBut *activebut = UI_context_active_but_get_respect_menu(C); if (activebut) { /* TODO(@ideasman42): look into a better way to handle the button change * currently this is mainly so reset defaults works for the diff --git a/source/blender/editors/interface/interface_region_color_picker.cc b/source/blender/editors/interface/interface_region_color_picker.cc index 29b32841c31..c98831e98f8 100644 --- a/source/blender/editors/interface/interface_region_color_picker.cc +++ b/source/blender/editors/interface/interface_region_color_picker.cc @@ -868,7 +868,6 @@ uiBlock *ui_block_func_COLOR(bContext *C, uiPopupBlockHandle *handle, void *arg_ { uiBut *but = static_cast(arg_but); uiBlock *block; - bool show_picker = true; block = UI_block_begin(C, handle->region, __func__, UI_EMBOSS); @@ -876,17 +875,9 @@ uiBlock *ui_block_func_COLOR(bContext *C, uiPopupBlockHandle *handle, void *arg_ block->is_color_gamma_picker = true; } - if (but->block) { - /* if color block is invoked from a popup we wouldn't be able to set color properly - * this is because color picker will close popups first and then will try to figure - * out active button RNA, and of course it'll fail - */ - show_picker = (but->block->flag & UI_BLOCK_POPUP) == 0; - } - copy_v3_v3(handle->retvec, but->editvec); - ui_block_colorpicker(block, but, handle->retvec, show_picker); + ui_block_colorpicker(block, but, handle->retvec, true); block->flag = UI_BLOCK_LOOP | UI_BLOCK_KEEP_OPEN | UI_BLOCK_OUT_1 | UI_BLOCK_MOVEMOUSE_QUIT; UI_block_theme_style_set(block, UI_BLOCK_THEME_STYLE_POPUP);