Merge branch 'blender-v4.0-release' into main

This commit is contained in:
Brecht Van Lommel
2023-10-04 21:32:13 +02:00
8 changed files with 17 additions and 10 deletions

View File

@@ -467,22 +467,22 @@ class ARMATURE_OT_sync_bone_color_to_selected(Operator):
return context.mode in {'EDIT_ARMATURE', 'POSE'}
def execute(self, context):
match (self.bone_type, context.mode):
match(self.bone_type, context.mode):
# Armature in edit mode:
case ('POSE', 'EDIT_ARMATURE'):
case('POSE', 'EDIT_ARMATURE'):
self.report({'ERROR'}, "Go to pose mode to copy pose bone colors")
return {'OPERATOR_CANCELLED'}
case ('EDIT', 'EDIT_ARMATURE'):
case('EDIT', 'EDIT_ARMATURE'):
bone_source = context.active_bone
bones_dest = context.selected_bones
pose_bones_to_check = []
# Armature in pose mode:
case ('POSE', 'POSE'):
case('POSE', 'POSE'):
bone_source = context.active_pose_bone
bones_dest = context.selected_pose_bones
pose_bones_to_check = []
case ('EDIT', 'POSE'):
case('EDIT', 'POSE'):
bone_source = context.active_bone
pose_bones_to_check = context.selected_pose_bones
bones_dest = [posebone.bone for posebone in pose_bones_to_check]

View File

@@ -428,6 +428,7 @@ class SimulationZoneItemMoveOperator(SimulationZoneOperator, ZoneMoveItemOperato
bl_label = "Move State Item"
bl_options = {'REGISTER', 'UNDO'}
class RepeatZoneOperator(ZoneOperator):
input_node_type = 'GeometryNodeRepeatInput'
output_node_type = 'GeometryNodeRepeatOutput'

View File

@@ -1000,6 +1000,7 @@ def draw_socket_item_in_list(uilist, layout, item, icon):
layout.alignment = 'CENTER'
layout.template_node_socket(color=item.color)
class NODE_UL_simulation_zone_items(bpy.types.UIList):
def draw_item(self, context, layout, _data, item, icon, _active_data, _active_propname, _index):
draw_socket_item_in_list(self, layout, item, icon)

View File

@@ -964,7 +964,6 @@ class SEQUENCER_MT_strip_retiming(Menu):
)
class SEQUENCER_MT_strip(Menu):
bl_label = "Strip"

View File

@@ -1432,7 +1432,10 @@ static void write_file_main_validate_pre(Main *bmain, ReportList *reports)
return;
}
BKE_report(reports, RPT_DEBUG, "Checking validity of current .blend file *BEFORE* save to disk");
if (G.debug & G_DEBUG_IO) {
BKE_report(
reports, RPT_DEBUG, "Checking validity of current .blend file *BEFORE* save to disk");
}
BLO_main_validate_shapekeys(bmain, reports);
if (!BKE_main_namemap_validate_and_fix(bmain)) {

View File

@@ -27,7 +27,7 @@ static std::unique_ptr<SocketDeclaration> socket_declaration_for_repeat_item(
{
const eNodeSocketDatatype socket_type = eNodeSocketDatatype(item.socket_type);
BLI_assert(RepeatItemsAccessor::supports_socket_type(socket_type));
std::unique_ptr<SocketDeclaration> decl = make_declaration_for_socket_type(socket_type);
BLI_assert(decl);

View File

@@ -24,7 +24,10 @@ class TestBlendFileOpenAllTestFiles(TestHelper):
"explode_modifier.blend",
# tests/depsgraph/deg_anim_camera_dof_driving_material.blend
# ERROR (bke.fcurve): source/blender/blenkernel/intern/fcurve_driver.cc:188 dtar_get_prop_val: Driver Evaluation Error: cannot resolve target for OBCamera -> data.dof_distance
# ERROR (bke.fcurve):
# source/blender/blenkernel/intern/fcurve_driver.cc:188 dtar_get_prop_val:
# Driver Evaluation Error: cannot resolve target for OBCamera ->
# data.dof_distance
"deg_anim_camera_dof_driving_material.blend",
# tests/depsgraph/deg_driver_shapekey_same_datablock.blend

View File

@@ -2135,7 +2135,7 @@ def main() -> int:
verbose_edit_actions = False
verbose_all_from_args = args.verbose.split(",") if args.verbose else []
while verbose_all_from_args:
match (verbose_id := verbose_all_from_args.pop()):
match(verbose_id := verbose_all_from_args.pop()):
case "compile":
verbose_compile = True
case "edit_actions":