[Bf-blender-cvs] [9054b834028] blender-v2.81-release: Cleanup depsgraph access in particle_edit.c
Commit: 9054b834028fc5c0e67f5225ad09dd7107484951 Author: Philipp Oeser Date: Tue Oct 15 12:22:43 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rB9054b834028fc5c0e67f5225ad09dd7107484951 Cleanup depsgraph access in particle_edit.c 'PE_set_data' / 'PE_set_view3d_data' would give us a depsgraph already, so use it. Also fix access to PEData->depsgraph without calling 'PE_set_data' prior. Addresses concern raised in rBcf2c09002fae. Reviewed By: sergey Differential Revision: https://developer.blender.org/D6067 === M source/blender/editors/physics/particle_edit.c === diff --git a/source/blender/editors/physics/particle_edit.c b/source/blender/editors/physics/particle_edit.c index 3978f7ba3b5..f16a372cb3c 100644 --- a/source/blender/editors/physics/particle_edit.c +++ b/source/blender/editors/physics/particle_edit.c @@ -470,8 +470,7 @@ static void PE_set_view3d_data(bContext *C, PEData *data) { PE_set_data(C, data); - Depsgraph *depsgraph = CTX_data_ensure_evaluated_depsgraph(C); - ED_view3d_viewcontext_init(C, &data->vc, depsgraph); + ED_view3d_viewcontext_init(C, &data->vc, data->depsgraph); if (!XRAY_ENABLED(data->vc.v3d)) { if (data->vc.v3d->flag & V3D_INVALID_BACKBUF) { @@ -1811,10 +1810,13 @@ bool PE_mouse_particles(bContext *C, const int mval[2], bool extend, bool desele PEData data; Scene *scene = CTX_data_scene(C); Object *ob = CTX_data_active_object(C); - PTCacheEdit *edit = PE_get_current(data.depsgraph, scene, ob); POINT_P; KEY_K; + PE_set_view3d_data(C, &data); + + PTCacheEdit *edit = PE_get_current(data.depsgraph, scene, ob); + if (!PE_start_edit(edit)) { return false; } @@ -1828,7 +1830,6 @@ bool PE_mouse_particles(bContext *C, const int mval[2], bool extend, bool desele } } - PE_set_view3d_data(C, &data); data.mval = mval; data.rad = ED_view3d_select_dist_px(); @@ -1997,7 +1998,6 @@ static const EnumPropertyItem select_random_type_items[] = { static int select_random_exec(bContext *C, wmOperator *op) { - Depsgraph *depsgraph = CTX_data_depsgraph_pointer(C); PEData data; int type; @@ -2017,7 +2017,7 @@ static int select_random_exec(bContext *C, wmOperator *op) PE_set_data(C, &data); data.select_action = SEL_SELECT; - edit = PE_get_current(depsgraph, data.scene, data.ob); + edit = PE_get_current(data.depsgraph, data.scene, data.ob); rng = BLI_rng_new_srandom(seed); @@ -4940,7 +4940,7 @@ static void shape_cut(PEData *data, int pa_index) static int shape_cut_exec(bContext *C, wmOperator *UNUSED(op)) { - Depsgraph *depsgraph = CTX_data_depsgraph_pointer(C); + Depsgraph *depsgraph = CTX_data_ensure_evaluated_depsgraph(C); Scene *scene = CTX_data_scene(C); Object *ob = CTX_data_active_object(C); ParticleEditSettings *pset = PE_settings(scene); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [77e38160fe2] master: Merge branch 'blender-v2.81-release'
Commit: 77e38160fe2a351f0b9b81d0e18c4dfe5df1d3ad Author: Philipp Oeser Date: Thu Oct 17 13:17:36 2019 +0200 Branches: master https://developer.blender.org/rB77e38160fe2a351f0b9b81d0e18c4dfe5df1d3ad Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [725b59d9b44] blender-v2.81-release: Fix T70903: Opening splash screen from named app_template crashes
Commit: 725b59d9b44a632095c90e1912f14431b0171f1d Author: Philipp Oeser Date: Thu Oct 17 18:54:14 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rB725b59d9b44a632095c90e1912f14431b0171f1d Fix T70903: Opening splash screen from named app_template crashes Caused by rB46102cf4e0c4 [which removed the check if the image can actually be loaded]. Maniphest Tasks: T70903 Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D6089 === M source/blender/windowmanager/intern/wm_splash_screen.c === diff --git a/source/blender/windowmanager/intern/wm_splash_screen.c b/source/blender/windowmanager/intern/wm_splash_screen.c index 662238b4ae1..3603ce81654 100644 --- a/source/blender/windowmanager/intern/wm_splash_screen.c +++ b/source/blender/windowmanager/intern/wm_splash_screen.c @@ -209,7 +209,7 @@ static ImBuf *wm_block_splash_image(int r_unit_size[2]) ibuf = IMB_loadiffname(splash_filepath, IB_rect, NULL); /* We could skip this check, see comment about 'x_expect' above. */ - if (ibuf->x != x_expect) { + if (ibuf && ibuf->x != x_expect) { CLOG_ERROR(WM_LOG_OPERATORS, "Splash expected %d width found %d, ignoring: %s\n", x_expect, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [8148bf8cf0f] master: Merge branch 'blender-v2.81-release'
Commit: 8148bf8cf0f990156d2a0ae6e646a90dfa7aa858 Author: Philipp Oeser Date: Fri Oct 18 13:33:20 2019 +0200 Branches: master https://developer.blender.org/rB8148bf8cf0f990156d2a0ae6e646a90dfa7aa858 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [9f388c16467] blender-v2.81-release: Fix T71037: batch rename bones in pose mode throws exceptions
Commit: 9f388c16467d9893412cd8891f2bf2693df3db3d Author: Philipp Oeser Date: Wed Oct 23 13:45:05 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rB9f388c16467d9893412cd8891f2bf2693df3db3d Fix T71037: batch rename bones in pose mode throws exceptions Maniphest Tasks: T71037 Differential Revision: https://developer.blender.org/D6122 === M release/scripts/startup/bl_operators/wm.py === diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py index 726afda571d..e7989bec227 100644 --- a/release/scripts/startup/bl_operators/wm.py +++ b/release/scripts/startup/bl_operators/wm.py @@ -1923,7 +1923,7 @@ class WM_OT_batch_rename(Operator): data = ( [pchan.bone for pchan in context.selected_pose_bones] if only_selected else -[pchan.bone for ob in context.objects_in_mode_unique_data for pbone in ob.pose.bones], +[pbone.bone for ob in context.objects_in_mode_unique_data for pbone in ob.pose.bones], "name", "Bone(s)", ) ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [d4a67fa87b0] master: Merge branch 'blender-v2.81-release'
Commit: d4a67fa87b01f93bbd4e755e263b04c9626b494d Author: Philipp Oeser Date: Mon Oct 28 10:31:52 2019 +0100 Branches: master https://developer.blender.org/rBd4a67fa87b01f93bbd4e755e263b04c9626b494d Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [4fbcbbfb967] blender-v2.81-release: Fix T71126: add old hotkeys to set start/end frame in the timeline to Blender 27X keymap
Commit: 4fbcbbfb967cb0fdff11dfc1646a1c55bca96f1d Author: Philipp Oeser Date: Tue Oct 29 10:39:07 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB4fbcbbfb967cb0fdff11dfc1646a1c55bca96f1d Fix T71126: add old hotkeys to set start/end frame in the timeline to Blender 27X keymap Maniphest Tasks: T71126 Differential Revision: https://developer.blender.org/D6151 === M release/scripts/presets/keyconfig/keymap_data/blender_default.py === diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py index 6ad0ccf8a5f..8a86ece53ce 100644 --- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py +++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py @@ -2855,6 +2855,17 @@ def km_animation(params): {"items": items}, ) +if not params.legacy: +items.extend([ +("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), +("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), +]) +else: +items.extend([ +("anim.start_frame_set", {"type": 'S', "value": 'PRESS'}, None), +("anim.end_frame_set", {"type": 'E', "value": 'PRESS'}, None), +]) + items.extend([ # Frame management. ("wm.context_toggle", {"type": 'T', "value": 'PRESS', "ctrl": True}, @@ -2862,8 +2873,6 @@ def km_animation(params): # Preview range. ("anim.previewrange_set", {"type": 'P', "value": 'PRESS'}, None), ("anim.previewrange_clear", {"type": 'P', "value": 'PRESS', "alt": True}, None), -("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), -("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), ]) if params.select_mouse == 'LEFTMOUSE' and not params.legacy: ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [c43183bcc98] master: Merge branch 'blender-v2.81-release'
Commit: c43183bcc983f555f8f64fab3dbe98aaeefb32be Author: Philipp Oeser Date: Tue Oct 29 14:32:28 2019 +0100 Branches: master https://developer.blender.org/rBc43183bcc983f555f8f64fab3dbe98aaeefb32be Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [9efe12d77a6] blender-v2.81-release: Fix T71171: Problems removing texture packing (without writing anything) using image.unpack() or bpy.ops.image.unpack()
Commit: 9efe12d77a60fab1215f09c6231337244df3c176 Author: Philipp Oeser Date: Tue Oct 29 11:33:41 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB9efe12d77a60fab1215f09c6231337244df3c176 Fix T71171: Problems removing texture packing (without writing anything) using image.unpack() or bpy.ops.image.unpack() If we offer this in the UI, also expose this to .unpack Maniphest Tasks: T71171 Differential Revision: https://developer.blender.org/D6152 === M source/blender/editors/space_info/info_ops.c M source/blender/makesrna/intern/rna_packedfile.c === diff --git a/source/blender/editors/space_info/info_ops.c b/source/blender/editors/space_info/info_ops.c index 14817e9ffa1..124e3c08165 100644 --- a/source/blender/editors/space_info/info_ops.c +++ b/source/blender/editors/space_info/info_ops.c @@ -211,6 +211,7 @@ static const EnumPropertyItem unpack_all_method_items[] = { "Write files to original location (overwrite existing files)", ""}, {PF_KEEP, "KEEP", 0, "Disable Auto-pack, keep all packed files", ""}, +{PF_REMOVE, "REMOVE", 0, "Remove Pack", ""}, /* {PF_ASK, "ASK", 0, "Ask for each file", ""}, */ {0, NULL, 0, NULL, NULL}, }; diff --git a/source/blender/makesrna/intern/rna_packedfile.c b/source/blender/makesrna/intern/rna_packedfile.c index dda1c637f39..8319612ea91 100644 --- a/source/blender/makesrna/intern/rna_packedfile.c +++ b/source/blender/makesrna/intern/rna_packedfile.c @@ -32,6 +32,7 @@ #include "rna_internal.h" const EnumPropertyItem rna_enum_unpack_method_items[] = { +{PF_REMOVE, "REMOVE", 0, "Remove Pack", ""}, {PF_USE_LOCAL, "USE_LOCAL", 0, "Use Local File", ""}, {PF_WRITE_LOCAL, "WRITE_LOCAL", 0, "Write Local File (overwrite existing)", ""}, {PF_USE_ORIGINAL, "USE_ORIGINAL", 0, "Use Original File", ""}, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [87ac3d14b29] blender-v2.81-release: Fix T70905: Image Editor header hides mask, cache and keyframe info if flipped to bottom
Commit: 87ac3d14b29d61d74b9aee2296f5b9892e2aa4a0 Author: Philipp Oeser Date: Tue Oct 29 16:49:27 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB87ac3d14b29d61d74b9aee2296f5b9892e2aa4a0 Fix T70905: Image Editor header hides mask, cache and keyframe info if flipped to bottom While flipping the header to bottom works in the MCE (because MCE doesnt allow overlapping UI) we need to take the regions visible rect into account for the Image Editor. Also correct clickable scubbing area (poll for frame_change) in the Image Editor and the MovieClip Editor not taking UI_DPI_FAC into account. Maniphest Tasks: T70905 Differential Revision: https://developer.blender.org/D6090 === M source/blender/editors/include/ED_screen.h M source/blender/editors/mask/mask_draw.c M source/blender/editors/screen/area.c M source/blender/editors/space_clip/clip_ops.c M source/blender/editors/space_image/image_draw.c M source/blender/editors/space_image/image_ops.c === diff --git a/source/blender/editors/include/ED_screen.h b/source/blender/editors/include/ED_screen.h index c3e61f5f2b2..4ca7c8f96ad 100644 --- a/source/blender/editors/include/ED_screen.h +++ b/source/blender/editors/include/ED_screen.h @@ -404,13 +404,10 @@ void ED_screen_user_menu_register(void); /* Cache display helpers */ -void ED_region_cache_draw_background(const struct ARegion *ar); +void ED_region_cache_draw_background(struct ARegion *ar); void ED_region_cache_draw_curfra_label(const int framenr, const float x, const float y); -void ED_region_cache_draw_cached_segments(const struct ARegion *ar, - const int num_segments, - const int *points, - const int sfra, - const int efra); +void ED_region_cache_draw_cached_segments( +struct ARegion *ar, const int num_segments, const int *points, const int sfra, const int efra); /* area_utils.c */ void ED_region_generic_tools_region_message_subscribe(const struct bContext *C, diff --git a/source/blender/editors/mask/mask_draw.c b/source/blender/editors/mask/mask_draw.c index 7247697dcb7..85fedac05ce 100644 --- a/source/blender/editors/mask/mask_draw.c +++ b/source/blender/editors/mask/mask_draw.c @@ -38,6 +38,7 @@ #include "ED_clip.h" #include "ED_mask.h" /* own include */ +#include "ED_screen.h" #include "ED_space_api.h" #include "BIF_glutil.h" @@ -802,6 +803,10 @@ void ED_mask_draw_frames(Mask *mask, ARegion *ar, const int cfra, const int sfra unsigned int num_lines = BLI_listbase_count(&masklay->splines_shapes); if (num_lines > 0) { + /* Local coordinate visible rect inside region, to accommodate overlapping ui. */ + const rcti *rect_visible = ED_region_visible_rect(ar); + const int region_bottom = rect_visible->ymin; + uint pos = GPU_vertformat_attr_add( immVertexFormat(), "pos", GPU_COMP_I32, 2, GPU_FETCH_INT_TO_FLOAT); @@ -817,8 +822,8 @@ void ED_mask_draw_frames(Mask *mask, ARegion *ar, const int cfra, const int sfra /* draw_keyframe(i, CFRA, sfra, framelen, 1); */ int height = (frame == cfra) ? 22 : 10; int x = (frame - sfra) * framelen; -immVertex2i(pos, x, 0); -immVertex2i(pos, x, height); +immVertex2i(pos, x, region_bottom); +immVertex2i(pos, x, region_bottom + height * UI_DPI_FAC); } immEnd(); immUnbindProgram(); diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c index c068fbdf7cb..bf45fa24923 100644 --- a/source/blender/editors/screen/area.c +++ b/source/blender/editors/screen/area.c @@ -3337,13 +3337,17 @@ const rcti *ED_region_visible_rect(ARegion *ar) /* Cache display helpers */ -void ED_region_cache_draw_background(const ARegion *ar) +void ED_region_cache_draw_background(ARegion *ar) { + /* Local coordinate visible rect inside region, to accommodate overlapping ui. */ + const rcti *rect_visible = ED_region_visible_rect(ar); + const int region_bottom = rect_visible->ymin; + uint pos = GPU_vertformat_attr_add( immVertexFormat(), "pos", GPU_COMP_I32, 2, GPU_FETCH_INT_TO_FLOAT); immBindBuiltinProgram(GPU_SHADER_2D_UNIFORM_COLOR); immUniformColor4ub(128, 128, 255, 64); - immRecti(pos, 0, 0, ar->winx, 8 * UI_DPI_FAC); + immRecti(pos, 0, region_bottom, ar->winx, region_bottom + 8 * UI_DPI_FAC); immUnbindProgram(); } @@ -3373,9 +3377,13 @@ void ED_region_cache_draw_curfra_label(const int framenr, const float x, const f } void ED_region_cache_draw_cached_segments( -const ARegion *ar, const int num_segments, const int *points, const int
[Bf-blender-cvs] [81cc09b78a1] master: Merge branch 'blender-v2.81-release'
Commit: 81cc09b78a12bcbbe7552dd02f47010775fc8b62 Author: Philipp Oeser Date: Tue Oct 29 17:16:35 2019 +0100 Branches: master https://developer.blender.org/rB81cc09b78a12bcbbe7552dd02f47010775fc8b62 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [d45c7c997f1] blender-v2.81-release: Fix T71026: Outliner - Show Hierarchy (Home Hotkey) Not Working Correctly
Commit: d45c7c997f18d16cacd8e955e1a99b6bf521f637 Author: Philipp Oeser Date: Wed Oct 23 14:54:14 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rBd45c7c997f18d16cacd8e955e1a99b6bf521f637 Fix T71026: Outliner - Show Hierarchy (Home Hotkey) Not Working Correctly In 2.8, code would not enter the new 'Objects' and Collections' 'folders'. Maniphest Tasks: T71026 Differential Revision: https://developer.blender.org/D6123 === M source/blender/editors/space_outliner/outliner_edit.c === diff --git a/source/blender/editors/space_outliner/outliner_edit.c b/source/blender/editors/space_outliner/outliner_edit.c index c55140db46f..34bbf3a2a30 100644 --- a/source/blender/editors/space_outliner/outliner_edit.c +++ b/source/blender/editors/space_outliner/outliner_edit.c @@ -1600,7 +1600,11 @@ static void tree_element_show_hierarchy(Scene *scene, SpaceOutliner *soops, List for (te = lb->first; te; te = te->next) { tselem = TREESTORE(te); -if (tselem->type == 0) { +if (ELEM(tselem->type, + 0, + TSE_SCENE_OBJECTS_BASE, + TSE_VIEW_COLLECTION_BASE, + TSE_LAYER_COLLECTION)) { if (te->idcode == ID_SCE) { if (tselem->id != (ID *)scene) { tselem->flag |= TSE_CLOSED; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [84386c45d83] master: Merge branch 'blender-v2.81-release'
Commit: 84386c45d83ddc722e33a4bbf133943921229b86 Author: Philipp Oeser Date: Wed Oct 30 09:57:19 2019 +0100 Branches: master https://developer.blender.org/rB84386c45d83ddc722e33a4bbf133943921229b86 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ff7be963228] blender-v2.81-release: Toggle 'PLAY' <> 'PAUSE' icons for pausing preview rendering
Commit: ff7be963228c95a89bca3f75b291f50fa8b153e1 Author: Philipp Oeser Date: Wed Oct 23 11:16:47 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rBff7be963228c95a89bca3f75b291f50fa8b153e1 Toggle 'PLAY' <> 'PAUSE' icons for pausing preview rendering mentioned in T70974 Maniphest Tasks: T70974 Differential Revision: https://developer.blender.org/D6119 === M intern/cycles/blender/addon/ui.py === diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py index b2624b2aa81..4ff154d4bcd 100644 --- a/intern/cycles/blender/addon/ui.py +++ b/intern/cycles/blender/addon/ui.py @@ -2166,7 +2166,7 @@ def draw_pause(self, context): if view.shading.type == 'RENDERED': cscene = scene.cycles -layout.prop(cscene, "preview_pause", icon='PAUSE', text="") +layout.prop(cscene, "preview_pause", icon='PLAY' if cscene.preview_pause else 'PAUSE', text="") def get_panels(): ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [367def2f160] master: Merge branch 'blender-v2.81-release'
Commit: 367def2f16054217fb1c383ecfc10676710af822 Author: Philipp Oeser Date: Wed Oct 30 10:19:41 2019 +0100 Branches: master https://developer.blender.org/rB367def2f16054217fb1c383ecfc10676710af822 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [068c6a6f151] blender-v2.81-release: Fix T71182: Object Parenting - 'Without Inverse' option missing in menu
Commit: 068c6a6f1516bc7d25da7f33dff3181e323b432e Author: Philipp Oeser Date: Tue Oct 29 10:21:04 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB068c6a6f1516bc7d25da7f33dff3181e323b432e Fix T71182: Object Parenting - 'Without Inverse' option missing in menu Maniphest Tasks: T71182 Differential Revision: https://developer.blender.org/D6150 === M release/scripts/startup/bl_ui/space_view3d.py === diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index eab1abd279a..bfad70dcb49 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -2536,11 +2536,18 @@ class VIEW3D_MT_object_parent(Menu): def draw(self, _context): layout = self.layout +operator_context_default = layout.operator_context layout.operator_enum("object.parent_set", "type") layout.separator() +layout.operator_context = 'EXEC_DEFAULT' +layout.operator("object.parent_no_inverse_set") +layout.operator_context = operator_context_default + +layout.separator() + layout.operator_enum("object.parent_clear", "type") ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [8fe4d9c0029] master: Merge branch 'blender-v2.81-release'
Commit: 8fe4d9c002964301b139004daeea523cdbdb196e Author: Philipp Oeser Date: Wed Oct 30 14:19:05 2019 +0100 Branches: master https://developer.blender.org/rB8fe4d9c002964301b139004daeea523cdbdb196e Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [bb69e627106] blender-v2.81-release: Fix T68396: Unable to change any Collision input value after it has been keyframed
Commit: bb69e627106a6e7aa65c3534983aefbf1ac9605c Author: Philipp Oeser Date: Fri Oct 18 14:14:24 2019 +0200 Branches: blender-v2.81-release https://developer.blender.org/rBbb69e627106a6e7aa65c3534983aefbf1ac9605c Fix T68396: Unable to change any Collision input value after it has been keyframed 'rna_CollisionSettings_update' has a history of tagging ob for update: rB79312c1912b4 ID_RECALC_TRANSFORM |ID_RECALC_GEOMETRY | ID_RECALC_ANIMATION rBf90a2123eedc OB_RECALC_OB | OB_RECALC_DATA | OB_RECALC_TIME rBfaf1c9a4bb27 OB_RECALC_ALL rB7df35db1b136 OB_RECALC Since the meaning of OB_RECALC_TIME/ID_RECALC_ANIMATION changed a bit historically (from "please update my animation if the animation datablock is tagged for update" to "update animation of this datablock") this was now always overwriting user edit with animated values, making it impossible to change those values once animated. Thx @sergey for guidance! Maniphest Tasks: T68396 Differential Revision: https://developer.blender.org/D6113 === M source/blender/makesrna/intern/rna_object_force.c === diff --git a/source/blender/makesrna/intern/rna_object_force.c b/source/blender/makesrna/intern/rna_object_force.c index 87b14b56504..16d70e21ec2 100644 --- a/source/blender/makesrna/intern/rna_object_force.c +++ b/source/blender/makesrna/intern/rna_object_force.c @@ -798,7 +798,7 @@ static void rna_CollisionSettings_update(Main *UNUSED(bmain), { Object *ob = (Object *)ptr->owner_id; - DEG_id_tag_update(&ob->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY | ID_RECALC_ANIMATION); + DEG_id_tag_update(&ob->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_main_add_notifier(NC_OBJECT | ND_DRAW, ob); } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ea7e161e189] master: Merge branch 'blender-v2.81-release'
Commit: ea7e161e189dfd261692eba9ce5587dd2e71c287 Author: Philipp Oeser Date: Tue Nov 5 10:05:06 2019 +0100 Branches: master https://developer.blender.org/rBea7e161e189dfd261692eba9ce5587dd2e71c287 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [fe2b92d7893] blender-v2.81-release: Fix T55632: USE_DRAG_MULTINUM and USE_ALLSELECT not working well together
Commit: fe2b92d7893ea9d4bb4fabd68a30385a5260d80e Author: Philipp Oeser Date: Wed Nov 6 16:01:08 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rBfe2b92d7893ea9d4bb4fabd68a30385a5260d80e Fix T55632: USE_DRAG_MULTINUM and USE_ALLSELECT not working well together 'is_copy' was not set correctly on all uiButMultiState (it was done once for uiHandleButtonData), resulting in 'delta' being used on some indices of the array and not others in `ui_selectcontext_apply`. Maniphest Tasks: T55632 Differential Revision: https://developer.blender.org/D6201 === 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 e7d80306ecb..2d739899ae8 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -1086,6 +1086,9 @@ static void ui_multibut_add(uiHandleButtonData *data, uiBut *but) mbut_state = MEM_callocN(sizeof(*mbut_state), __func__); mbut_state->but = but; mbut_state->origvalue = ui_but_value_get(but); +# ifdef USE_ALLSELECT + mbut_state->select_others.is_copy = data->select_others.is_copy; +# endif BLI_linklist_prepend(&data->multi_data.mbuts, mbut_state); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [fb71bb991ba] master: Merge branch 'blender-v2.81-release'
Commit: fb71bb991ba3423294ff3dc225d1ffc95096a330 Author: Philipp Oeser Date: Fri Nov 8 14:18:04 2019 +0100 Branches: master https://developer.blender.org/rBfb71bb991ba3423294ff3dc225d1ffc95096a330 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [6900187092e] blender-v2.81-release: Fix T71372: view layer is not maintained when area is duplicated into new window
Commit: 6900187092e9b51fcc33b21aaf411695263a4578 Author: Philipp Oeser Date: Thu Nov 7 11:00:56 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB6900187092e9b51fcc33b21aaf411695263a4578 Fix T71372: view layer is not maintained when area is duplicated into new window Maniphest Tasks: T71372 Differential Revision: https://developer.blender.org/D6205 === M source/blender/editors/screen/screen_ops.c === diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c index cc1f53eabde..3c37b49002c 100644 --- a/source/blender/editors/screen/screen_ops.c +++ b/source/blender/editors/screen/screen_ops.c @@ -1353,6 +1353,8 @@ static int area_dupli_invoke(bContext *C, wmOperator *op, const wmEvent *event) newwin->scene = scene; + STRNCPY(newwin->view_layer_name, win->view_layer_name); + BKE_workspace_active_set(newwin->workspace_hook, workspace); /* allocs new screen and adds to newly created window, using window size */ layout_new = ED_workspace_layout_add( ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [31f8c9159d1] master: Merge branch 'blender-v2.81-release'
Commit: 31f8c9159d169652b3a5d0db91c2f0d80dbee658 Author: Philipp Oeser Date: Fri Nov 8 14:28:45 2019 +0100 Branches: master https://developer.blender.org/rB31f8c9159d169652b3a5d0db91c2f0d80dbee658 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [3b66d2ed21a] blender-v2.81-release: Fix T71405: Trying to Ctrl-C on many buttons crashes Blender
Commit: 3b66d2ed21a35036f8221d831f96556f85261db9 Author: Philipp Oeser Date: Thu Nov 7 17:53:05 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB3b66d2ed21a35036f8221d831f96556f85261db9 Fix T71405: Trying to Ctrl-C on many buttons crashes Blender Usually Ctrl+C copies the operator name to the clipboard ["bpy.ops.material.new()", "bpy.ops.object.material_slot_remove()"] Crash happens for all buttons of UI_BTYPE_BUT without associated operator [some are defined with callbacks only, often these are created with e.g uiDefIconBut (instead of e.g. uiDefIconButO)] Other examples that crash with Ctrl+C: - animation decorators next to animatable properties - button to show a modifier texture in the texture tab - ... 2.79 survived here (result in the clipboard was just not changed hitting Ctrl+C on these buttons), this is what happens with this patch as well. Maniphest Tasks: T71405 Differential Revision: https://developer.blender.org/D6208 === 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 2d739899ae8..0b4adb33b1c 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -2528,6 +2528,9 @@ static void ui_but_copy(bContext *C, uiBut *but, const bool copy_array) break; case UI_BTYPE_BUT: + if (!but->optype) { +break; + } ui_but_copy_operator(C, but, buf, buf_max_len); is_buf_set = true; break; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [f47c469e900] master: Merge branch 'blender-v2.81-release'
Commit: f47c469e900ba57a85397028e607eb54f0fc42a6 Author: Philipp Oeser Date: Fri Nov 8 14:38:43 2019 +0100 Branches: master https://developer.blender.org/rBf47c469e900ba57a85397028e607eb54f0fc42a6 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [33166107857] blender-v2.81-release: Revert "Fix T71126: add old hotkeys to set start/end frame in the timeline to"
Commit: 331661078572200cde66b760d5346bfe10b8ef4d Author: Philipp Oeser Date: Mon Nov 11 09:59:41 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB331661078572200cde66b760d5346bfe10b8ef4d Revert "Fix T71126: add old hotkeys to set start/end frame in the timeline to" This caused T71483. Having timeline and dopesheet merged in 2.8 makes using S/E keys in timeline not work well. 2.7x keymap needs to fit with 2.8x internals, so probably 2.7x keymap will have to live with Ctrl+Home / Ctrl+End here. This reverts commit 4fbcbbfb967cb0fdff11dfc1646a1c55bca96f1d. === M release/scripts/presets/keyconfig/keymap_data/blender_default.py === diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py index 8a86ece53ce..6ad0ccf8a5f 100644 --- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py +++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py @@ -2855,17 +2855,6 @@ def km_animation(params): {"items": items}, ) -if not params.legacy: -items.extend([ -("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), -("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), -]) -else: -items.extend([ -("anim.start_frame_set", {"type": 'S', "value": 'PRESS'}, None), -("anim.end_frame_set", {"type": 'E', "value": 'PRESS'}, None), -]) - items.extend([ # Frame management. ("wm.context_toggle", {"type": 'T', "value": 'PRESS', "ctrl": True}, @@ -2873,6 +2862,8 @@ def km_animation(params): # Preview range. ("anim.previewrange_set", {"type": 'P', "value": 'PRESS'}, None), ("anim.previewrange_clear", {"type": 'P', "value": 'PRESS', "alt": True}, None), +("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), +("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), ]) if params.select_mouse == 'LEFTMOUSE' and not params.legacy: ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [f44f09534b7] master: Merge branch 'blender-v2.81-release'
Commit: f44f09534b77d2d6dde3b43fd6c1a6dfff0834b1 Author: Philipp Oeser Date: Mon Nov 11 10:07:37 2019 +0100 Branches: master https://developer.blender.org/rBf44f09534b77d2d6dde3b43fd6c1a6dfff0834b1 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [a97cc5389ae] blender-v2.81-release: Fix T71452: instance collection to scene from outliner not incrementing collection usercount
Commit: a97cc5389ae8d9ca8cc76a959f7edf4d38c50b88 Author: Philipp Oeser Date: Mon Nov 11 11:49:29 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rBa97cc5389ae8d9ca8cc76a959f7edf4d38c50b88 Fix T71452: instance collection to scene from outliner not incrementing collection usercount Maniphest Tasks: T71452 Differential Revision: https://developer.blender.org/D6222 === M source/blender/editors/space_outliner/outliner_collections.c === diff --git a/source/blender/editors/space_outliner/outliner_collections.c b/source/blender/editors/space_outliner/outliner_collections.c index 03606282fcd..183a96d1325 100644 --- a/source/blender/editors/space_outliner/outliner_collections.c +++ b/source/blender/editors/space_outliner/outliner_collections.c @@ -676,6 +676,7 @@ static int collection_instance_exec(bContext *C, wmOperator *UNUSED(op)) ob->instance_collection = collection; ob->transflag |= OB_DUPLICOLLECTION; id_lib_extern(&collection->id); +id_us_plus(&collection->id); } BLI_gset_free(data.collections_to_edit, NULL); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [37bfb1fe178] master: Merge branch 'blender-v2.81-release'
Commit: 37bfb1fe17840fcdf90704cbee5904ac2f6b788c Author: Philipp Oeser Date: Mon Nov 11 17:38:07 2019 +0100 Branches: master https://developer.blender.org/rB37bfb1fe17840fcdf90704cbee5904ac2f6b788c Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [65bc5041c35] blender-v2.81-release: Fix T71508: wrong gravity settings in scene defaults
Commit: 65bc5041c35a086ce54827ad9c9f5caa028693e1 Author: Philipp Oeser Date: Tue Nov 12 10:49:25 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB65bc5041c35a086ce54827ad9c9f5caa028693e1 Fix T71508: wrong gravity settings in scene defaults Typo in rBf5e0dfe59c7e. Showed when creating a new default scene. Maniphest Tasks: T71508 Differential Revision: https://developer.blender.org/D6229 === M source/blender/makesdna/DNA_scene_defaults.h === diff --git a/source/blender/makesdna/DNA_scene_defaults.h b/source/blender/makesdna/DNA_scene_defaults.h index 8d77e57c959..0b0cb8b14f3 100644 --- a/source/blender/makesdna/DNA_scene_defaults.h +++ b/source/blender/makesdna/DNA_scene_defaults.h @@ -171,7 +171,7 @@ #define _DNA_DEFAULT_PhysicsSettings \ { \ -.gravity = {0.0f, 0.0f -9.81f}, \ +.gravity = {0.0f, 0.0f, -9.81f}, \ .flag = PHYS_GLOBAL_GRAVITY, \ } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5b5dccbc80f] master: Merge branch 'blender-v2.81-release'
Commit: 5b5dccbc80f792feed7023665a4cb10971cb1766 Author: Philipp Oeser Date: Tue Nov 12 12:24:19 2019 +0100 Branches: master https://developer.blender.org/rB5b5dccbc80f792feed7023665a4cb10971cb1766 Merge branch 'blender-v2.81-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [0f44af99e61] temp-lanpr-cleanup2: Fix T55632: USE_DRAG_MULTINUM and USE_ALLSELECT not working well together
Commit: 0f44af99e61ea1c404af354240e2fd667d0063ec Author: Philipp Oeser Date: Wed Nov 6 16:01:08 2019 +0100 Branches: temp-lanpr-cleanup2 https://developer.blender.org/rB0f44af99e61ea1c404af354240e2fd667d0063ec Fix T55632: USE_DRAG_MULTINUM and USE_ALLSELECT not working well together 'is_copy' was not set correctly on all uiButMultiState (it was done once for uiHandleButtonData), resulting in 'delta' being used on some indices of the array and not others in `ui_selectcontext_apply`. Maniphest Tasks: T55632 Differential Revision: https://developer.blender.org/D6201 === 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 e7d80306ecb..2d739899ae8 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -1086,6 +1086,9 @@ static void ui_multibut_add(uiHandleButtonData *data, uiBut *but) mbut_state = MEM_callocN(sizeof(*mbut_state), __func__); mbut_state->but = but; mbut_state->origvalue = ui_but_value_get(but); +# ifdef USE_ALLSELECT + mbut_state->select_others.is_copy = data->select_others.is_copy; +# endif BLI_linklist_prepend(&data->multi_data.mbuts, mbut_state); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ce958fee797] temp-lanpr-cleanup2: Fix T71405: Trying to Ctrl-C on many buttons crashes Blender
Commit: ce958fee797dab7419ee9a121fdca41568276c7c Author: Philipp Oeser Date: Thu Nov 7 17:53:05 2019 +0100 Branches: temp-lanpr-cleanup2 https://developer.blender.org/rBce958fee797dab7419ee9a121fdca41568276c7c Fix T71405: Trying to Ctrl-C on many buttons crashes Blender Usually Ctrl+C copies the operator name to the clipboard ["bpy.ops.material.new()", "bpy.ops.object.material_slot_remove()"] Crash happens for all buttons of UI_BTYPE_BUT without associated operator [some are defined with callbacks only, often these are created with e.g uiDefIconBut (instead of e.g. uiDefIconButO)] Other examples that crash with Ctrl+C: - animation decorators next to animatable properties - button to show a modifier texture in the texture tab - ... 2.79 survived here (result in the clipboard was just not changed hitting Ctrl+C on these buttons), this is what happens with this patch as well. Maniphest Tasks: T71405 Differential Revision: https://developer.blender.org/D6208 === 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 2d739899ae8..0b4adb33b1c 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -2528,6 +2528,9 @@ static void ui_but_copy(bContext *C, uiBut *but, const bool copy_array) break; case UI_BTYPE_BUT: + if (!but->optype) { +break; + } ui_but_copy_operator(C, but, buf, buf_max_len); is_buf_set = true; break; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [7ed3cea9c7b] temp-lanpr-cleanup2: Fix T71372: view layer is not maintained when area is duplicated into new window
Commit: 7ed3cea9c7b1025c869666869c25c76050c5d441 Author: Philipp Oeser Date: Thu Nov 7 11:00:56 2019 +0100 Branches: temp-lanpr-cleanup2 https://developer.blender.org/rB7ed3cea9c7b1025c869666869c25c76050c5d441 Fix T71372: view layer is not maintained when area is duplicated into new window Maniphest Tasks: T71372 Differential Revision: https://developer.blender.org/D6205 === M source/blender/editors/screen/screen_ops.c === diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c index c5e7d578e71..a5bb9f77052 100644 --- a/source/blender/editors/screen/screen_ops.c +++ b/source/blender/editors/screen/screen_ops.c @@ -1353,6 +1353,8 @@ static int area_dupli_invoke(bContext *C, wmOperator *op, const wmEvent *event) newwin->scene = scene; + STRNCPY(newwin->view_layer_name, win->view_layer_name); + BKE_workspace_active_set(newwin->workspace_hook, workspace); /* allocs new screen and adds to newly created window, using window size */ layout_new = ED_workspace_layout_add( ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [68a3bdae882] temp-lanpr-cleanup2: Revert "Fix T71126: add old hotkeys to set start/end frame in the timeline to"
Commit: 68a3bdae8828c67c6ab43bbd7a1398fec84d0986 Author: Philipp Oeser Date: Mon Nov 11 09:59:41 2019 +0100 Branches: temp-lanpr-cleanup2 https://developer.blender.org/rB68a3bdae8828c67c6ab43bbd7a1398fec84d0986 Revert "Fix T71126: add old hotkeys to set start/end frame in the timeline to" This caused T71483. Having timeline and dopesheet merged in 2.8 makes using S/E keys in timeline not work well. 2.7x keymap needs to fit with 2.8x internals, so probably 2.7x keymap will have to live with Ctrl+Home / Ctrl+End here. This reverts commit 4fbcbbfb967cb0fdff11dfc1646a1c55bca96f1d. === M release/scripts/presets/keyconfig/keymap_data/blender_default.py === diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py index c196acfcebf..b2ce3c8e608 100644 --- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py +++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py @@ -2859,17 +2859,6 @@ def km_animation(params): {"items": items}, ) -if not params.legacy: -items.extend([ -("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), -("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), -]) -else: -items.extend([ -("anim.start_frame_set", {"type": 'S', "value": 'PRESS'}, None), -("anim.end_frame_set", {"type": 'E', "value": 'PRESS'}, None), -]) - items.extend([ # Frame management. ("wm.context_toggle", {"type": 'T', "value": 'PRESS', "ctrl": True}, @@ -2877,6 +2866,8 @@ def km_animation(params): # Preview range. ("anim.previewrange_set", {"type": 'P', "value": 'PRESS'}, None), ("anim.previewrange_clear", {"type": 'P', "value": 'PRESS', "alt": True}, None), +("anim.start_frame_set", {"type": 'HOME', "value": 'PRESS', "ctrl": True}, None), +("anim.end_frame_set", {"type": 'END', "value": 'PRESS', "ctrl": True}, None), ]) if params.select_mouse == 'LEFTMOUSE' and not params.legacy: ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [e5b788bad8b] master: Fix T68191: Make-instances-real doesn't select the new instances
Commit: e5b788bad8bcb526fba273915290ef3abc9b24d2 Author: Philipp Oeser Date: Tue Nov 12 15:25:32 2019 +0100 Branches: master https://developer.blender.org/rBe5b788bad8bcb526fba273915290ef3abc9b24d2 Fix T68191: Make-instances-real doesn't select the new instances 2.79 also did this [select the new instances] which was useful. 2.79 also kept the instancer selected [this patch deselects] Reviewed By: mont29 Maniphest Tasks: T68191 Differential Revision: https://developer.blender.org/D6233 === M source/blender/editors/object/object_add.c === diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index b15a245c0f2..f27e525449d 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -1803,6 +1803,9 @@ static void make_object_duplilist_real(bContext *C, base_dst = BKE_view_layer_base_find(view_layer, ob_dst); BLI_assert(base_dst != NULL); +ED_object_base_select(base_dst, BA_SELECT); +DEG_id_tag_update(&ob_dst->id, ID_RECALC_SELECT); + BKE_scene_object_base_flag_sync_from_base(base_dst); /* make sure apply works */ @@ -1938,6 +1941,9 @@ static void make_object_duplilist_real(bContext *C, base->object->instance_collection = NULL; } + ED_object_base_select(base, BA_DESELECT); + DEG_id_tag_update(&base->object->id, ID_RECALC_SELECT); + BLI_ghash_free(dupli_gh, NULL, NULL); if (parent_gh) { BLI_ghash_free(parent_gh, NULL, NULL); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [08588d06e86] master: Fix T71554: 'Hide Unselected' not working for certain selections
Commit: 08588d06e86a096c51ac70da53e74bab67f6a036 Author: Philipp Oeser Date: Thu Nov 14 12:31:36 2019 +0100 Branches: master https://developer.blender.org/rB08588d06e86a096c51ac70da53e74bab67f6a036 Fix T71554: 'Hide Unselected' not working for certain selections rBc6cbcf83d015 caused to early out e.g when not all faces were selected (but surrounding faces were, so implicitly all vertices were selected). Now take (mixed also) selection mode into account. Maniphest Tasks: T71554 Differential Revision: https://developer.blender.org/D6254 === M source/blender/editors/mesh/editmesh_tools.c === diff --git a/source/blender/editors/mesh/editmesh_tools.c b/source/blender/editors/mesh/editmesh_tools.c index eb50babf395..f5ff3d0655e 100644 --- a/source/blender/editors/mesh/editmesh_tools.c +++ b/source/blender/editors/mesh/editmesh_tools.c @@ -2094,8 +2094,20 @@ static int edbm_hide_exec(bContext *C, wmOperator *op) BMesh *bm = em->bm; if (unselected) { - if (bm->totvertsel == bm->totvert) { -continue; + if (em->selectmode & SCE_SELECT_VERTEX) { +if (bm->totvertsel == bm->totvert) { + continue; +} + } + else if (em->selectmode & SCE_SELECT_EDGE) { +if (bm->totedgesel == bm->totedge) { + continue; +} + } + else if (em->selectmode & SCE_SELECT_FACE) { +if (bm->totfacesel == bm->totface) { + continue; +} } } else { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [f1518d0f28f] master: Fix T71412: Add transform component to deforming modifier
Commit: f1518d0f28fec4355d4c1e9a8d7dc22e9031be1c Author: Philipp Oeser Date: Thu Nov 21 12:20:49 2019 +0100 Branches: master https://developer.blender.org/rBf1518d0f28fec4355d4c1e9a8d7dc22e9031be1c Fix T71412: Add transform component to deforming modifier Dynamically bound mesh deform modifiers failed to update the viewport on object transformation of deformer. The TODO by Sergey, which suggested adding the transform component to the depsgraph, was already there, and worked to fix T71412. === M source/blender/modifiers/intern/MOD_meshdeform.c === diff --git a/source/blender/modifiers/intern/MOD_meshdeform.c b/source/blender/modifiers/intern/MOD_meshdeform.c index 408e38f43ab..21fdc010a1d 100644 --- a/source/blender/modifiers/intern/MOD_meshdeform.c +++ b/source/blender/modifiers/intern/MOD_meshdeform.c @@ -158,7 +158,7 @@ static void updateDepsgraph(ModifierData *md, const ModifierUpdateDepsgraphConte { MeshDeformModifierData *mmd = (MeshDeformModifierData *)md; if (mmd->object != NULL) { -/* TODO(sergey): Do we need transform component here? */ +DEG_add_object_relation(ctx->node, mmd->object, DEG_OB_COMP_TRANSFORM, "Mesh Deform Modifier"); DEG_add_object_relation(ctx->node, mmd->object, DEG_OB_COMP_GEOMETRY, "Mesh Deform Modifier"); } } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [355905cb027] master: Fix T67873: View Selected in Graph Editor (Only Selected Curve Keyframes) takes hidden keys into account when calculating zoom
Commit: 355905cb0278c368059fdecef8735b731d97b97c Author: Philipp Oeser Date: Tue Nov 12 19:36:36 2019 +0100 Branches: master https://developer.blender.org/rB355905cb0278c368059fdecef8735b731d97b97c Fix T67873: View Selected in Graph Editor (Only Selected Curve Keyframes) takes hidden keys into account when calculating zoom Note that with the 'View Only Selected Curve Keyframes' option enabled, it is also possible to select [box/circle/lasso] hidden/non-visible keyframes. Think this should never happen, but that is for a later commit (along some deduplication of animdata filtering code) Reviewed By: Severin, Sybren Maniphest Tasks: T67873 Differential Revision: https://developer.blender.org/D6237 === M source/blender/editors/space_graph/graph_edit.c === diff --git a/source/blender/editors/space_graph/graph_edit.c b/source/blender/editors/space_graph/graph_edit.c index 1a488118403..e7a25f6c659 100644 --- a/source/blender/editors/space_graph/graph_edit.c +++ b/source/blender/editors/space_graph/graph_edit.c @@ -85,6 +85,7 @@ void get_graph_keyframe_extents(bAnimContext *ac, const bool include_handles) { Scene *scene = ac->scene; + SpaceGraph *sipo = (SpaceGraph *)ac->sl; ListBase anim_data = {NULL, NULL}; bAnimListElem *ale; @@ -92,6 +93,10 @@ void get_graph_keyframe_extents(bAnimContext *ac, /* get data to filter, from Dopesheet */ filter = (ANIMFILTER_DATA_VISIBLE | ANIMFILTER_CURVE_VISIBLE | ANIMFILTER_NODUPLIS); + if (sipo->flag & SIPO_SELCUVERTSONLY) { +filter |= ANIMFILTER_SEL; + } + ANIM_animdata_filter(ac, &anim_data, filter, ac->data, ac->datatype); /* set large values initial values that will be easy to override */ ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cee94789850] master: Fix T68499: weight paint gradient is broken with generative modifiers
Commit: cee94789850e99fc68dd398e7d1abd67f0e2b85d Author: Philipp Oeser Date: Wed Nov 20 21:08:42 2019 +0100 Branches: master https://developer.blender.org/rBcee94789850e99fc68dd398e7d1abd67f0e2b85d Fix T68499: weight paint gradient is broken with generative modifiers Caused by rBac442da4a14d. Above commit tweaked the logic to not only early out, but also set the WPGradient_vertStore screen coord to FLT_MAX in case this original index was visited before [gradientVertInit__mapFunc]. For generative modifiers though, we might get here multiple times for the same orig index, resulting in a valid orig index being made invalid for gradientVertUpdate__mapFunc [which would early out in case of FLT_MAX]. Restored original logic, so that setting FLT_MAX only really happens when it should: when ED_view3d_project_float_object fails... Maniphest Tasks: T68499 Differential Revision: https://developer.blender.org/D6282 === M source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c === diff --git a/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c b/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c index f0fe2d4ebdc..ae4ef59597b 100644 --- a/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c +++ b/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c @@ -665,13 +665,15 @@ static void gradientVertInit__mapFunc(void *userData, * the screen coords of the verts need to be cached because * updating the mesh may move them about (entering feedback loop) */ if (BLI_BITMAP_TEST(grad_data->vert_visit, index)) { -copy_v2_fl(vs->sco, FLT_MAX); +/* Do not copy FLT_MAX here, for generative modifiers we are getting here + * multiple times with the same orig index. */ return; } if (ED_view3d_project_float_object( grad_data->ar, co, vs->sco, V3D_PROJ_TEST_CLIP_BB | V3D_PROJ_TEST_CLIP_NEAR) != V3D_PROJ_RET_OK) { +copy_v2_fl(vs->sco, FLT_MAX); return; } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cfb7f508ce7] master: Fix T69332: 'Reset to Default Value' on a custom string property crashes
Commit: cfb7f508ce76b8dea83da555e67813c161a6869d Author: Philipp Oeser Date: Thu Nov 21 13:58:56 2019 +0100 Branches: master https://developer.blender.org/rBcfb7f508ce76b8dea83da555e67813c161a6869d Fix T69332: 'Reset to Default Value' on a custom string property crashes Thx @campbellbarton for the heads up! Maniphest Tasks: T69332 Differential Revision: https://developer.blender.org/D6284 === M source/blender/makesrna/intern/rna_access.c === diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index aeb6d528cdb..78cd99837c3 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -3604,7 +3604,7 @@ char *RNA_property_string_get_default_alloc(PointerRNA *ptr, /* this is the length without \0 terminator */ int RNA_property_string_default_length(PointerRNA *UNUSED(ptr), PropertyRNA *prop) { - StringPropertyRNA *sprop = (StringPropertyRNA *)prop; + StringPropertyRNA *sprop = (StringPropertyRNA *)rna_ensure_property(prop); BLI_assert(RNA_property_type(prop) == PROP_STRING); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [3fa2b85bfd6] master: Fix T71864: Broken 'Select' > 'More' in face mode in UV Editor
Commit: 3fa2b85bfd672156f7019252d00f8859c1bd5b22 Author: Philipp Oeser Date: Wed Nov 27 11:06:49 2019 +0100 Branches: master https://developer.blender.org/rB3fa2b85bfd672156f7019252d00f8859c1bd5b22 Fix T71864: Broken 'Select' > 'More' in face mode in UV Editor Caused by rBeead6a604602. Above commit didnt account for different element types being tagged (face select mode tagged faces, others tagged loops) and always flushed from loops. Now restore to flush from faces if we are in face select mode. Maniphest Tasks: T71864 Differential Revision: https://developer.blender.org/D6315 === M source/blender/editors/uvedit/uvedit_ops.c === diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c index 0d258ba542b..eb3d47ba1b5 100644 --- a/source/blender/editors/uvedit/uvedit_ops.c +++ b/source/blender/editors/uvedit/uvedit_ops.c @@ -1478,6 +1478,8 @@ static int uv_select_more_less(bContext *C, const bool select) Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs( view_layer, ((View3D *)NULL), &objects_len); + const bool is_uv_face_selectmode = (ts->uv_selectmode == UV_SELECT_FACE); + for (uint ob_index = 0; ob_index < objects_len; ob_index++) { Object *obedit = objects[ob_index]; BMEditMesh *em = BKE_editmesh_from_object(obedit); @@ -1499,7 +1501,7 @@ static int uv_select_more_less(bContext *C, const bool select) continue; } -if (ts->uv_selectmode == UV_SELECT_FACE) { +if (is_uv_face_selectmode) { /* clear tags */ BM_mesh_elem_hflag_disable_all(em->bm, BM_FACE, BM_ELEM_TAG, false); @@ -1562,8 +1564,14 @@ static int uv_select_more_less(bContext *C, const bool select) } if (changed) { - /* Select tagged loops. */ - uv_select_flush_from_tag_loop(sima, scene, obedit, select); + if (is_uv_face_selectmode) { +/* Select tagged faces. */ +uv_select_flush_from_tag_face(sima, scene, obedit, select); + } + else { +/* Select tagged loops. */ +uv_select_flush_from_tag_loop(sima, scene, obedit, select); + } DEG_id_tag_update(obedit->data, ID_RECALC_SELECT); WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data); } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [6992fc0b3bf] master: Add 'EDBM_selectmode_disable_multi' and use in knifeproject
Commit: 6992fc0b3bf85e985169157b2e7ced1e1ed7fcdf Author: Philipp Oeser Date: Wed Nov 27 15:02:41 2019 +0100 Branches: master https://developer.blender.org/rB6992fc0b3bf85e985169157b2e7ced1e1ed7fcdf Add 'EDBM_selectmode_disable_multi' and use in knifeproject As a followup to rB6f4e595e9ba9 and as per @campbellbarton suggestion, this adds EDBM_selectmode_disable_multi, similar to EDBM_mesh_deselect_all_multi & EDBM_mesh_deselect_all, so other similar uses don't need to be done in a loop. Also, selected_objects isn't a reliable way to handle this case - since objects can be in edit-mode & not selected, use BKE_view_layer_array_from_bases_in_edit_mode_unique_data instead Differential Revision: https://developer.blender.org/D6317 === M source/blender/editors/include/ED_mesh.h M source/blender/editors/mesh/editmesh_knife_project.c M source/blender/editors/mesh/editmesh_select.c === diff --git a/source/blender/editors/include/ED_mesh.h b/source/blender/editors/include/ED_mesh.h index fc7b0d8be8f..835e1b4e26f 100644 --- a/source/blender/editors/include/ED_mesh.h +++ b/source/blender/editors/include/ED_mesh.h @@ -236,6 +236,14 @@ void em_setup_viewcontext(struct bContext *C, struct ViewContext *vc); /* rename bool EDBM_mesh_deselect_all_multi_ex(struct Base **bases, const uint bases_len); bool EDBM_mesh_deselect_all_multi(struct bContext *C); +bool EDBM_selectmode_disable_multi_ex(struct Scene *scene, + struct Base **bases, + const uint bases_len, + const short selectmode_disable, + const short selectmode_fallback); +bool EDBM_selectmode_disable_multi(struct bContext *C, + const short selectmode_disable, + const short selectmode_fallback); /* editmesh_preselect_edgering.c */ struct EditMesh_PreSelEdgeRing; diff --git a/source/blender/editors/mesh/editmesh_knife_project.c b/source/blender/editors/mesh/editmesh_knife_project.c index a709bd010aa..ebd1e62e596 100644 --- a/source/blender/editors/mesh/editmesh_knife_project.c +++ b/source/blender/editors/mesh/editmesh_knife_project.c @@ -22,7 +22,6 @@ */ #include "DNA_curve_types.h" -#include "DNA_mesh_types.h" #include "DNA_object_types.h" #include "BLI_math.h" @@ -143,21 +142,7 @@ static int knifeproject_exec(bContext *C, wmOperator *op) /* select only tagged faces */ BM_mesh_elem_hflag_disable_all(em->bm, BM_VERT | BM_EDGE | BM_FACE, BM_ELEM_SELECT, false); -CTX_DATA_BEGIN (C, Object *, ob, selected_objects) { - if (ob->type == OB_MESH) { -Mesh *me = (Mesh *)ob->data; -BMEditMesh *embm = me->edit_mesh; -if (embm) { - /* not essential, but switch out of vertex mode since the - * selected regions wont be nicely isolated after flushing. - * note: call after de-select to avoid selection flushing. - * note: do this on all participating meshes so this is in sync - * e.g. for later selection picking, see T68852.*/ - EDBM_selectmode_disable(scene, embm, SCE_SELECT_VERTEX, SCE_SELECT_EDGE); -} - } -} -CTX_DATA_END; +EDBM_selectmode_disable_multi(C, SCE_SELECT_VERTEX, SCE_SELECT_EDGE); BM_mesh_elem_hflag_enable_test(em->bm, BM_FACE, BM_ELEM_SELECT, true, false, BM_ELEM_TAG); diff --git a/source/blender/editors/mesh/editmesh_select.c b/source/blender/editors/mesh/editmesh_select.c index 7955ccc0977..40d57af97aa 100644 --- a/source/blender/editors/mesh/editmesh_select.c +++ b/source/blender/editors/mesh/editmesh_select.c @@ -2653,6 +2653,41 @@ bool EDBM_mesh_deselect_all_multi(struct bContext *C) return changed_multi; } +bool EDBM_selectmode_disable_multi_ex(Scene *scene, + struct Base **bases, + const uint bases_len, + const short selectmode_disable, + const short selectmode_fallback) +{ + bool changed_multi = false; + for (uint base_index = 0; base_index < bases_len; base_index++) { +Base *base_iter = bases[base_index]; +Object *ob_iter = base_iter->object; +BMEditMesh *em_iter = BKE_editmesh_from_object(ob_iter); + +EDBM_selectmode_disable(scene, em_iter, selectmode_disable, selectmode_fallback); +changed_multi = true; + } + return changed_multi; +} + +bool EDBM_selectmode_disable_multi(struct bContext *C, + const short selectmode_disable, + const short selectmode_fallback) +{ + Depsgraph *depsgraph = CTX_d
[Bf-blender-cvs] [60e817693ce] blender-v2.81-release: Fix T69332: 'Reset to Default Value' on a custom string property crashes
Commit: 60e817693ce707842dc8521a6ee94ce1778e6372 Author: Philipp Oeser Date: Thu Nov 21 13:58:56 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rB60e817693ce707842dc8521a6ee94ce1778e6372 Fix T69332: 'Reset to Default Value' on a custom string property crashes Thx @campbellbarton for the heads up! Maniphest Tasks: T69332 Differential Revision: https://developer.blender.org/D6284 === M source/blender/makesrna/intern/rna_access.c === diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index aeb6d528cdb..78cd99837c3 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -3604,7 +3604,7 @@ char *RNA_property_string_get_default_alloc(PointerRNA *ptr, /* this is the length without \0 terminator */ int RNA_property_string_default_length(PointerRNA *UNUSED(ptr), PropertyRNA *prop) { - StringPropertyRNA *sprop = (StringPropertyRNA *)prop; + StringPropertyRNA *sprop = (StringPropertyRNA *)rna_ensure_property(prop); BLI_assert(RNA_property_type(prop) == PROP_STRING); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [bdfcee347eb] blender-v2.81-release: Fix T71864: Broken 'Select' > 'More' in face mode in UV Editor
Commit: bdfcee347ebe26cda5b5d51ce6006a6766e97842 Author: Philipp Oeser Date: Wed Nov 27 11:06:49 2019 +0100 Branches: blender-v2.81-release https://developer.blender.org/rBbdfcee347ebe26cda5b5d51ce6006a6766e97842 Fix T71864: Broken 'Select' > 'More' in face mode in UV Editor Caused by rBeead6a604602. Above commit didnt account for different element types being tagged (face select mode tagged faces, others tagged loops) and always flushed from loops. Now restore to flush from faces if we are in face select mode. Maniphest Tasks: T71864 Differential Revision: https://developer.blender.org/D6315 === M source/blender/editors/uvedit/uvedit_ops.c === diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c index 0d258ba542b..eb3d47ba1b5 100644 --- a/source/blender/editors/uvedit/uvedit_ops.c +++ b/source/blender/editors/uvedit/uvedit_ops.c @@ -1478,6 +1478,8 @@ static int uv_select_more_less(bContext *C, const bool select) Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs( view_layer, ((View3D *)NULL), &objects_len); + const bool is_uv_face_selectmode = (ts->uv_selectmode == UV_SELECT_FACE); + for (uint ob_index = 0; ob_index < objects_len; ob_index++) { Object *obedit = objects[ob_index]; BMEditMesh *em = BKE_editmesh_from_object(obedit); @@ -1499,7 +1501,7 @@ static int uv_select_more_less(bContext *C, const bool select) continue; } -if (ts->uv_selectmode == UV_SELECT_FACE) { +if (is_uv_face_selectmode) { /* clear tags */ BM_mesh_elem_hflag_disable_all(em->bm, BM_FACE, BM_ELEM_TAG, false); @@ -1562,8 +1564,14 @@ static int uv_select_more_less(bContext *C, const bool select) } if (changed) { - /* Select tagged loops. */ - uv_select_flush_from_tag_loop(sima, scene, obedit, select); + if (is_uv_face_selectmode) { +/* Select tagged faces. */ +uv_select_flush_from_tag_face(sima, scene, obedit, select); + } + else { +/* Select tagged loops. */ +uv_select_flush_from_tag_loop(sima, scene, obedit, select); + } DEG_id_tag_update(obedit->data, ID_RECALC_SELECT); WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data); } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [029a714fc72] master: Fix T75234: Saving UDIM tiled texture as OpenEXR saves only the first tile
Commit: 029a714fc72d79a4dc8d80c3397c308112a7fea9 Author: Philipp Oeser Date: Tue Mar 31 17:51:50 2020 +0200 Branches: master https://developer.blender.org/rB029a714fc72d79a4dc8d80c3397c308112a7fea9 Fix T75234: Saving UDIM tiled texture as OpenEXR saves only the first tile This happened when the UDIM tiled image needed to be colormanaged, so - when you set up the image as sRGB, then save as EXR/HDR/... - other way around as well: when you set up the images as Linear then save as PNG/JPG/... Reason being that for UDIM tiled images, `image_save_single` is called multiple times [once for each tile] and everytime `image_save_post` will fire the `IMA_SIGNAL_COLORMANAGE` signal which clears the cache if any of the above two is the case. Without the cache, the next tiles cannot be saved. Now determine if the colorspace changed from `image_save_single`/'image_save_post' and only fire IMA_SIGNAL_COLORMANAGE once from BKE_image_save in the end. (thx @brecht for suggesting this alternative to the original fix) Maniphest Tasks: T75234 Differential Revision: https://developer.blender.org/D7296 === M source/blender/blenkernel/intern/image_save.c === diff --git a/source/blender/blenkernel/intern/image_save.c b/source/blender/blenkernel/intern/image_save.c index bd570c9688b..b2e0f234f1e 100644 --- a/source/blender/blenkernel/intern/image_save.c +++ b/source/blender/blenkernel/intern/image_save.c @@ -54,13 +54,13 @@ void BKE_image_save_options_init(ImageSaveOptions *opts, Main *bmain, Scene *sce } static void image_save_post(ReportList *reports, -Main *bmain, Image *ima, ImBuf *ibuf, int ok, ImageSaveOptions *opts, int save_copy, -const char *filepath) +const char *filepath, +bool *r_colorspace_changed) { if (!ok) { BKE_reportf(reports, RPT_ERROR, "Could not write image: %s", strerror(errno)); @@ -114,7 +114,7 @@ static void image_save_post(ReportList *reports, IMB_colormanagement_colorspace_from_ibuf_ftype(&ima->colorspace_settings, ibuf); if (!BKE_color_managed_colorspace_settings_equals(&old_colorspace_settings, &ima->colorspace_settings)) { -BKE_image_signal(bmain, ima, NULL, IMA_SIGNAL_COLORMANAGE); +*r_colorspace_changed = true; } } @@ -138,8 +138,11 @@ static void imbuf_save_post(ImBuf *ibuf, ImBuf *colormanaged_ibuf) * \note ``ima->name`` and ``ibuf->name`` should end up the same. * \note for multiview the first ``ibuf`` is important to get the settings. */ -static bool image_save_single( -ReportList *reports, Main *bmain, Image *ima, ImageUser *iuser, ImageSaveOptions *opts) +static bool image_save_single(ReportList *reports, + Image *ima, + ImageUser *iuser, + ImageSaveOptions *opts, + bool *r_colorspace_changed) { void *lock; ImBuf *ibuf = BKE_image_acquire_ibuf(ima, iuser, &lock); @@ -223,7 +226,7 @@ static bool image_save_single( if (imf->views_format == R_IMF_VIEWS_MULTIVIEW && is_exr_rr) { /* save render result */ ok = RE_WriteRenderResult(reports, rr, opts->filepath, imf, NULL, layer); -image_save_post(reports, bmain, ima, ibuf, ok, opts, true, opts->filepath); +image_save_post(reports, ima, ibuf, ok, opts, true, opts->filepath, r_colorspace_changed); BKE_image_release_ibuf(ima, ibuf, lock); } /* regular mono pipeline */ @@ -237,8 +240,14 @@ static bool image_save_single( ok = BKE_imbuf_write_as(colormanaged_ibuf, opts->filepath, imf, save_copy); imbuf_save_post(ibuf, colormanaged_ibuf); } -image_save_post( -reports, bmain, ima, ibuf, ok, opts, (is_exr_rr ? true : save_copy), opts->filepath); +image_save_post(reports, +ima, +ibuf, +ok, +opts, +(is_exr_rr ? true : save_copy), +opts->filepath, +r_colorspace_changed); BKE_image_release_ibuf(ima, ibuf, lock); } /* individual multiview images */ @@ -260,7 +269,7 @@ static bool image_save_single( if (is_exr_rr) { BKE_scene_multiview_view_filepath_get(&opts->scene->r, opts->filepath, view, filepath); ok_view = RE_WriteRenderResult(reports, rr, filepath, imf, view, layer); -image_save_post(reports, bmain, ima, ibuf, ok_view, opts, true, filepath); +image_save_post(reports, ima, ibuf, ok_view, opts
[Bf-blender-cvs] [f8c4f5e3085] master: Add a "selected_nla_strips" context member
Commit: f8c4f5e3085998c7db55fb490cb04c48c575a222 Author: Philipp Oeser Date: Mon Mar 30 19:33:13 2020 +0200 Branches: master https://developer.blender.org/rBf8c4f5e3085998c7db55fb490cb04c48c575a222 Add a "selected_nla_strips" context member Needed for upcomming fix for T66494. ref T66494 / D7281 === M source/blender/editors/screen/screen_context.c === diff --git a/source/blender/editors/screen/screen_context.c b/source/blender/editors/screen/screen_context.c index 9536772be3d..ea29e2f611c 100644 --- a/source/blender/editors/screen/screen_context.c +++ b/source/blender/editors/screen/screen_context.c @@ -27,6 +27,7 @@ #include "MEM_guardedalloc.h" +#include "DNA_anim_types.h" #include "DNA_armature_types.h" #include "DNA_gpencil_types.h" #include "DNA_object_types.h" @@ -88,6 +89,7 @@ const char *screen_context_dir[] = { "sequences", "selected_sequences", "selected_editable_sequences", /* sequencer */ +"selected_nla_strips", /* nla editor */ "gpencil_data", "gpencil_data_owner", /* grease pencil data */ "annotation_data", @@ -503,6 +505,28 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult return 1; } } + else if (CTX_data_equals(member, "selected_nla_strips")) { + bAnimContext ac; +if (ANIM_animdata_get_context(C, &ac) != 0) { + ListBase anim_data = {NULL, NULL}; + bAnimListElem *ale; + + ANIM_animdata_filter(&ac, &anim_data, ANIMFILTER_DATA_VISIBLE, ac.data, ac.datatype); + for (ale = anim_data.first; ale; ale = ale->next) { +NlaTrack *nlt = (NlaTrack *)ale->data; +NlaStrip *strip; +for (strip = nlt->strips.first; strip; strip = strip->next) { + if (strip->flag & NLASTRIP_FLAG_SELECT) { +CTX_data_list_add(result, &scene->id, &RNA_NlaStrip, strip); + } +} + } + ANIM_animdata_freelist(&anim_data); + + CTX_data_type_set(result, CTX_DATA_TYPE_COLLECTION); + return 1; +} + } else if (CTX_data_equals(member, "gpencil_data")) { /* FIXME: for some reason, CTX_data_active_object(C) returns NULL when called from these * situations (as outlined above - see Campbell's #ifdefs). ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [60ff3a7daff] master: Fix T66494: Alt+ clicking (assign to all selected) does not work for NLA strips
Commit: 60ff3a7daff75e631993e6e5d284746442e824f3 Author: Philipp Oeser Date: Wed Apr 1 10:24:16 2020 +0200 Branches: master https://developer.blender.org/rB60ff3a7daff75e631993e6e5d284746442e824f3 Fix T66494: Alt+ clicking (assign to all selected) does not work for NLA strips This uses the new "selected_nla_strips" context member in UI_context_copy_to_selected_list(). bonus: this also makes the "Copy To Selected" button operator [in the button context menu] work for anything NLA Strip related. Maniphest Tasks: T66494 Differential Revision: https://developer.blender.org/D7281 === M source/blender/editors/interface/interface_ops.c === diff --git a/source/blender/editors/interface/interface_ops.c b/source/blender/editors/interface/interface_ops.c index 519ba4cbbdf..b418cb4a1ac 100644 --- a/source/blender/editors/interface/interface_ops.c +++ b/source/blender/editors/interface/interface_ops.c @@ -807,6 +807,9 @@ bool UI_context_copy_to_selected_list(bContext *C, else if (RNA_struct_is_a(ptr->type, &RNA_FCurve)) { *r_lb = CTX_data_collection_get(C, "selected_editable_fcurves"); } + else if (RNA_struct_is_a(ptr->type, &RNA_NlaStrip)) { +*r_lb = CTX_data_collection_get(C, "selected_nla_strips"); + } else if (RNA_struct_is_a(ptr->type, &RNA_Constraint) && (path_from_bone = RNA_path_resolve_from_type_to_property(ptr, prop, &RNA_PoseBone)) != NULL) { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [9aad06db888] master: Fix T75315: typo in automasking UI text
Commit: 9aad06db8880a4097ab6c0f019185aa6671e55a6 Author: Philipp Oeser Date: Fri Apr 3 10:19:01 2020 +0200 Branches: master https://developer.blender.org/rB9aad06db8880a4097ab6c0f019185aa6671e55a6 Fix T75315: typo in automasking UI text === M source/blender/makesrna/intern/rna_brush.c === diff --git a/source/blender/makesrna/intern/rna_brush.c b/source/blender/makesrna/intern/rna_brush.c index fed81b86417..b625b3f0a84 100644 --- a/source/blender/makesrna/intern/rna_brush.c +++ b/source/blender/makesrna/intern/rna_brush.c @@ -2242,7 +2242,7 @@ static void rna_def_brush(BlenderRNA *brna) RNA_def_property_ui_range(prop, 1, 20, 1, 3); RNA_def_property_ui_text(prop, "Propagation Steps", - "Distance where boundary edge automaking is going to protect vertices " + "Distance where boundary edge automasking is going to protect vertices " "from the fully masked edge"); RNA_def_property_update(prop, 0, "rna_Brush_update"); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [a2a70cfc41e] master: Cleanup: typo in comment
Commit: a2a70cfc41edf3f8d63dcc6bc8d6b946583bec1a Author: Philipp Oeser Date: Wed Apr 1 18:33:58 2020 +0200 Branches: master https://developer.blender.org/rBa2a70cfc41edf3f8d63dcc6bc8d6b946583bec1a Cleanup: typo in comment === M source/blender/editors/space_info/info_stats.c === diff --git a/source/blender/editors/space_info/info_stats.c b/source/blender/editors/space_info/info_stats.c index 78bc0961cb3..e0e6edda850 100644 --- a/source/blender/editors/space_info/info_stats.c +++ b/source/blender/editors/space_info/info_stats.c @@ -582,8 +582,8 @@ void ED_info_stats_clear(ViewLayer *view_layer) const char *ED_info_stats_string(Main *bmain, Scene *scene, ViewLayer *view_layer) { - /* Looping through dependency graph when interface is locked in not safe. - * Thew interface is marked as locked when jobs wants to modify the + /* Looping through dependency graph when interface is locked is not safe. + * The interface is marked as locked when jobs wants to modify the * dependency graph. */ wmWindowManager *wm = bmain->wm.first; if (wm->is_interface_locked) { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [fe7ea8a24c8] master: Fix T75250: setting greasepencil active layer not refreshing the dopesheet
Commit: fe7ea8a24c8a147078d033b76d9a37a84042368c Author: Philipp Oeser Date: Thu Apr 2 16:52:43 2020 +0200 Branches: master https://developer.blender.org/rBfe7ea8a24c8a147078d033b76d9a37a84042368c Fix T75250: setting greasepencil active layer not refreshing the dopesheet This was only reported for the 'Change Active Layer' operator [which was not setting the channel as selected in the dopesheet], but this is also the case elsewhere [where BKE_gpencil_layer_active_set is used], namely: - gp_layer_remove_exec - gp_layer_copy_exec - gp_merge_layer_exec - gp_layer_change_exec - gp_layer_active_exec - gp_stroke_separate_exec We could set GP_LAYER_SELECT "by hand" in BKE_gpencil_layer_active_set(), but there is already animchan_sync_gplayer() that does that. For this, we need the NA_SELECTED notifier though. Maniphest Tasks: T75250 Differential Revision: https://developer.blender.org/D7311 === M source/blender/editors/gpencil/gpencil_data.c M source/blender/editors/gpencil/gpencil_edit.c === diff --git a/source/blender/editors/gpencil/gpencil_data.c b/source/blender/editors/gpencil/gpencil_data.c index 898facb86e8..a12f960c29e 100644 --- a/source/blender/editors/gpencil/gpencil_data.c +++ b/source/blender/editors/gpencil/gpencil_data.c @@ -331,6 +331,7 @@ static int gp_layer_remove_exec(bContext *C, wmOperator *op) /* notifiers */ DEG_id_tag_update(&gpd->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } @@ -478,6 +479,7 @@ static int gp_layer_copy_exec(bContext *C, wmOperator *UNUSED(op)) /* notifiers */ DEG_id_tag_update(&gpd->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } @@ -1228,6 +1230,7 @@ static int gp_merge_layer_exec(bContext *C, wmOperator *op) /* notifiers */ DEG_id_tag_update(&gpd->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } @@ -1291,6 +1294,7 @@ static int gp_layer_change_exec(bContext *C, wmOperator *op) /* updates */ DEG_id_tag_update(&gpd->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } @@ -1336,6 +1340,7 @@ static int gp_layer_active_exec(bContext *C, wmOperator *op) /* updates */ DEG_id_tag_update(&gpd->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c index 91169b34e34..8c31df02a11 100644 --- a/source/blender/editors/gpencil/gpencil_edit.c +++ b/source/blender/editors/gpencil/gpencil_edit.c @@ -4364,6 +4364,7 @@ static int gp_stroke_separate_exec(bContext *C, wmOperator *op) DEG_relations_tag_update(bmain); WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, NULL); WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL); + WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_SELECTED, NULL); return OPERATOR_FINISHED; } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cc0819aee11] master: Fix (unreported) wrong hair vertex colors
Commit: cc0819aee119ad7a9dc9c383ec6895208ea1a184 Author: Philipp Oeser Date: Thu Apr 2 11:28:03 2020 +0200 Branches: master https://developer.blender.org/rBcc0819aee119ad7a9dc9c383ec6895208ea1a184 Fix (unreported) wrong hair vertex colors This was already fixed in rB985f33719ce9 once. But resurfaced after rB7070e4c15e6c [which just reverted a bit too much ;)]. Spotted while looking into T75263. Differential Revision: https://developer.blender.org/D7308 === M source/blender/draw/intern/draw_cache_impl_particles.c === diff --git a/source/blender/draw/intern/draw_cache_impl_particles.c b/source/blender/draw/intern/draw_cache_impl_particles.c index dca4f8e01e6..331a1f80bec 100644 --- a/source/blender/draw/intern/draw_cache_impl_particles.c +++ b/source/blender/draw/intern/draw_cache_impl_particles.c @@ -339,7 +339,8 @@ static void particle_calculate_parent_mcol(ParticleSystem *psys, if (num != DMCACHE_NOTFOUND && num != DMCACHE_ISCHILD) { MFace *mface = &psmd->mesh_final->mface[num]; for (int j = 0; j < num_col_layers; j++) { - psys_interpolate_mcol(mcols[j] + num, mface->v4, particle->fuv, &r_mcol[j]); + /* CustomDataLayer CD_MCOL has 4 structs per face. */ + psys_interpolate_mcol(mcols[j] + num * 4, mface->v4, particle->fuv, &r_mcol[j]); } } } @@ -388,6 +389,7 @@ static void particle_interpolate_children_mcol(ParticleSystem *psys, if (num != DMCACHE_NOTFOUND) { MFace *mface = &psmd->mesh_final->mface[num]; for (int j = 0; j < num_col_layers; j++) { + /* CustomDataLayer CD_MCOL has 4 structs per face. */ psys_interpolate_mcol(mcols[j] + num * 4, mface->v4, particle->fuv, &r_mcol[j]); } } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [c03e5e78308] master: Fix T75418: Outliner Blender File view has UNKNOWN category for armatures
Commit: c03e5e78308c13e2d4a7d06fef84070f5044738f Author: Philipp Oeser Date: Mon Apr 6 13:03:15 2020 +0200 Branches: master https://developer.blender.org/rBc03e5e78308c13e2d4a7d06fef84070f5044738f Fix T75418: Outliner Blender File view has UNKNOWN category for armatures Typo in rB57daecc2cf88. Maniphest Tasks: T75418 Differential Revision: https://developer.blender.org/D7346 === M source/blender/blenkernel/intern/armature.c === diff --git a/source/blender/blenkernel/intern/armature.c b/source/blender/blenkernel/intern/armature.c index daf364432f4..af98992cc01 100644 --- a/source/blender/blenkernel/intern/armature.c +++ b/source/blender/blenkernel/intern/armature.c @@ -156,7 +156,7 @@ IDTypeInfo IDType_ID_AR = { .main_listbase_index = INDEX_ID_AR, .struct_size = sizeof(bArmature), .name = "Armature", -.name_plural = "armature", +.name_plural = "armatures", .translation_context = BLT_I18NCONTEXT_ID_ARMATURE, .flags = 0, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5e0465e4ecb] master: Fix T75343: Wireframe overylay is not working properly with multiple modifiers
Commit: 5e0465e4ecba5349418f3b76b3d0061788047e9a Author: Philipp Oeser Date: Sat Apr 4 11:14:45 2020 +0200 Branches: master https://developer.blender.org/rB5e0465e4ecba5349418f3b76b3d0061788047e9a Fix T75343: Wireframe overylay is not working properly with multiple modifiers Since rBcf258b02f449, only wires and edges that are mapped to the original mesh were drawn if the mesh was modified by modifiers. Above commit was only meant for showing orig wires for paint mask overlays [where final wireframe is not desired], so now only use MR_EXTRACT_MAPPED when we are in a paint mode. Maniphest Tasks: T75343 Differential Revision: https://developer.blender.org/D7333 === M source/blender/draw/intern/draw_cache_extract.h M source/blender/draw/intern/draw_cache_extract_mesh.c M source/blender/draw/intern/draw_cache_impl_mesh.c === diff --git a/source/blender/draw/intern/draw_cache_extract.h b/source/blender/draw/intern/draw_cache_extract.h index 0e02b07e95b..b2fea957227 100644 --- a/source/blender/draw/intern/draw_cache_extract.h +++ b/source/blender/draw/intern/draw_cache_extract.h @@ -253,6 +253,7 @@ void mesh_buffer_cache_create_requested(MeshBatchCache *cache, MeshBufferCache mbc, Mesh *me, const bool is_editmode, +const bool is_paint_mode, const float obmat[4][4], const bool do_final, const bool do_uvedit, diff --git a/source/blender/draw/intern/draw_cache_extract_mesh.c b/source/blender/draw/intern/draw_cache_extract_mesh.c index 70fe6a55461..0449601adf7 100644 --- a/source/blender/draw/intern/draw_cache_extract_mesh.c +++ b/source/blender/draw/intern/draw_cache_extract_mesh.c @@ -129,6 +129,7 @@ typedef struct MeshRenderData { static MeshRenderData *mesh_render_data_create(Mesh *me, const bool is_editmode, + const bool is_paint_mode, const float obmat[4][4], const bool do_final, const bool do_uvedit, @@ -192,7 +193,7 @@ static MeshRenderData *mesh_render_data_create(Mesh *me, mr->me = me; mr->edit_bmesh = NULL; -bool use_mapped = mr->me && !mr->me->runtime.is_original; +bool use_mapped = is_paint_mode && mr->me && !mr->me->runtime.is_original; if (use_mapped) { mr->v_origindex = CustomData_get_layer(&mr->me->vdata, CD_ORIGINDEX); mr->e_origindex = CustomData_get_layer(&mr->me->edata, CD_ORIGINDEX); @@ -4596,6 +4597,7 @@ void mesh_buffer_cache_create_requested(MeshBatchCache *cache, MeshBufferCache mbc, Mesh *me, const bool is_editmode, +const bool is_paint_mode, const float obmat[4][4], const bool do_final, const bool do_uvedit, @@ -4657,8 +4659,16 @@ void mesh_buffer_cache_create_requested(MeshBatchCache *cache, double rdata_start = PIL_check_seconds_timer(); #endif - MeshRenderData *mr = mesh_render_data_create( - me, is_editmode, obmat, do_final, do_uvedit, iter_flag, data_flag, cd_layer_used, ts); + MeshRenderData *mr = mesh_render_data_create(me, + is_editmode, + is_paint_mode, + obmat, + do_final, + do_uvedit, + iter_flag, + data_flag, + cd_layer_used, + ts); mr->cache = cache; /* HACK */ mr->use_hide = use_hide; mr->use_subsurf_fdots = use_subsurf_fdots; diff --git a/source/blender/draw/intern/draw_cache_impl_mesh.c b/source/blender/draw/intern/draw_cache_impl_mesh.c index 308d87f1385..1aaead27ee7 100644 --- a/source/blender/draw/intern/draw_cache_impl_mesh.c +++ b/source/blender/draw/intern/draw_cache_impl_mesh.c @@ -1369,6 +1369,7 @@ void DRW_mesh_batch_cache_create_requested( cache->uv_cage,
[Bf-blender-cvs] [3a65397473e] master: Fix T75471: Outliner: crash selecting modifier objects/targets that are in a excluded collection
Commit: 3a65397473e7a60b606489ea154687a16f656b6b Author: Philipp Oeser Date: Tue Apr 7 12:59:46 2020 +0200 Branches: master https://developer.blender.org/rB3a65397473e7a60b606489ea154687a16f656b6b Fix T75471: Outliner: crash selecting modifier objects/targets that are in a excluded collection There is no garuantee 'outliner_find_id()' can find those corresponding TreeElements, safeguard against failure now. note: not sure why this was no problem in Release builds? (could only reproduce crashes in Debug builds...) Maniphest Tasks: T75471 Differential Revision: https://developer.blender.org/D7365 === M source/blender/editors/space_outliner/outliner_select.c === diff --git a/source/blender/editors/space_outliner/outliner_select.c b/source/blender/editors/space_outliner/outliner_select.c index ec1595eb930..64d86293fb7 100644 --- a/source/blender/editors/space_outliner/outliner_select.c +++ b/source/blender/editors/space_outliner/outliner_select.c @@ -312,6 +312,7 @@ static eOLDrawState tree_element_set_active_object(bContext *C, Scene *sce; Base *base; Object *ob = NULL; + TreeElement *te_ob = NULL; /* if id is not object, we search back */ if (te->idcode == ID_OB) { @@ -355,8 +356,12 @@ static eOLDrawState tree_element_set_active_object(bContext *C, } } - parent_tselem = TREESTORE(outliner_find_id(soops, &soops->tree, (ID *)ob)); - if (base) { + te_ob = outliner_find_id(soops, &soops->tree, (ID *)ob); + if (te_ob != NULL) { +parent_tselem = TREESTORE(te_ob); + } + + if (!ELEM(NULL, parent_tselem, base)) { if (set == OL_SETSEL_EXTEND) { /* swap select */ if (base->flag & BASE_SELECTED) { ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [337a7ed2926] master: Pointclouds: fix point drawing
Commit: 337a7ed292638542f702f1ce2119dc73072f0b56 Author: Philipp Oeser Date: Thu Apr 9 23:31:36 2020 +0200 Branches: master https://developer.blender.org/rB337a7ed292638542f702f1ce2119dc73072f0b56 Pointclouds: fix point drawing The radius component is only one float. This resulted in only a third of intended points to draw and could lead to glitches. Pointcloud drawing will still change a lot in the future, this is just to be able to work on some simple tools. Differential Revision: https://developer.blender.org/D7390 === M source/blender/draw/intern/draw_cache_impl_pointcloud.c === diff --git a/source/blender/draw/intern/draw_cache_impl_pointcloud.c b/source/blender/draw/intern/draw_cache_impl_pointcloud.c index 83757cb714a..53939b35285 100644 --- a/source/blender/draw/intern/draw_cache_impl_pointcloud.c +++ b/source/blender/draw/intern/draw_cache_impl_pointcloud.c @@ -134,7 +134,7 @@ static void pointcloud_batch_cache_ensure_pos(Object *ob, PointCloudBatchCache * /* initialize vertex format */ pos_id = GPU_vertformat_attr_add(&format, "pointcloud_pos", GPU_COMP_F32, 3, GPU_FETCH_FLOAT); radius_id = GPU_vertformat_attr_add( -&format, "pointcloud_radius", GPU_COMP_F32, 3, GPU_FETCH_FLOAT); +&format, "pointcloud_radius", GPU_COMP_F32, 1, GPU_FETCH_FLOAT); } GPU_VERTBUF_DISCARD_SAFE(cache->pos); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [d3cda49d143] master: Fix T74657: Grease Pencil Proportional Editing does not work for 'Individual Origins'
Commit: d3cda49d143c455ae5c1093f3a5ce448c7de6ed3 Author: Philipp Oeser Date: Mon Apr 6 14:49:29 2020 +0200 Branches: master https://developer.blender.org/rBd3cda49d143c455ae5c1093f3a5ce448c7de6ed3 Fix T74657: Grease Pencil Proportional Editing does not work for 'Individual Origins' Note gpencil doesnt do anything fancy like meshes in editmesh_islands_info_calc(), but it looks like there is actually no harm in allowing proportional editing with individual origins & gpencil editmode. Maniphest Tasks: T74657 Differential Revision: https://developer.blender.org/D7351 === M source/blender/editors/transform/transform.c === diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index c1e890ed5f1..d0866968daa 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -77,7 +77,7 @@ static void initSnapSpatial(TransInfo *t, float r_snap[3]); bool transdata_check_local_islands(TransInfo *t, short around) { - return ((around == V3D_AROUND_LOCAL_ORIGINS) && ((ELEM(t->obedit_type, OB_MESH; + return ((around == V3D_AROUND_LOCAL_ORIGINS) && ((ELEM(t->obedit_type, OB_MESH, OB_GPENCIL; } /* ** SPACE DEPENDENT CODE */ ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [65f674b570f] master: Fix T75535: Compositor backdrop gizmo dragging interrupts with node mouse over
Commit: 65f674b570fc5eb1b5011bf8ae5cc3e031026665 Author: Philipp Oeser Date: Thu Apr 9 13:24:42 2020 +0200 Branches: master https://developer.blender.org/rB65f674b570fc5eb1b5011bf8ae5cc3e031026665 Fix T75535: Compositor backdrop gizmo dragging interrupts with node mouse over Caused by rB5929dd7129f6. Above commit would reset the gizmo highlight on node mouseover. This would also assert in gizmo_rect_pivot_from_scale_part() and stop the drag. So now, only reset the gizmo when we are not in EVT_GIZMO_UPDATE, allowing for starting the tweak outside a node and then travelling 'inside' while still preventing to use it over a node when starting a tweak there. Maniphest Tasks: T75535 Differential Revision: https://developer.blender.org/D7383 === M source/blender/windowmanager/intern/wm_event_system.c === diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index 15b6fe53417..8b8c1b90dc9 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -2519,10 +2519,11 @@ static int wm_handlers_do_gizmo_handler(bContext *C, wmGizmo *gz = wm_gizmomap_highlight_get(gzmap); /* Needed so UI blocks over gizmos don't let events fall through to the gizmos, - * noticeable for the node editor - where dragging on a node should move it, see: T73212. */ + * noticeable for the node editor - where dragging on a node should move it, see: T73212. + * note we still allow for starting the gizmo drag outside, then travel 'inside' the node */ if (region->type->clip_gizmo_events_by_ui) { if (UI_region_block_find_mouse_over(region, &event->x, true)) { - if (gz != NULL) { + if (gz != NULL && event->type != EVT_GIZMO_UPDATE) { WM_tooltip_clear(C, CTX_wm_window(C)); wm_gizmomap_highlight_set(gzmap, C, NULL, 0); } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [7af84255c76] master: Cleanup: typo
Commit: 7af84255c76b4da0cb180a2b5b296c2c5e2b4317 Author: Philipp Oeser Date: Wed Apr 15 16:57:28 2020 +0200 Branches: master https://developer.blender.org/rB7af84255c76b4da0cb180a2b5b296c2c5e2b4317 Cleanup: typo === M source/blender/makesrna/intern/rna_modifier.c === diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c index e13b9caa90c..ccc141c1bb2 100644 --- a/source/blender/makesrna/intern/rna_modifier.c +++ b/source/blender/makesrna/intern/rna_modifier.c @@ -920,7 +920,7 @@ static bool rna_HookModifier_object_override_apply(Main *UNUSED(bmain), { BLI_assert(len_dst == len_src && (!ptr_storage || len_dst == len_storage) && len_dst == 0); BLI_assert(opop->operation == IDOVERRIDE_LIBRARY_OP_REPLACE && - "Unsupported RNA override operation on Hook modifier target objet pointer"); + "Unsupported RNA override operation on Hook modifier target object pointer"); UNUSED_VARS_NDEBUG(ptr_storage, len_dst, len_src, len_storage, opop); /* We need a special handling here because setting hook target resets invert parent matrix, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ec574b5b090] master: Cleanup: remove (unused) RNA update cache
Commit: ec574b5b090f9ae779ca3e55021940ddd41115fb Author: Philipp Oeser Date: Wed Apr 15 10:22:03 2020 +0200 Branches: master https://developer.blender.org/rBec574b5b090f9ae779ca3e55021940ddd41115fb Cleanup: remove (unused) RNA update cache Introduced in 2011 in rB6a392e8cb505, it was disabled again soon after in rBb062056c05a3 and traces to it partly removed in rB21744217cea9. Now remove completely. quote @sergey: We shouldn't be having partially working unused code. If we ever need some sort of update cache it would need to have clear design first, and the code could be resurrected from history if needed. Differential Revision: https://developer.blender.org/D7432 === M source/blender/blenkernel/intern/anim_sys.c M source/blender/blenkernel/intern/blendfile.c M source/blender/makesrna/RNA_access.h M source/blender/makesrna/intern/rna_access.c === diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c index 18320ef0f8d..5f463be58b4 100644 --- a/source/blender/blenkernel/intern/anim_sys.c +++ b/source/blender/blenkernel/intern/anim_sys.c @@ -2547,13 +2547,6 @@ void BKE_animsys_evaluate_animdata( * - It is best that we execute this every time, so that no errors are likely to occur. */ animsys_evaluate_overrides(&id_ptr, adt); - - /* execute and clear all cached property update functions */ - if (scene) { -Main *bmain = G.main; // xxx - to get passed in! -RNA_property_update_cache_flush(bmain, scene); -RNA_property_update_cache_free(); - } } /* Evaluation of all ID-blocks with Animation Data blocks - Animation Data Only diff --git a/source/blender/blenkernel/intern/blendfile.c b/source/blender/blenkernel/intern/blendfile.c index 2a53a0b69a4..0d5d35e3508 100644 --- a/source/blender/blenkernel/intern/blendfile.c +++ b/source/blender/blenkernel/intern/blendfile.c @@ -258,9 +258,6 @@ static void setup_app_data(bContext *C, // CTX_wm_manager_set(C, NULL); BKE_blender_globals_clear(); - /* clear old property update cache, in case some old references are left dangling */ - RNA_property_update_cache_free(); - bmain = G_MAIN = bfd->main; bfd->main = NULL; diff --git a/source/blender/makesrna/RNA_access.h b/source/blender/makesrna/RNA_access.h index 31d1ed54fa1..26773e59feb 100644 --- a/source/blender/makesrna/RNA_access.h +++ b/source/blender/makesrna/RNA_access.h @@ -930,10 +930,6 @@ void RNA_property_update_main(struct Main *bmain, PropertyRNA *prop); bool RNA_property_update_check(struct PropertyRNA *prop); -void RNA_property_update_cache_add(PointerRNA *ptr, PropertyRNA *prop); -void RNA_property_update_cache_flush(struct Main *bmain, struct Scene *scene); -void RNA_property_update_cache_free(void); - /* Property Data */ bool RNA_property_boolean_get(PointerRNA *ptr, PropertyRNA *prop); diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index b56a18c18a9..501dd2109c2 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -98,8 +98,6 @@ void RNA_exit(void) { StructRNA *srna; - RNA_property_update_cache_free(); - for (srna = BLENDER_RNA.structs.first; srna; srna = srna->cont.next) { if (srna->cont.prophash) { BLI_ghash_free(srna->cont.prophash, NULL, NULL); @@ -2308,115 +2306,6 @@ void RNA_property_update_main(Main *bmain, Scene *scene, PointerRNA *ptr, Proper rna_property_update(NULL, bmain, scene, ptr, prop); } -/* RNA Updates Cache */ -/* Overview of RNA Update cache system: - * - * RNA Update calls need to be cached in order to maintain reasonable performance - * of the animation system (i.e. maintaining a somewhat interactive framerate) - * while still allowing updates to be called (necessary in particular for modifier - * property updates to actually work). - * - * The cache is structured with a dual-layer structure - * - L1 = PointerRNA used as key; owner_id is used (it should always be defined, - *and most updates end up using just that anyways) - * - L2 = Update functions to be called on those PointerRNA's - */ - -/* cache element */ -typedef struct tRnaUpdateCacheElem { - struct tRnaUpdateCacheElem *next, *prev; - - PointerRNA ptr; /* L1 key - id as primary, data secondary/ignored? */ - ListBase L2Funcs; /* L2 functions (LinkData) */ -} tRnaUpdateCacheElem; - -/* cache global (tRnaUpdateCacheElem's) - only accessible using these API calls */ -static ListBase rna_updates_cache = {NULL, NULL}; - -/* ... */ - -void RNA_property_update_cache_add(PointerRNA *ptr, PropertyRNA *prop) -{ - const bool is_rna = (prop->magic == RNA_MAGIC); - tRnaUpdateCacheElem *uce = NULL; -
[Bf-blender-cvs] [f250b1f5a00] blender-v2.83-release: Fix assert for Image Editor invert/resize operators
Commit: f250b1f5a007a85a646a809a29b706e814f4cf32 Author: Philipp Oeser Date: Wed Apr 15 13:07:20 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rBf250b1f5a007a85a646a809a29b706e814f4cf32 Fix assert for Image Editor invert/resize operators Caused by rB2bf4c74130ff. For undo, the ImageUser's scene should be NULL (see D7022 for discussion). PaintTiles were already doing it beforehand in ED_image_paint_tile_push, but Image ops [scale/invert] are calling ED_image_undo_push_begin_with_image directly. Now actually set the UndoImageHandle iuser.scene to NULL (rather than asserting) ref T75675 Maniphest Tasks: T75675 Differential Revision: https://developer.blender.org/D7435 === M source/blender/editors/space_image/image_undo.c === diff --git a/source/blender/editors/space_image/image_undo.c b/source/blender/editors/space_image/image_undo.c index 056dd826238..cebf47a385d 100644 --- a/source/blender/editors/space_image/image_undo.c +++ b/source/blender/editors/space_image/image_undo.c @@ -667,7 +667,7 @@ static UndoImageHandle *uhandle_add(ListBase *undo_handles, Image *image, ImageU UndoImageHandle *uh = MEM_callocN(sizeof(*uh), __func__); uh->image_ref.ptr = image; uh->iuser = *iuser; - BLI_assert(uh->iuser.scene == NULL); + uh->iuser.scene = NULL; uh->iuser.ok = 1; BLI_addtail(undo_handles, uh); return uh; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [4dc534aa04a] master: Merge branch 'blender-v2.83-release'
Commit: 4dc534aa04a7fbbea8aec3f86127b38451496db8 Author: Philipp Oeser Date: Wed Apr 15 17:46:09 2020 +0200 Branches: master https://developer.blender.org/rB4dc534aa04a7fbbea8aec3f86127b38451496db8 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [3ea4d3dc073] blender-v2.83-release: Fix (unreported) Image Editor UI drawing too dark
Commit: 3ea4d3dc07311a5799f7102a1e4f5920db367c0e Author: Philipp Oeser Date: Thu Apr 16 12:39:51 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB3ea4d3dc07311a5799f7102a1e4f5920db367c0e Fix (unreported) Image Editor UI drawing too dark Caused by rBf0221ff6674f. Only draw the Image buffer itself in display space. Differential Revision: https://developer.blender.org/D7449 === M source/blender/editors/space_image/image_draw.c M source/blender/editors/space_image/space_image.c === diff --git a/source/blender/editors/space_image/image_draw.c b/source/blender/editors/space_image/image_draw.c index 85f7f744abc..6037c1d2ec8 100644 --- a/source/blender/editors/space_image/image_draw.c +++ b/source/blender/editors/space_image/image_draw.c @@ -575,6 +575,9 @@ static void draw_image_buffer(const bContext *C, float zoomx, float zoomy) { + /* Image are still drawn in display space. */ + glDisable(GL_FRAMEBUFFER_SRGB); + int x, y; int sima_flag = sima->flag & ED_space_image_get_display_channel_mask(ibuf); @@ -666,6 +669,8 @@ static void draw_image_buffer(const bContext *C, GPU_blend(false); } } + + glEnable(GL_FRAMEBUFFER_SRGB); } static void draw_image_buffer_repeated(const bContext *C, diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c index 5c146a99efd..1e1d4373fea 100644 --- a/source/blender/editors/space_image/space_image.c +++ b/source/blender/editors/space_image/space_image.c @@ -669,14 +669,9 @@ static void image_main_region_draw(const bContext *C, ARegion *region) /* we set view2d from own zoom and offset each time */ image_main_region_set_view2d(sima, region); - /* Image are still drawn in display space. */ - glDisable(GL_FRAMEBUFFER_SRGB); - /* we draw image in pixelspace */ draw_image_main(C, region); - glEnable(GL_FRAMEBUFFER_SRGB); - /* and uvs in 0.0-1.0 space */ UI_view2d_view_ortho(v2d); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [13876d50cee] master: Merge branch 'blender-v2.83-release'
Commit: 13876d50cee8f8fc5b5eb4585718fc290aec33af Author: Philipp Oeser Date: Thu Apr 16 14:12:09 2020 +0200 Branches: master https://developer.blender.org/rB13876d50cee8f8fc5b5eb4585718fc290aec33af Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cdd406f4bd6] master: Cleanup: unused variable warning
Commit: cdd406f4bd645c91013105caef681e842427392b Author: Philipp Oeser Date: Thu Apr 16 14:30:00 2020 +0200 Branches: master https://developer.blender.org/rBcdd406f4bd645c91013105caef681e842427392b Cleanup: unused variable warning Not needed since rB1685f5824d91. === M source/blender/blenkernel/intern/anim_sys.c === diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c index 5825d7e4acd..de8d5af22ae 100644 --- a/source/blender/blenkernel/intern/anim_sys.c +++ b/source/blender/blenkernel/intern/anim_sys.c @@ -2708,7 +2708,6 @@ void BKE_animsys_eval_animdata(Depsgraph *depsgraph, ID *id) AnimData *adt = BKE_animdata_from_id(id); /* XXX: this is only needed for flushing RNA updates, * which should get handled as part of the dependency graph instead. */ - Scene *scene = NULL; DEG_debug_print_eval_time(depsgraph, __func__, id->name, id, ctime); const bool flush_to_original = DEG_is_active(depsgraph); BKE_animsys_evaluate_animdata(id, adt, ctime, ADT_RECALC_ANIM, flush_to_original); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [737a4309e8b] master: Cleanup: typo in comment
Commit: 737a4309e8b48e5384487345d17dbb7de88e8bb9 Author: Philipp Oeser Date: Thu Apr 16 15:22:15 2020 +0200 Branches: master https://developer.blender.org/rB737a4309e8b48e5384487345d17dbb7de88e8bb9 Cleanup: typo in comment === M source/blender/makesdna/DNA_ID.h === diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index dd3964dfc15..aedd25cb41a 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -539,9 +539,9 @@ enum { /* RESET_NEVER tag data-block as needing an auto-override execution, if enabled. */ LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH = 1 << 17, - /* tag data-block has having an extra user. */ + /* tag data-block as having an extra user. */ LIB_TAG_EXTRAUSER = 1 << 2, - /* tag data-block has having actually increased usercount for the extra virtual user. */ + /* tag data-block as having actually increased usercount for the extra virtual user. */ LIB_TAG_EXTRAUSER_SET = 1 << 7, /* RESET_AFTER_USE tag newly duplicated/copied IDs. ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [8cb10c124ef] blender-v2.83-release: Fix T75675: Unlinking [with setting users to zero] not clearing LIB_TAG_EXTRAUSER_SET flag
Commit: 8cb10c124efebc27a7451f3d3a4c62d23c3927b5 Author: Philipp Oeser Date: Thu Apr 16 17:09:04 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB8cb10c124efebc27a7451f3d3a4c62d23c3927b5 Fix T75675: Unlinking [with setting users to zero] not clearing LIB_TAG_EXTRAUSER_SET flag For example in the Image Editor, an assert would be triggered after unlinking an image [with setting users to zero] and then setting the image for the Image Editor again. Whenever we set an Image for Image Editor, the Image ID is flagged LIB_TAG_EXTRAUSER_SET, when we unlink [with setting users to zero] this flag was not cleared. quote @mont29: "a proper fix would be to move this to modern code, and actually delete the ID..." but that is for later. Maniphest Tasks: T75675 Differential Revision: https://developer.blender.org/D7452 === M source/blender/editors/interface/interface_templates.c === diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c index 6f6a4a1718a..52afb17079d 100644 --- a/source/blender/editors/interface/interface_templates.c +++ b/source/blender/editors/interface/interface_templates.c @@ -536,6 +536,7 @@ static void template_id_cb(bContext *C, void *arg_litem, void *arg_event) if (id && CTX_wm_window(C)->eventstate->shift) { /* only way to force-remove data (on save) */ +id_us_clear_real(id); id_fake_user_clear(id); id->us = 0; } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [b374fcc98f9] master: Merge branch 'blender-v2.83-release'
Commit: b374fcc98f99db50c93ee445de2a6532e9adb998 Author: Philipp Oeser Date: Thu Apr 16 17:45:07 2020 +0200 Branches: master https://developer.blender.org/rBb374fcc98f99db50c93ee445de2a6532e9adb998 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [b36e8b0d55f] modifier-panels-ui: Fix (unreported) Image Editor UI drawing too dark
Commit: b36e8b0d55fc36c13da31c9646eac267c3157c01 Author: Philipp Oeser Date: Thu Apr 16 12:39:51 2020 +0200 Branches: modifier-panels-ui https://developer.blender.org/rBb36e8b0d55fc36c13da31c9646eac267c3157c01 Fix (unreported) Image Editor UI drawing too dark Caused by rBf0221ff6674f. Only draw the Image buffer itself in display space. Differential Revision: https://developer.blender.org/D7449 === M source/blender/editors/space_image/image_draw.c M source/blender/editors/space_image/space_image.c === diff --git a/source/blender/editors/space_image/image_draw.c b/source/blender/editors/space_image/image_draw.c index 85f7f744abc..6037c1d2ec8 100644 --- a/source/blender/editors/space_image/image_draw.c +++ b/source/blender/editors/space_image/image_draw.c @@ -575,6 +575,9 @@ static void draw_image_buffer(const bContext *C, float zoomx, float zoomy) { + /* Image are still drawn in display space. */ + glDisable(GL_FRAMEBUFFER_SRGB); + int x, y; int sima_flag = sima->flag & ED_space_image_get_display_channel_mask(ibuf); @@ -666,6 +669,8 @@ static void draw_image_buffer(const bContext *C, GPU_blend(false); } } + + glEnable(GL_FRAMEBUFFER_SRGB); } static void draw_image_buffer_repeated(const bContext *C, diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c index ed14593ed2d..d7d85112497 100644 --- a/source/blender/editors/space_image/space_image.c +++ b/source/blender/editors/space_image/space_image.c @@ -670,14 +670,9 @@ static void image_main_region_draw(const bContext *C, ARegion *region) /* we set view2d from own zoom and offset each time */ image_main_region_set_view2d(sima, region); - /* Image are still drawn in display space. */ - glDisable(GL_FRAMEBUFFER_SRGB); - /* we draw image in pixelspace */ draw_image_main(C, region); - glEnable(GL_FRAMEBUFFER_SRGB); - /* and uvs in 0.0-1.0 space */ UI_view2d_view_ortho(v2d); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [cc24695be73] modifier-panels-ui: Cleanup: typo in comment
Commit: cc24695be7332b2055917ee4c69708e8e5b91af8 Author: Philipp Oeser Date: Thu Apr 16 15:22:15 2020 +0200 Branches: modifier-panels-ui https://developer.blender.org/rBcc24695be7332b2055917ee4c69708e8e5b91af8 Cleanup: typo in comment === M source/blender/makesdna/DNA_ID.h === diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index dd3964dfc15..aedd25cb41a 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -539,9 +539,9 @@ enum { /* RESET_NEVER tag data-block as needing an auto-override execution, if enabled. */ LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH = 1 << 17, - /* tag data-block has having an extra user. */ + /* tag data-block as having an extra user. */ LIB_TAG_EXTRAUSER = 1 << 2, - /* tag data-block has having actually increased usercount for the extra virtual user. */ + /* tag data-block as having actually increased usercount for the extra virtual user. */ LIB_TAG_EXTRAUSER_SET = 1 << 7, /* RESET_AFTER_USE tag newly duplicated/copied IDs. ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [ce8808ec07b] modifier-panels-ui: Cleanup: unused variable warning
Commit: ce8808ec07bf3f2f164ba40847d2651f02443d19 Author: Philipp Oeser Date: Thu Apr 16 14:30:00 2020 +0200 Branches: modifier-panels-ui https://developer.blender.org/rBce8808ec07bf3f2f164ba40847d2651f02443d19 Cleanup: unused variable warning Not needed since rB1685f5824d91. === M source/blender/blenkernel/intern/anim_sys.c === diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c index 5825d7e4acd..de8d5af22ae 100644 --- a/source/blender/blenkernel/intern/anim_sys.c +++ b/source/blender/blenkernel/intern/anim_sys.c @@ -2708,7 +2708,6 @@ void BKE_animsys_eval_animdata(Depsgraph *depsgraph, ID *id) AnimData *adt = BKE_animdata_from_id(id); /* XXX: this is only needed for flushing RNA updates, * which should get handled as part of the dependency graph instead. */ - Scene *scene = NULL; DEG_debug_print_eval_time(depsgraph, __func__, id->name, id, ctime); const bool flush_to_original = DEG_is_active(depsgraph); BKE_animsys_evaluate_animdata(id, adt, ctime, ADT_RECALC_ANIM, flush_to_original); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [bc252b3b1a6] modifier-panels-ui: Fix T75675: Unlinking [with setting users to zero] not clearing LIB_TAG_EXTRAUSER_SET flag
Commit: bc252b3b1a6e8590ac1de26c59132c27857a33f7 Author: Philipp Oeser Date: Thu Apr 16 17:09:04 2020 +0200 Branches: modifier-panels-ui https://developer.blender.org/rBbc252b3b1a6e8590ac1de26c59132c27857a33f7 Fix T75675: Unlinking [with setting users to zero] not clearing LIB_TAG_EXTRAUSER_SET flag For example in the Image Editor, an assert would be triggered after unlinking an image [with setting users to zero] and then setting the image for the Image Editor again. Whenever we set an Image for Image Editor, the Image ID is flagged LIB_TAG_EXTRAUSER_SET, when we unlink [with setting users to zero] this flag was not cleared. quote @mont29: "a proper fix would be to move this to modern code, and actually delete the ID..." but that is for later. Maniphest Tasks: T75675 Differential Revision: https://developer.blender.org/D7452 === M source/blender/editors/interface/interface_templates.c === diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c index 503dd0b580a..442e192e2a4 100644 --- a/source/blender/editors/interface/interface_templates.c +++ b/source/blender/editors/interface/interface_templates.c @@ -536,6 +536,7 @@ static void template_id_cb(bContext *C, void *arg_litem, void *arg_event) if (id && CTX_wm_window(C)->eventstate->shift) { /* only way to force-remove data (on save) */ +id_us_clear_real(id); id_fake_user_clear(id); id->us = 0; } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [be7c51d076b] blender-v2.83-release: Fix T75885: Mesh deform modifier not updating on own transforms
Commit: be7c51d076be4c826e0b7c1afec59b86b4edc33b Author: Philipp Oeser Date: Mon Apr 20 11:08:49 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rBbe7c51d076be4c826e0b7c1afec59b86b4edc33b Fix T75885: Mesh deform modifier not updating on own transforms Added the missing relation. Maniphest Tasks: T75885 Differential Revision: https://developer.blender.org/D7473 === M source/blender/modifiers/intern/MOD_meshdeform.c === diff --git a/source/blender/modifiers/intern/MOD_meshdeform.c b/source/blender/modifiers/intern/MOD_meshdeform.c index 7125d0df3a1..d1fa496c3e5 100644 --- a/source/blender/modifiers/intern/MOD_meshdeform.c +++ b/source/blender/modifiers/intern/MOD_meshdeform.c @@ -161,6 +161,8 @@ static void updateDepsgraph(ModifierData *md, const ModifierUpdateDepsgraphConte DEG_add_object_relation(ctx->node, mmd->object, DEG_OB_COMP_TRANSFORM, "Mesh Deform Modifier"); DEG_add_object_relation(ctx->node, mmd->object, DEG_OB_COMP_GEOMETRY, "Mesh Deform Modifier"); } + /* We need own transformation as well. */ + DEG_add_modifier_to_transform_relation(ctx->node, "Mesh Deform Modifier"); } static float meshdeform_dynamic_bind(MeshDeformModifierData *mmd, float (*dco)[3], float vec[3]) ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [9618bd9202a] master: Merge branch 'blender-v2.83-release'
Commit: 9618bd9202a7f4a024895da443d8e053debe6b4a Author: Philipp Oeser Date: Mon Apr 20 18:55:08 2020 +0200 Branches: master https://developer.blender.org/rB9618bd9202a7f4a024895da443d8e053debe6b4a Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [470f17f21c0] blender-v2.83-release: Fix T75974: Multiobject editing UV hiding/unhiding does not work
Commit: 470f17f21c06709443b5634a6fc31dc4dc355daf Author: Philipp Oeser Date: Wed Apr 22 11:48:54 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB470f17f21c06709443b5634a6fc31dc4dc355daf Fix T75974: Multiobject editing UV hiding/unhiding does not work Seems like this was left out when UV operators were converted to multi- object-editing, ref T54645. Maniphest Tasks: T75974 Differential Revision: https://developer.blender.org/D7492 === M source/blender/editors/uvedit/uvedit_ops.c === diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c index 33601de50da..1a4df846a12 100644 --- a/source/blender/editors/uvedit/uvedit_ops.c +++ b/source/blender/editors/uvedit/uvedit_ops.c @@ -4714,99 +4714,109 @@ static bool bm_face_is_all_uv_sel(BMFace *f, bool select_test, const int cd_loop static int uv_hide_exec(bContext *C, wmOperator *op) { + ViewLayer *view_layer = CTX_data_view_layer(C); SpaceImage *sima = CTX_wm_space_image(C); - Object *obedit = CTX_data_edit_object(C); Scene *scene = CTX_data_scene(C); const ToolSettings *ts = scene->toolsettings; - BMEditMesh *em = BKE_editmesh_from_object(obedit); - BMFace *efa; - BMLoop *l; - BMIter iter, liter; - MLoopUV *luv; const bool swap = RNA_boolean_get(op->ptr, "unselected"); Image *ima = sima ? sima->image : NULL; const int use_face_center = (ts->uv_selectmode == UV_SELECT_FACE); - const int cd_loop_uv_offset = CustomData_get_offset(&em->bm->ldata, CD_MLOOPUV); + uint objects_len = 0; + Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs( + view_layer, ((View3D *)NULL), &objects_len); - if (ts->uv_flag & UV_SYNC_SELECTION) { -if (EDBM_mesh_hide(em, swap)) { - EDBM_update_generic(obedit->data, true, false); -} -return OPERATOR_FINISHED; - } + for (uint ob_index = 0; ob_index < objects_len; ob_index++) { +Object *ob = objects[ob_index]; +BMEditMesh *em = BKE_editmesh_from_object(ob); +BMFace *efa; +BMLoop *l; +BMIter iter, liter; +MLoopUV *luv; - BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) { -int hide = 0; +const int cd_loop_uv_offset = CustomData_get_offset(&em->bm->ldata, CD_MLOOPUV); -if (!uvedit_face_visible_test(scene, obedit, ima, efa)) { - continue; +if (ts->uv_flag & UV_SYNC_SELECTION) { + if (EDBM_mesh_hide(em, swap)) { +EDBM_update_generic(ob->data, true, false); + } + return OPERATOR_FINISHED; } -BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) { - luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_uv_offset); +BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) { + int hide = 0; - if (UV_SEL_TEST(luv, !swap)) { -hide = 1; -break; + if (!uvedit_face_visible_test(scene, ob, ima, efa)) { +continue; } -} -if (hide) { - /* note, a special case for edges could be used, - * for now edges act like verts and get flushed */ - if (use_face_center) { -if (em->selectmode == SCE_SELECT_FACE) { - /* check that every UV is selected */ - if (bm_face_is_all_uv_sel(efa, true, cd_loop_uv_offset) == !swap) { -BM_face_select_set(em->bm, efa, false); - } - uvedit_face_select_disable(scene, em, efa, cd_loop_uv_offset); + BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) { +luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_uv_offset); + +if (UV_SEL_TEST(luv, !swap)) { + hide = 1; + break; } -else { - if (bm_face_is_all_uv_sel(efa, true, cd_loop_uv_offset) == !swap) { -BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) { - luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_uv_offset); - if (UV_SEL_TEST(luv, !swap)) { -BM_vert_select_set(em->bm, l->v, false); + } + + if (hide) { +/* note, a special case for edges could be used, + * for now edges act like verts and get flushed */ +if (use_face_center) { + if (em->selectmode == SCE_SELECT_FACE) { +/* check that every UV is selected */ +if (bm_face_is_all_uv_sel(efa, true, cd_loop_uv_offset) == !swap) { + BM_face_select_set(em->bm, efa, false); +} +uvedit_face_select_disable(scene, em, efa, cd_loop_uv_offset); + } + else { +if (bm_face_is_all_uv_sel(efa, true, cd_loop_uv_offset) == !swap) { + BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) { +luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_
[Bf-blender-cvs] [c69a047b908] master: Merge branch 'blender-v2.83-release'
Commit: c69a047b908cd2898d5904dc64cb43a4ebd4f22b Author: Philipp Oeser Date: Wed Apr 22 14:23:00 2020 +0200 Branches: master https://developer.blender.org/rBc69a047b908cd2898d5904dc64cb43a4ebd4f22b Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [6c9a8823403] blender-v2.83-release: Fix T75964: changing object's viewport display color does not update cycles
Commit: 6c9a88234038f500c3e75472088f14dff05d073b Author: Philipp Oeser Date: Wed Apr 22 13:50:21 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB6c9a88234038f500c3e75472088f14dff05d073b Fix T75964: changing object's viewport display color does not update cycles Caused by rB00466e756e33. While that commit sounds logical, Cycles uses is_updated_transform() to detect updates. Now introduce is_updated_shading() and use that on top. Maniphest Tasks: T75964 Differential Revision: https://developer.blender.org/D7493 === M intern/cycles/blender/blender_sync.cpp M source/blender/makesrna/intern/rna_depsgraph.c === diff --git a/intern/cycles/blender/blender_sync.cpp b/intern/cycles/blender/blender_sync.cpp index 9e95cdb3f20..f4c100bcd2b 100644 --- a/intern/cycles/blender/blender_sync.cpp +++ b/intern/cycles/blender/blender_sync.cpp @@ -142,7 +142,7 @@ void BlenderSync::sync_recalc(BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d BL::Object b_ob(b_id); const bool updated_geometry = b_update->is_updated_geometry(); - if (b_update->is_updated_transform()) { + if (b_update->is_updated_transform() || b_update->is_updated_shading()) { object_map.set_recalc(b_ob); light_map.set_recalc(b_ob); } diff --git a/source/blender/makesrna/intern/rna_depsgraph.c b/source/blender/makesrna/intern/rna_depsgraph.c index 41c107b8d04..ca34f69ab1e 100644 --- a/source/blender/makesrna/intern/rna_depsgraph.c +++ b/source/blender/makesrna/intern/rna_depsgraph.c @@ -203,6 +203,12 @@ static bool rna_DepsgraphUpdate_is_updated_transform_get(PointerRNA *ptr) return ((id->recalc & ID_RECALC_TRANSFORM) != 0); } +static bool rna_DepsgraphUpdate_is_updated_shading_get(PointerRNA *ptr) +{ + ID *id = ptr->data; + return ((id->recalc & ID_RECALC_SHADING) != 0); +} + static bool rna_DepsgraphUpdate_is_updated_geometry_get(PointerRNA *ptr) { ID *id = ptr->data; @@ -601,6 +607,11 @@ static void rna_def_depsgraph_update(BlenderRNA *brna) RNA_def_property_clear_flag(prop, PROP_ANIMATABLE | PROP_EDITABLE); RNA_def_property_ui_text(prop, "Geometry", "Object geometry is updated"); RNA_def_property_boolean_funcs(prop, "rna_DepsgraphUpdate_is_updated_geometry_get", NULL); + + prop = RNA_def_property(srna, "is_updated_shading", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_clear_flag(prop, PROP_ANIMATABLE | PROP_EDITABLE); + RNA_def_property_ui_text(prop, "Shading", "Object shading is updated"); + RNA_def_property_boolean_funcs(prop, "rna_DepsgraphUpdate_is_updated_shading_get", NULL); } static void rna_def_depsgraph(BlenderRNA *brna) ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [a47a975a55e] master: Merge branch 'blender-v2.83-release'
Commit: a47a975a55e30257626dec6b70b8e8b2a08b563d Author: Philipp Oeser Date: Wed Apr 22 14:38:59 2020 +0200 Branches: master https://developer.blender.org/rBa47a975a55e30257626dec6b70b8e8b2a08b563d Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [0fbcb824d0f] blender-v2.83-release: Fix T76014: correct description of COLLECTION_OT_objects_remove_all
Commit: 0fbcb824d0ff1673ad186055a472b977406fb61d Author: Philipp Oeser Date: Thu Apr 23 10:43:16 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB0fbcb824d0ff1673ad186055a472b977406fb61d Fix T76014: correct description of COLLECTION_OT_objects_remove_all before rB17bd5c9d4b1e it was "Remove selected objects from all groups" - `BKE_object_groups_clear` is not checking if a collection is linked to the current scene... - rB713010bd7795 did not change that either So this indeed removes selection from _all_ collections, so account for that in the operator description/idname. Reviewers: brecht https://developer.blender.org/D7500 === M source/blender/editors/object/object_collection.c === diff --git a/source/blender/editors/object/object_collection.c b/source/blender/editors/object/object_collection.c index 7c12a4839f0..7554c4efeda 100644 --- a/source/blender/editors/object/object_collection.c +++ b/source/blender/editors/object/object_collection.c @@ -302,8 +302,8 @@ static int collection_objects_remove_all_exec(bContext *C, wmOperator *UNUSED(op void COLLECTION_OT_objects_remove_all(wmOperatorType *ot) { /* identifiers */ - ot->name = "Remove from All Unlinked Collections"; - ot->description = "Remove selected objects from all collections not used in a scene"; + ot->name = "Remove from All Collections"; + ot->description = "Remove selected objects from all collections"; ot->idname = "COLLECTION_OT_objects_remove_all"; /* api callbacks */ ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [7d98dfd6bb3] master: Merge branch 'blender-v2.83-release'
Commit: 7d98dfd6bb3921e661f5ba5adb04ffd9876395f1 Author: Philipp Oeser Date: Thu Apr 23 18:26:22 2020 +0200 Branches: master https://developer.blender.org/rB7d98dfd6bb3921e661f5ba5adb04ffd9876395f1 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [536055e1ee0] blender-v2.83-release: remove "Select Linked" from the posemode select menu
Commit: 536055e1ee0b238d11a774625b0639e05730cd53 Author: Philipp Oeser Date: Mon Apr 27 12:42:16 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB536055e1ee0b238d11a774625b0639e05730cd53 remove "Select Linked" from the posemode select menu The operator in its current state is based on mouse position and doesnt make sense to be called from a menu. (In fact it should be called 'select_linked_pick' internally and a separate 'select_linked' should be implemented similar to how "Select Linked" works for meshes, curves etc -- see D7542 for this) Note: We had the same thing for particles recently: rBdd9dfadaac9b: remove "Select Linked" from the particle select and context menu rB5ca7c85e105d: Particle editmode: add mouse independent "Select Linked" operator Fixes T76071 Maniphest Tasks: T76071 Differential Revision: https://developer.blender.org/D7543 === M release/scripts/startup/bl_ui/space_view3d.py === diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index 5d47566d880..c0a786d9658 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -1469,7 +1469,6 @@ class VIEW3D_MT_select_pose(Menu): layout.separator() layout.operator("pose.select_constraint_target", text="Constraint Target") -layout.operator("pose.select_linked", text="Linked") layout.separator() ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [7c782b8f277] master: Merge branch 'blender-v2.83-release'
Commit: 7c782b8f277384525f32b459c72c7559dc4f8038 Author: Philipp Oeser Date: Mon Apr 27 16:13:44 2020 +0200 Branches: master https://developer.blender.org/rB7c782b8f277384525f32b459c72c7559dc4f8038 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [8f289196cfd] blender-v2.83-release: Fix T76111: UV editor's View Selected not working in multiobject editing
Commit: 8f289196cfd8c6f5ca8700576d9b5e011bdc8e5a Author: Philipp Oeser Date: Sun Apr 26 11:56:10 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB8f289196cfd8c6f5ca8700576d9b5e011bdc8e5a Fix T76111: UV editor's View Selected not working in multiobject editing Seems like this was left out when UV operators were converted to multi- object-editing, ref T54645. Maniphest Tasks: T76111, T54645 Differential Revision: https://developer.blender.org/D7537 === M source/blender/editors/space_image/image_ops.c === diff --git a/source/blender/editors/space_image/image_ops.c b/source/blender/editors/space_image/image_ops.c index 992727e3b11..c2054756795 100644 --- a/source/blender/editors/space_image/image_ops.c +++ b/source/blender/editors/space_image/image_ops.c @@ -58,6 +58,7 @@ #include "BKE_icons.h" #include "BKE_image.h" #include "BKE_image_save.h" +#include "BKE_layer.h" #include "BKE_lib_id.h" #include "BKE_main.h" #include "BKE_packedFile.h" @@ -898,7 +899,12 @@ static int image_view_selected_exec(bContext *C, wmOperator *UNUSED(op)) /* get bounds */ float min[2], max[2]; if (ED_space_image_show_uvedit(sima, obedit)) { -if (!ED_uvedit_minmax(scene, ima, obedit, min, max)) { +uint objects_len = 0; +Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs( +view_layer, ((View3D *)NULL), &objects_len); +bool success = ED_uvedit_minmax_multi(scene, ima, objects, objects_len, min, max); +MEM_freeN(objects); +if (!success) { return OPERATOR_CANCELLED; } } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [b6592c83b54] master: Merge branch 'blender-v2.83-release'
Commit: b6592c83b5490f154f27de22e34effa2617a5847 Author: Philipp Oeser Date: Mon Apr 27 16:26:59 2020 +0200 Branches: master https://developer.blender.org/rBb6592c83b5490f154f27de22e34effa2617a5847 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [4fd005fefb0] blender-v2.83-release: Fix T76131: Crash combing Hair using Python
Commit: 4fd005fefb014a8570747b1d043de7d610078b46 Author: Philipp Oeser Date: Mon Apr 27 11:37:20 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB4fd005fefb014a8570747b1d043de7d610078b46 Fix T76131: Crash combing Hair using Python Caused by rBe82827bf6ed5. DRW_draw_depth_object calls DRW_mesh_batch_cache_create_requested with NULL scene, but that is accessed later on... Scene is actually available, so pass that around. Maniphest Tasks: T76131 Differential Revision: https://developer.blender.org/D7540 === M source/blender/draw/DRW_engine.h M source/blender/draw/intern/draw_cache_extract_mesh.c M source/blender/draw/intern/draw_manager.c M source/blender/editors/space_view3d/view3d_draw.c === diff --git a/source/blender/draw/DRW_engine.h b/source/blender/draw/DRW_engine.h index 7ecf9df275d..1bdc3bc5a03 100644 --- a/source/blender/draw/DRW_engine.h +++ b/source/blender/draw/DRW_engine.h @@ -118,7 +118,8 @@ void DRW_draw_depth_loop_gpencil(struct Depsgraph *depsgraph, struct ARegion *region, struct View3D *v3d, struct GPUViewport *viewport); -void DRW_draw_depth_object(struct ARegion *region, +void DRW_draw_depth_object(struct Scene *scene, + struct ARegion *region, struct View3D *v3d, struct GPUViewport *viewport, struct Object *object); diff --git a/source/blender/draw/intern/draw_cache_extract_mesh.c b/source/blender/draw/intern/draw_cache_extract_mesh.c index 4c51ed99f2c..40687306b4e 100644 --- a/source/blender/draw/intern/draw_cache_extract_mesh.c +++ b/source/blender/draw/intern/draw_cache_extract_mesh.c @@ -4540,6 +4540,7 @@ static void extract_task_create(TaskPool *task_pool, void *buf, int32_t *task_counter) { + BLI_assert(scene != NULL); const bool do_hq_normals = (scene->r.perf_flag & SCE_PERF_HQ_NORMALS) != 0; if (do_hq_normals && (extract == &extract_lnor)) { extract = &extract_lnor_hq; diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c index 51222d833c2..7bc3dcfab81 100644 --- a/source/blender/draw/intern/draw_manager.c +++ b/source/blender/draw/intern/draw_manager.c @@ -2430,7 +2430,7 @@ static void draw_world_clip_planes_from_rv3d(GPUBatch *batch, const float world_ /** * Clears the Depth Buffer and draws only the specified object. */ -void DRW_draw_depth_object(ARegion *region, View3D *v3d, GPUViewport *viewport, Object *object) +void DRW_draw_depth_object(Scene *scene, ARegion *region, View3D *v3d, GPUViewport *viewport, Object *object) { RegionView3D *rv3d = region->regiondata; @@ -2468,7 +2468,7 @@ void DRW_draw_depth_object(ARegion *region, View3D *v3d, GPUViewport *viewport, batch = DRW_mesh_batch_cache_get_surface(me); } - DRW_mesh_batch_cache_create_requested(object, me, NULL, false, true); + DRW_mesh_batch_cache_create_requested(object, me, scene, false, true); const eGPUShaderConfig sh_cfg = world_clip_planes ? GPU_SHADER_CFG_CLIPPED : GPU_SHADER_CFG_DEFAULT; diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c index c1995249c26..e58559f4f6b 100644 --- a/source/blender/editors/space_view3d/view3d_draw.c +++ b/source/blender/editors/space_view3d/view3d_draw.c @@ -2217,7 +2217,7 @@ void ED_view3d_backbuf_depth_validate(ViewContext *vc) if (obact_eval && ((obact_eval->base_flag & BASE_VISIBLE_DEPSGRAPH) != 0)) { GPUViewport *viewport = WM_draw_region_get_viewport(region); - DRW_draw_depth_object(vc->region, vc->v3d, viewport, obact_eval); + DRW_draw_depth_object(vc->scene, vc->region, vc->v3d, viewport, obact_eval); } vc->v3d->flag &= ~V3D_INVALID_BACKBUF; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [4119e9c60b9] master: Merge branch 'blender-v2.83-release'
Commit: 4119e9c60b94a9ce1f00860db3f2cbd62c55cf4f Author: Philipp Oeser Date: Mon Apr 27 16:46:17 2020 +0200 Branches: master https://developer.blender.org/rB4119e9c60b94a9ce1f00860db3f2cbd62c55cf4f Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [995611640ec] blender-v2.83-release: Cleanup: clang format
Commit: 995611640ec1272abdbff846509c6ee1b1b76b67 Author: Philipp Oeser Date: Mon Apr 27 16:55:59 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB995611640ec1272abdbff846509c6ee1b1b76b67 Cleanup: clang format missed in rB4fd005fefb01. === M source/blender/draw/intern/draw_manager.c === diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c index 7bc3dcfab81..28c8570e897 100644 --- a/source/blender/draw/intern/draw_manager.c +++ b/source/blender/draw/intern/draw_manager.c @@ -2430,7 +2430,8 @@ static void draw_world_clip_planes_from_rv3d(GPUBatch *batch, const float world_ /** * Clears the Depth Buffer and draws only the specified object. */ -void DRW_draw_depth_object(Scene *scene, ARegion *region, View3D *v3d, GPUViewport *viewport, Object *object) +void DRW_draw_depth_object( +Scene *scene, ARegion *region, View3D *v3d, GPUViewport *viewport, Object *object) { RegionView3D *rv3d = region->regiondata; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5559edf3c7b] master: Merge branch 'blender-v2.83-release'
Commit: 5559edf3c7b854186d2e6cd9c5a492c15df77072 Author: Philipp Oeser Date: Mon Apr 27 16:57:58 2020 +0200 Branches: master https://developer.blender.org/rB5559edf3c7b854186d2e6cd9c5a492c15df77072 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [fbae4c5ba3f] blender-v2.83-release: Fix T74700: "Convert Text to Curve" disregards "Text on Curve"
Commit: fbae4c5ba3f6836b6223888de2fe346865acde31 Author: Philipp Oeser Date: Mon Apr 27 17:35:35 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rBfbae4c5ba3f6836b6223888de2fe346865acde31 Fix T74700: "Convert Text to Curve" disregards "Text on Curve" There was an assert here as well since using the original object to read from was having an empty runtime curve cache. Now use BKE_vfont_to_curve_ex instead of BKE_vfont_to_curve, so we can read from the evaluated object and write to the original curves in order to have the modified data taken into account on next object evaluation. (BKE_vfont_to_curve would read and write to/from the same object) Final solution provided by @sergey in that report, thx! === M source/blender/editors/object/object_add.c === diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index 9119d1cac86..9e0a6d51614 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -2380,13 +2380,8 @@ static int convert_exec(bContext *C, wmOperator *op) cu = newob->data; - /* TODO(sergey): Ideally DAG will create nurbs list for a curve data - * datablock, but for until we've got granular update - * lets take care by selves. - */ - /* XXX This may fail/crash, since BKE_vfont_to_curve() - * accesses evaluated data in some cases (bastien). */ - BKE_vfont_to_curve(newob, FO_EDIT); + Object *ob_eval = DEG_get_evaluated_object(depsgraph, ob); + BKE_vfont_to_curve_ex(ob_eval, ob_eval->data, FO_EDIT, &cu->nurb, NULL, NULL, NULL, NULL); newob->type = OB_CURVE; cu->type = OB_CURVE; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [5f3990d69ae] master: Merge branch 'blender-v2.83-release'
Commit: 5f3990d69aed57d9f18b82d3f78f4932d144cf3a Author: Philipp Oeser Date: Mon Apr 27 18:15:47 2020 +0200 Branches: master https://developer.blender.org/rB5f3990d69aed57d9f18b82d3f78f4932d144cf3a Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [94c514cf34c] master: Merge branch 'blender-v2.83-release'
Commit: 94c514cf34c745bd2865040245c7ab192290353b Author: Philipp Oeser Date: Mon Apr 27 18:32:32 2020 +0200 Branches: master https://developer.blender.org/rB94c514cf34c745bd2865040245c7ab192290353b Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [475bd6b829c] blender-v2.83-release: Fix T76179: Unable to select render passes when a render has fewer passes than one in another slot
Commit: 475bd6b829c38966b0fd4fdaff2eb61cc71c46c4 Author: Philipp Oeser Date: Tue Apr 28 12:59:23 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB475bd6b829c38966b0fd4fdaff2eb61cc71c46c4 Fix T76179: Unable to select render passes when a render has fewer passes than one in another slot If a particular pass is not available in a slot we are switching to, still show the menu, but with a blank name for the currently selected item so that the user can change it to a valid value. thx @brecht for providing the standard way Blender deals with these kinds of situations. Maniphest Tasks: T76179 Differential Revision: https://developer.blender.org/D7552 === M source/blender/editors/space_image/image_buttons.c === diff --git a/source/blender/editors/space_image/image_buttons.c b/source/blender/editors/space_image/image_buttons.c index 3658ebae3a2..fcd6baa9582 100644 --- a/source/blender/editors/space_image/image_buttons.c +++ b/source/blender/editors/space_image/image_buttons.c @@ -656,8 +656,8 @@ static void uiblock_layer_pass_buttons( /* pass */ rpass = (rl ? BLI_findlink(&rl->passes, iuser->pass) : NULL); -if (rpass && RE_passes_have_name(rl)) { - display_name = rpass->name; +if (RE_passes_have_name(rl)) { + display_name = rpass ? rpass->name : ""; rnd_pt = ui_imageuser_data_copy(&rnd_pt_local); but = uiDefMenuBut(block, ui_imageuser_pass_menu, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [7bc4a436a08] master: Merge branch 'blender-v2.83-release'
Commit: 7bc4a436a0811dd8822c5c77f28aac81e64277b8 Author: Philipp Oeser Date: Tue Apr 28 17:18:01 2020 +0200 Branches: master https://developer.blender.org/rB7bc4a436a0811dd8822c5c77f28aac81e64277b8 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [3af52c6ec3a] master: Merge branch 'blender-v2.83-release'
Commit: 3af52c6ec3aad18e544c30944c472294d905b8d0 Author: Philipp Oeser Date: Wed Apr 29 10:27:42 2020 +0200 Branches: master https://developer.blender.org/rB3af52c6ec3aad18e544c30944c472294d905b8d0 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [e07b245fe1f] blender-v2.83-release: Armature posemode: add mouse independent "Select Linked" operator
Commit: e07b245fe1f41cab13d772c3e26adc2521126324 Author: Philipp Oeser Date: Mon Apr 27 15:41:22 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rBe07b245fe1f41cab13d772c3e26adc2521126324 Armature posemode: add mouse independent "Select Linked" operator The current "Select Linked" operator works based on mouse position and makes no sense to call from the menus and was removed in rB536055e1ee0b. This patch adds an operator independent from mouse position that just selects all bones in relation to selected bones (and adds back menu entries, adds keymap entry CTRL+L). The original operator is renamed to 'select_linked_pick' internally (this is now more in line to how "Select Linked" works for meshes, curves etc) ref T76071 Maniphest Tasks: T76071 Differential Revision: https://developer.blender.org/D7542 === M release/scripts/presets/keyconfig/keymap_data/blender_default.py M release/scripts/startup/bl_ui/space_view3d.py M source/blender/editors/armature/armature_intern.h M source/blender/editors/armature/armature_ops.c M source/blender/editors/armature/pose_select.c === diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py index 7be6ddb5bca..07916fa9799 100644 --- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py +++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py @@ -3859,7 +3859,8 @@ def km_pose(params): {"properties": [("direction", 'CHILD'), ("extend", False)]}), ("pose.select_hierarchy", {"type": 'RIGHT_BRACKET', "value": 'PRESS', "shift": True}, {"properties": [("direction", 'CHILD'), ("extend", True)]}), -("pose.select_linked", {"type": 'L', "value": 'PRESS'}, None), +("pose.select_linked", {"type": 'L', "value": 'PRESS', "ctrl": True}, None), +("pose.select_linked_pick", {"type": 'L', "value": 'PRESS'}, None), ("pose.select_grouped", {"type": 'G', "value": 'PRESS', "shift": True}, None), ("pose.select_mirror", {"type": 'M', "value": 'PRESS', "shift": True, "ctrl": True}, None), ("pose.constraint_add_with_targets", {"type": 'C', "value": 'PRESS', "shift": True, "ctrl": True}, None), diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index c0a786d9658..5d47566d880 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -1469,6 +1469,7 @@ class VIEW3D_MT_select_pose(Menu): layout.separator() layout.operator("pose.select_constraint_target", text="Constraint Target") +layout.operator("pose.select_linked", text="Linked") layout.separator() diff --git a/source/blender/editors/armature/armature_intern.h b/source/blender/editors/armature/armature_intern.h index 3d41fd5f0c6..08d82bf13c9 100644 --- a/source/blender/editors/armature/armature_intern.h +++ b/source/blender/editors/armature/armature_intern.h @@ -104,6 +104,7 @@ void POSE_OT_select_all(struct wmOperatorType *ot); void POSE_OT_select_parent(struct wmOperatorType *ot); void POSE_OT_select_hierarchy(struct wmOperatorType *ot); void POSE_OT_select_linked(struct wmOperatorType *ot); +void POSE_OT_select_linked_pick(struct wmOperatorType *ot); void POSE_OT_select_constraint_target(struct wmOperatorType *ot); void POSE_OT_select_grouped(struct wmOperatorType *ot); void POSE_OT_select_mirror(struct wmOperatorType *ot); diff --git a/source/blender/editors/armature/armature_ops.c b/source/blender/editors/armature/armature_ops.c index b304ce92a54..da1b29307b1 100644 --- a/source/blender/editors/armature/armature_ops.c +++ b/source/blender/editors/armature/armature_ops.c @@ -100,6 +100,7 @@ void ED_operatortypes_armature(void) WM_operatortype_append(POSE_OT_select_parent); WM_operatortype_append(POSE_OT_select_hierarchy); WM_operatortype_append(POSE_OT_select_linked); + WM_operatortype_append(POSE_OT_select_linked_pick); WM_operatortype_append(POSE_OT_select_constraint_target); WM_operatortype_append(POSE_OT_select_grouped); WM_operatortype_append(POSE_OT_select_mirror); diff --git a/source/blender/editors/
[Bf-blender-cvs] [fed5e0ca04b] master: Merge branch 'blender-v2.83-release'
Commit: fed5e0ca04b155d9e5ee4a1f64b0a2cac5c4e762 Author: Philipp Oeser Date: Wed Apr 29 11:10:24 2020 +0200 Branches: master https://developer.blender.org/rBfed5e0ca04b155d9e5ee4a1f64b0a2cac5c4e762 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [08048f7cceb] blender-v2.83-release: Fix T75810: Child bone frozen when both Auto IK and X-Axis mirror are used
Commit: 08048f7cceb82826bb520a2ca04f0bc38271faa9 Author: Philipp Oeser Date: Tue Apr 28 19:20:07 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB08048f7cceb82826bb520a2ca04f0bc38271faa9 Fix T75810: Child bone frozen when both Auto IK and X-Axis mirror are used Caused by {rBa6a9a12e8f32} Other relevant commits: rBb8ca806b7798e2f8dd6effca8f0d081b3cd8c23f rBde530a95dc7b482dc22c933b9b8b2a98c79b5663 The issue is caused by some leftover BONE_TRANSFORM_MIRROR flags on a bone from previous runs (file in the report had the flag still on forearm.R). With these false leftover flags still set, `pose_grab_with_ik()` cannot work correctly. Culprit commit above removed the early clearing of this flag on all bones, this should be restored [this happened in `count_set_pose_transflags()`]. This should only be done in the beginning of the transform process, so now still clear the flags early in 'createTransPose()' [but dont restore this in 'count_set_pose_transflags()' -- this will be called from special_aftertrans_update again, so placing the clearance here only complicates things (autokeyframe_pose() still needs to work as well)...] Maniphest Tasks: T75810 Differential Revision: https://developer.blender.org/D7527 === M source/blender/editors/transform/transform_convert_armature.c === diff --git a/source/blender/editors/transform/transform_convert_armature.c b/source/blender/editors/transform/transform_convert_armature.c index 91b8b1ff657..779257ef671 100644 --- a/source/blender/editors/transform/transform_convert_armature.c +++ b/source/blender/editors/transform/transform_convert_armature.c @@ -685,6 +685,9 @@ void createTransPose(TransInfo *t) if (mirror) { int total_mirrored = 0; LISTBASE_FOREACH (bPoseChannel *, pchan, &ob->pose->chanbase) { +/* Clear the MIRROR flag from previous runs. */ +pchan->bone->flag &= ~BONE_TRANSFORM_MIRROR; + if ((pchan->bone->flag & BONE_TRANSFORM) && BKE_pose_channel_get_mirrored(ob->pose, pchan->name)) { total_mirrored++; ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [657188c1a24] master: Merge branch 'blender-v2.83-release'
Commit: 657188c1a240eececd4aec95f97fe1b96c140070 Author: Philipp Oeser Date: Wed Apr 29 11:25:08 2020 +0200 Branches: master https://developer.blender.org/rB657188c1a240eececd4aec95f97fe1b96c140070 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [2845b232a77] blender-v2.83-release: Fix T75522: Math node truncate operator tooltip provides no explanation
Commit: 2845b232a77d37733b20aafd366cf0f2533aff43 Author: Philipp Oeser Date: Mon Apr 27 18:49:43 2020 +0200 Branches: blender-v2.83-release https://developer.blender.org/rB2845b232a77d37733b20aafd366cf0f2533aff43 Fix T75522: Math node truncate operator tooltip provides no explanation === M release/scripts/modules/bl_i18n_utils/settings.py M source/blender/makesrna/intern/rna_nodetree.c === diff --git a/release/scripts/modules/bl_i18n_utils/settings.py b/release/scripts/modules/bl_i18n_utils/settings.py index c736f78d501..c233681dc41 100644 --- a/release/scripts/modules/bl_i18n_utils/settings.py +++ b/release/scripts/modules/bl_i18n_utils/settings.py @@ -377,7 +377,6 @@ WARN_MSGID_NOT_CAPITALIZED_ALLOWED = { "normal", "right", "the lazy dog", -"trunc(A)", "unable to load movie clip", "unable to load text", "unable to open the file", diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c index 31d6ff80f34..71b3f1ee94b 100644 --- a/source/blender/makesrna/intern/rna_nodetree.c +++ b/source/blender/makesrna/intern/rna_nodetree.c @@ -174,7 +174,7 @@ const EnumPropertyItem rna_enum_node_math_items[] = { "Round A to the nearest integer. Round upward if the fraction part is 0.5"}, {NODE_MATH_FLOOR, "FLOOR", 0, "Floor", "The largest integer smaller than or equal A"}, {NODE_MATH_CEIL, "CEIL", 0, "Ceil", "The smallest integer greater than or equal A"}, -{NODE_MATH_TRUNC, "TRUNC", 0, "Truncate", "trunc(A)"}, +{NODE_MATH_TRUNC, "TRUNC", 0, "Truncate", "The integer part of A, removing fractional digits"}, {0, "", ICON_NONE, NULL, NULL}, {NODE_MATH_FRACTION, "FRACT", 0, "Fraction", "The fraction part of A"}, {NODE_MATH_MODULO, "MODULO", 0, "Modulo", "Modulo using fmod(A,B)"}, ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] [980cebc459f] master: Merge branch 'blender-v2.83-release'
Commit: 980cebc459fb1990b216b5c5c0935b30f10fedf7 Author: Philipp Oeser Date: Wed Apr 29 11:44:56 2020 +0200 Branches: master https://developer.blender.org/rB980cebc459fb1990b216b5c5c0935b30f10fedf7 Merge branch 'blender-v2.83-release' === === ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs