From e26b67fa1e13b45c395878dfc667af0b4cc458cf Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 27 Mar 2019 15:35:49 +1100 Subject: Fix popovers from enums failing on drag-release --- source/blender/editors/interface/interface_handlers.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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); -- cgit v1.2.3