[Bf-blender-cvs] [dee9c3cc254] blender-v2.82-release: UI: pose X-ray state wasn't shown in the header

Campbell Barton noreply at git.blender.org
Wed Jan 29 06:59:38 CET 2020


Commit: dee9c3cc25419146bd38016f0e2ec98eea282962
Author: Campbell Barton
Date:   Wed Jan 29 16:56:21 2020 +1100
Branches: blender-v2.82-release
https://developer.blender.org/rBdee9c3cc25419146bd38016f0e2ec98eea282962

UI: pose X-ray state wasn't shown in the header

===================================================================

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 02dc03be127..3a3869068b0 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -621,15 +621,19 @@ class VIEW3D_HT_header(Header):
         tool_settings = context.tool_settings
         view = context.space_data
         shading = view.shading
-        # mode_string = context.mode
-        obj = context.active_object
         show_region_tool_header = view.show_region_tool_header
 
         if not show_region_tool_header:
             layout.row(align=True).template_header()
 
         row = layout.row(align=True)
+        obj = context.active_object
+        # mode_string = context.mode
         object_mode = 'OBJECT' if obj is None else obj.mode
+        has_pose_mode = (
+            (object_mode == 'POSE') or
+            (object_mode == 'WEIGHT_PAINT' and context.pose_object is not None)
+        )
 
         # Note: This is actually deadly in case enum_items have to be dynamically generated
         #       (because internal RNA array iterator will free everything immediately...).
@@ -780,10 +784,13 @@ class VIEW3D_HT_header(Header):
             "view3d.toggle_xray",
             text="",
             icon='XRAY',
-            depress=getattr(
-                shading,
-                "show_xray_wireframe" if shading.type == 'WIREFRAME' else
-                "show_xray"
+            depress=(
+                overlay.show_xray_bone if has_pose_mode else
+                getattr(
+                    shading,
+                    "show_xray_wireframe" if shading.type == 'WIREFRAME' else
+                    "show_xray"
+                )
             ),
         )



More information about the Bf-blender-cvs mailing list