From 0e18097674c840f6f371fc095a94b853576e9aea Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 11 Oct 2023 09:18:39 +0200 Subject: [PATCH 1/3] Fix #113463: VSE Hold-Split has no visual indication anymore Exposed by cba9f4756228 (but actually caused by 4d668e6825ac I think). Because of 4d668e6825ac , the `StripDrawContext` `content_start` & `content_end` were wrong for hold still regions. These wrong extends were then used in cba9f4756228 . Now actually update `StripDrawContext` `content_start` & `content_end` when hold still regions are in play (instead of just calling the right functions [but not using their return values]). Pull Request: https://projects.blender.org/blender/blender/pulls/113494 --- .../editors/space_sequencer/sequencer_timeline_draw.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc b/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc index 98ac460edd9..dd65f3b1508 100644 --- a/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc +++ b/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc @@ -194,10 +194,10 @@ static StripDrawContext strip_draw_context_get(TimelineDrawContext *ctx, Sequenc strip_ctx.content_start = SEQ_time_left_handle_frame_get(scene, seq); strip_ctx.content_end = SEQ_time_right_handle_frame_get(scene, seq); if (SEQ_time_has_left_still_frames(scene, seq)) { - SEQ_time_start_frame_get(seq); + strip_ctx.content_start = SEQ_time_start_frame_get(seq); } if (SEQ_time_has_right_still_frames(scene, seq)) { - SEQ_time_content_end_frame_get(scene, seq); + strip_ctx.content_end = SEQ_time_content_end_frame_get(scene, seq); } /* Limit body to strip bounds. Meta strip can end up with content outside of strip range. */ strip_ctx.content_start = min_ff(strip_ctx.content_start, From 97836115180e141c7ea3035058848ee602634a32 Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 11 Oct 2023 09:19:19 +0200 Subject: [PATCH 2/3] Fix #113287: Industry Compatible Keymap: Node Editor Search missing Caused by 974edc588547 / 7f9d51853c978ff You can now type to search directly in the `Add` menu. Bit unfortunate though that this is not mapped to any shortcut in the `Industry Compatible` keymap anymore I think we could just add TAB back (but this time, mapped to `NODE_MT_add`). Pull Request: https://projects.blender.org/blender/blender/pulls/113446 --- .../presets/keyconfig/keymap_data/industry_compatible_data.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py b/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py index 10f614666a3..81abc9ca81d 100644 --- a/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py +++ b/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py @@ -1074,6 +1074,8 @@ def km_node_generic(_params): items.extend([ op_panel("TOPBAR_PT_name", {"type": 'RET', "value": 'PRESS'}, [("keep_open", False)]), + ("wm.search_single_menu", {"type": 'TAB', "value": 'PRESS'}, + {"properties": [("menu_idname", 'NODE_MT_add')]}), ("wm.context_toggle", {"type": 'LEFT_BRACKET', "value": 'PRESS', "ctrl": True}, {"properties": [("data_path", 'space_data.show_region_toolbar')]}), ("wm.context_toggle", {"type": 'RIGHT_BRACKET', "value": 'PRESS', "ctrl": True}, From 1242512ff236c4fb55f75002224ca01d8d56ef1e Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 11 Oct 2023 09:19:50 +0200 Subject: [PATCH 3/3] Fix #113285: Mesh analysis not updating all multi-object-editing objects The RNA update function was only taking into account the active object, now changed to respect all `objects_in_edit_mode_unique_data`. Pull Request: https://projects.blender.org/blender/blender/pulls/113294 --- source/blender/makesrna/intern/rna_scene.cc | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/source/blender/makesrna/intern/rna_scene.cc b/source/blender/makesrna/intern/rna_scene.cc index 3e8462190c7..7f3b7eb5a80 100644 --- a/source/blender/makesrna/intern/rna_scene.cc +++ b/source/blender/makesrna/intern/rna_scene.cc @@ -2320,21 +2320,20 @@ static void rna_EditMesh_update(bContext *C, PointerRNA * /*ptr*/) { const Scene *scene = CTX_data_scene(C); ViewLayer *view_layer = CTX_data_view_layer(C); - Mesh *me = nullptr; - BKE_view_layer_synced_ensure(scene, view_layer); - Object *object = BKE_view_layer_active_object_get(view_layer); - if (object) { - me = BKE_mesh_from_object(object); - if (me && me->edit_mesh == nullptr) { - me = nullptr; - } - } - if (me) { + uint objects_len = 0; + Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data( + scene, view_layer, CTX_wm_view3d(C), &objects_len); + for (uint ob_index = 0; ob_index < objects_len; ob_index++) { + Object *obedit = objects[ob_index]; + Mesh *me = BKE_mesh_from_object(obedit); + DEG_id_tag_update(&me->id, ID_RECALC_GEOMETRY); WM_main_add_notifier(NC_GEOM | ND_DATA, me); } + + MEM_freeN(objects); } static char *rna_MeshStatVis_path(const PointerRNA * /*ptr*/)