[Bf-blender-cvs] [e26b67fa1e1] master: Fix popovers from enums failing on drag-release

Campbell Barton noreply at git.blender.org
Wed Mar 27 06:00:43 CET 2019


Commit: e26b67fa1e13b45c395878dfc667af0b4cc458cf
Author: Campbell Barton
Date:   Wed Mar 27 15:35:49 2019 +1100
Branches: master
https://developer.blender.org/rBe26b67fa1e13b45c395878dfc667af0b4cc458cf

Fix popovers from enums failing on drag-release

===================================================================

M	source/blender/editors/interface/interface_handlers.c

===================================================================

diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 404de2cd085..d1294dcfed2 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -7969,7 +7969,11 @@ static int ui_handle_button_event(bContext *C, const wmEvent *event, uiBut *but)
 								data->cancel = false;
 								button_activate_state(C, but, BUTTON_STATE_EXIT);
 								retval = WM_UI_HANDLER_BREAK;
-								block->handle->menuretval = UI_RETURN_OK;
+								/* Cancel because this `but` handles all events and we don't want
+								 * the parent button's update function to do anything.
+								 *
+								 * Causes issues with buttons defined by #uiItemFullR_with_popover. */
+								block->handle->menuretval = UI_RETURN_CANCEL;
 							}
 							else if (ui_but_is_editable_as_text(but)) {
 								ui_handle_button_activate(C, ar, but, BUTTON_ACTIVATE_TEXT_EDITING);



More information about the Bf-blender-cvs mailing list