Fix T101510: Incorrect context for running data unlink from template ID
There was already a fix for this, but it got broken again with c973d333da
.
This commit is contained in:
parent
2653775c66
commit
5a1ef2dc78
Notes:
blender-bot
2023-02-14 10:48:33 +01:00
Referenced by issue #100749, Blender LTS: Maintenance Task 3.3 Referenced by issue #101510, Regression: Incorrect context for running data unlink
|
@ -1392,6 +1392,7 @@ void UI_but_extra_icon_string_info_get(struct bContext *C, uiButExtraOpIcon *ext
|
|||
* - AutoButR: RNA property button with type automatically defined.
|
||||
*/
|
||||
enum {
|
||||
UI_ID_NOP = 0,
|
||||
UI_ID_RENAME = 1 << 0,
|
||||
UI_ID_BROWSE = 1 << 1,
|
||||
UI_ID_ADD_NEW = 1 << 2,
|
||||
|
|
|
@ -910,6 +910,11 @@ static void template_id_cb(bContext *C, void *arg_litem, void *arg_event)
|
|||
const char *undo_push_label = NULL;
|
||||
|
||||
switch (event) {
|
||||
case UI_ID_NOP:
|
||||
/* Don't do anything, typically set for buttons that execute an operator instead. They may
|
||||
* still assign the callback so the button can be identified as part of an ID-template. See
|
||||
* #UI_context_active_but_prop_get_templateID(). */
|
||||
break;
|
||||
case UI_ID_BROWSE:
|
||||
case UI_ID_PIN:
|
||||
RNA_warning("warning, id event %d shouldn't come here", event);
|
||||
|
@ -1543,7 +1548,8 @@ static void template_ID(const bContext *C,
|
|||
UI_UNIT_Y,
|
||||
NULL);
|
||||
/* so we can access the template from operators, font unlinking needs this */
|
||||
UI_but_funcN_set(but, NULL, MEM_dupallocN(template_ui), NULL);
|
||||
UI_but_funcN_set(
|
||||
but, template_id_cb, MEM_dupallocN(template_ui), POINTER_FROM_INT(UI_ID_NOP));
|
||||
}
|
||||
else {
|
||||
if ((RNA_property_flag(template_ui->prop) & PROP_NEVER_UNLINK) == 0) {
|
||||
|
|
Loading…
Reference in New Issue