diff options
9 files changed, 39 insertions, 22 deletions
diff --git a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py index 4107768a1c4..910d6b64b74 100644 --- a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py +++ b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py @@ -196,7 +196,7 @@ class GreasePencilDisplayPanel: col.prop(brush, "cursor_color_add", text="Cursor Color") if brush.gpencil_sculpt_tool in {'THICKNESS', 'STRENGTH', 'PINCH', 'TWIST'}: - col.prop(brush, "cursor_color_subtract", text="Inverse Cursor Color") + col.prop(brush, "cursor_color_subtract", text="Inverse Color") elif ob.mode == 'WEIGHT_GPENCIL': col = layout.column(align=True) diff --git a/source/blender/blenloader/intern/versioning_290.c b/source/blender/blenloader/intern/versioning_290.c index 8622264188a..2daa1d48f47 100644 --- a/source/blender/blenloader/intern/versioning_290.c +++ b/source/blender/blenloader/intern/versioning_290.c @@ -896,30 +896,30 @@ void blo_do_versions_290(FileData *fd, Library *UNUSED(lib), Main *bmain) */ { /* Keep this block, even when empty. */ - } - /* Remove options of legacy UV/Image editor */ - for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) { - LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) { - LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) { - switch (sl->spacetype) { - case SPACE_IMAGE: { - SpaceImage *sima = (SpaceImage *)sl; - sima->flag &= ~(SI_FLAG_UNUSED_20); - break; + /* Remove options of legacy UV/Image editor */ + for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) { + LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) { + LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) { + switch (sl->spacetype) { + case SPACE_IMAGE: { + SpaceImage *sima = (SpaceImage *)sl; + sima->flag &= ~(SI_FLAG_UNUSED_20); + break; + } } } } } - } - if (!DNA_struct_elem_find(fd->filesdna, "FluidModifierData", "float", "fractions_distance")) { - LISTBASE_FOREACH (Object *, ob, &bmain->objects) { - LISTBASE_FOREACH (ModifierData *, md, &ob->modifiers) { - if (md->type == eModifierType_Fluid) { - FluidModifierData *fmd = (FluidModifierData *)md; - if (fmd->domain) { - fmd->domain->fractions_distance = 0.5; + if (!DNA_struct_elem_find(fd->filesdna, "FluidModifierData", "float", "fractions_distance")) { + LISTBASE_FOREACH (Object *, ob, &bmain->objects) { + LISTBASE_FOREACH (ModifierData *, md, &ob->modifiers) { + if (md->type == eModifierType_Fluid) { + FluidModifierData *fmd = (FluidModifierData *)md; + if (fmd->domain) { + fmd->domain->fractions_distance = 0.5; + } } } } diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c index b3ed6ac09b3..601ab44c3d6 100644 --- a/source/blender/editors/interface/interface.c +++ b/source/blender/editors/interface/interface.c @@ -6757,6 +6757,7 @@ void UI_but_focus_on_enter_event(wmWindow *win, uiBut *but) event.type = EVT_BUT_OPEN; event.val = KM_PRESS; + event.is_repeat = false; event.customdata = but; event.customdatafree = false; diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index 95bb27d9fca..b77f8bf3b63 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -8546,6 +8546,7 @@ void ui_but_activate_event(bContext *C, ARegion *region, uiBut *but) wm_event_init_from_window(win, &event); event.type = EVT_BUT_OPEN; event.val = KM_PRESS; + event.is_repeat = false; event.customdata = but; event.customdatafree = false; diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c index 0d24992671f..27a1d4e4a50 100644 --- a/source/blender/editors/screen/screen_ops.c +++ b/source/blender/editors/screen/screen_ops.c @@ -976,6 +976,7 @@ static void actionzone_apply(bContext *C, wmOperator *op, int type) } event.val = KM_NOTHING; + event.is_repeat = false; event.customdata = op->customdata; event.customdatafree = true; op->customdata = NULL; diff --git a/source/blender/makesrna/intern/rna_ui.c b/source/blender/makesrna/intern/rna_ui.c index d637e011777..d87b3a6386e 100644 --- a/source/blender/makesrna/intern/rna_ui.c +++ b/source/blender/makesrna/intern/rna_ui.c @@ -180,6 +180,17 @@ static void panel_draw_header_preset(const bContext *C, Panel *panel) RNA_parameter_list_free(&list); } +static void panel_type_clear_recursive(Panel *panel, const PanelType *type) +{ + if (panel->type == type) { + panel->type = NULL; + } + + LISTBASE_FOREACH (Panel *, child_panel, &panel->children) { + panel_type_clear_recursive(child_panel, type); + } +} + static void rna_Panel_unregister(Main *bmain, StructRNA *type) { ARegionType *art; @@ -220,9 +231,7 @@ static void rna_Panel_unregister(Main *bmain, StructRNA *type) LISTBASE_FOREACH (ARegion *, region, regionbase) { if (region->type == art) { LISTBASE_FOREACH (Panel *, panel, ®ion->panels) { - if (panel->type == pt) { - panel->type = NULL; - } + panel_type_clear_recursive(panel, pt); } } /* The unregistered panel might have had a template that added instanced panels, diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index 07d5ffa1b82..e6ec68f706c 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -663,6 +663,7 @@ void wm_event_handler_ui_cancel_ex(bContext *C, wm_event_init_from_window(win, &event); event.type = EVT_BUT_CANCEL; event.val = reactivate_button ? 0 : 1; + event.is_repeat = false; handler->handle_fn(C, &event, handler->user_data); } } diff --git a/source/blender/windowmanager/intern/wm_gesture_ops.c b/source/blender/windowmanager/intern/wm_gesture_ops.c index 8357d4c2331..00112e82771 100644 --- a/source/blender/windowmanager/intern/wm_gesture_ops.c +++ b/source/blender/windowmanager/intern/wm_gesture_ops.c @@ -519,6 +519,7 @@ static void gesture_tweak_modal(bContext *C, const wmEvent *event) tevent.type = EVT_TWEAK_M; } tevent.val = val; + tevent.is_repeat = false; /* mouse coords! */ /* important we add immediately after this event, so future mouse releases diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c index b43e033c7ca..6c9b6915da8 100644 --- a/source/blender/windowmanager/intern/wm_window.c +++ b/source/blender/windowmanager/intern/wm_window.c @@ -1301,6 +1301,7 @@ static int ghost_event_proc(GHOST_EventHandle evt, GHOST_TUserDataPtr C_void_ptr event.type = MOUSEMOVE; event.prevx = event.x; event.prevy = event.y; + event.is_repeat = false; wm_event_add(win, &event); @@ -1432,6 +1433,7 @@ static int ghost_event_proc(GHOST_EventHandle evt, GHOST_TUserDataPtr C_void_ptr event.type = MOUSEMOVE; event.prevx = event.x; event.prevy = event.y; + event.is_repeat = false; /* No context change! C->wm->windrawable is drawable, or for area queues. */ wm->winactive = win; @@ -1568,6 +1570,7 @@ static int wm_window_timer(const bContext *C) event.type = wt->event_type; event.val = KM_NOTHING; event.keymodifier = 0; + event.is_repeat = false; event.custom = EVT_DATA_TIMER; event.customdata = wt; wm_event_add(win, &event); |