work: update FA maya config pro

This commit is contained in:
Nathan
2026-06-16 10:20:09 -06:00
parent 6c3b78075b
commit 6ff69f0080
19 changed files with 190 additions and 45 deletions
+8 -8
View File
@@ -10,13 +10,13 @@ D:\Work\9 iClone\Amazon\
D:\Amazon\00_external-files\
N:\1. CHARACTERS\remapping\
[Recent]
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\actor\
C:\Users\Nathan\AppData\Local\Temp\
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Ref\actor\
A:\1 Amazon_Active_Projects\260512_Agile_Gemba\Blends\animations\
P:\260423_MukBuddy\Blends\animations\
F:\renders\
C:\Users\Nathan\Downloads\
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Deliverable\Stills\
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\
A:\1 Amazon_Active_Projects\260513_FSAF_edits_2026\Blends\stills\
N:\1. CHARACTERS\remapping\
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Blends\stills\img-BG\
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Blends\stills\
T:\1 BlenderAssets\
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Blends\animations\
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Assets\Blends\
+2 -2
View File
@@ -1,9 +1,9 @@
{
"flamenco_version": {
"version": "3.10-alpha0 (0c2ec48d)",
"version": "3.10-alpha0 (b5e531ae)",
"shortversion": "3.10-alpha0",
"name": "Flamenco",
"git": "0c2ec48d"
"git": "b5e531ae"
},
"shared_storage": {
"location": "F:\\jobs",
+25 -25
View File
@@ -1,8 +1,32 @@
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\actor\FlowCSA_actor_3a.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Assets\Blends\GRAPHS_TEST_GW.blend
C:\Users\Nathan\AppData\Local\Temp\2026-06-15_17-25_FlowCSA_actor_3a.blend
C:\Users\Nathan\AppData\Local\Temp\2026-06-15_17-27_FlowCSA_actor_3a.blend
A:\1 Amazon_Active_Projects\260512_Agile_Gemba\Blends\animations\gembawalk_horizontal_animation_4b.blend
F:\jobs\gembawalk_horizontal_animation_4b\gembawalk_horizontal_animation_4b.flamenco.blend
A:\1 Amazon_Active_Projects\260512_Agile_Gemba\Blends\animations\gembawalk_horizontal_animation_4a.blend
F:\jobs\HamperSensorEye_animation 1C\HamperSensorEye_animation 1C.flamenco.blend
P:\260423_MukBuddy\Blends\animations\Pak Buddy Animation_v2_red.blend
P:\260423_MukBuddy\Blends\animations\Pak Buddy Animation_v2_vert.blend
P:\260423_MukBuddy\Blends\animations\Pak Buddy Animation_v2.blend
F:\jobs\FlowCSA_360_1aD-g64a\FlowCSA_360_1aD.blend
F:\jobs\FlowCSA_360_1aD-80jq\FlowCSA_360_1aD.blend
F:\jobs\FlowCSA_360_1aD-vxbv\FlowCSA_360_1aD.blend
C:\Users\Nathan\Downloads\FlowCSA_360_1aD.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aD.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1bA_opening_1.blend
F:\jobs\FlowCSA_360_1bA_opening_1\FlowCSA_360_1bA_opening_1.flamenco.blend
F:\jobs\FlowCSA_360_1bA_opening_1-zlpm\FlowCSA_360_1bA_opening_1.flamenco.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aC.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aB.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aA.blend
A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\Set-Dressing\Package_path_v1.0.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_2aB.blend
F:\jobs\FlowCSA_360_2aB\FlowCSA_360_2aB.flamenco.blend
F:\jobs\FlowCSA_360_1aC\FlowCSA_360_1aC.blend
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\iNonConSplitPickcart_4b.blend
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\iNonConSplitPickcart_4a.blend
A:\1 Amazon_Active_Projects\260513_FSAF_edits_2026\Blends\stills\iAmbassadorM2_3.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aB.blend
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\iNonConSplitPickcart_3b.blend
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\iNonConSplitPickcart_3a.blend
A:\1 Amazon_Active_Projects\260528_NonConSplitPickcart\Blends\stills\iNonConSplitPickcart_3.blend
@@ -37,7 +61,6 @@ A:\1 Amazon_Active_Projects\260526_Walker_Leader\Blends\animations\Walker_AP_ani
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Assets\Blends\Delivery_Truck_Openable_v1.1.blend
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Assets\Blends\Delivery_Truck_Openable.blend
A:\1 Amazon_Active_Projects\260526_Walker_Leader\Blends\stills\iWalker_AP_4.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1aA.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Assets\Blends\lipsync.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1a.blend
A:\1 Amazon_Active_Projects\260506_Safety_School_Transformation_2026\Blends\animations\SS_2026_animation_5c.blend
@@ -73,7 +96,6 @@ A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\Char\Cartoon3\Ren_v1.2.blend
A:\1 Amazon_Active_Projects\260506_Safety_School_Transformation_2026\Blends\animations\SS_2026_animation_8cB.blend
A:\1 Amazon_Active_Projects\260506_Safety_School_Transformation_2026\Blends\animations\SS_2026_animation_15bB.blend
A:\1 Amazon_Active_Projects\260506_Safety_School_Transformation_2026\Blends\animations\SS_2026_animation_8cB_vertical.blend
P:\260423_MukBuddy\Blends\animations\Pak Buddy Animation_v2_vert.blend
C:\Users\Nathan\AppData\Local\Temp\bat-ss2026-2b-pack\_outside_project\A\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\Char\Cartoon1\Martha_v4.4.blend
F:\jobs\FlowCSA_360_1bD-7c6o\_outside_project\A\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\Char\Cartoon3\Bebe_v1.2.blend
A:\1 Amazon_Active_Projects\260420_FLOW_2026\Blends\animations\FlowCSA_360_1bD.blend
@@ -176,25 +198,3 @@ A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\i_noncon_OOG_9k.ble
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\HAT\HAT_i_noncon_OOG_9k.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\SOM\SOM_i_noncon_OOG_9m.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\i_noncon_OOG_9m.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\i_noncon_OOG_9l.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\HAT\HAT_i_noncon_OOG_9m.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\SOM\SOM_i_noncon_OOG_9l.blend
A:\1 Amazon_Active_Projects\260317_NONCON_2026\Blends\stills\HAT\HAT_i_noncon_OOG_9l.blend
A:\1 Amazon_Active_Projects\260422_Upstream_edits_2026\Blends\animations\UP_M4_S01_b.blend
A:\1 Amazon_Active_Projects\260422_Upstream_edits_2026\Blends\animations\UP_M4_S01_c.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_30b.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_31a.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_26.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_22b.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_21.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_22_a.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\iP&S2025_19.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\stills\2025_old\i22.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\animations\2025_old\Ambassador_M3_A4_picker_s1.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\animations\2025_old\Ambassador_M3_A4_picker_s3.blend
C:\Users\Nathan\Downloads\Ambassador_M3_A4_picker_s3.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\animations\2025_old\Ambassador_M3_A4_coach-s2.blend
A:\1 Amazon_Active_Projects\260127_Pick-and-Stage_2026_edits\Blends\animations\2025_old\Ambassador_M3_A4_coach-s1.blend
A:\1 Amazon_Active_Projects\260422_Upstream_edits_2026\Blends\animations\M4\UP_M4_S01_2hands.blend
G:\Amazon\2024\240402_Amazon_Coaching&Upstream\Upstream\blends\mod 4\UP_M4_S01.blend
G:\Amazon\2024\240402_Amazon_Coaching&Upstream\Upstream\blends\mod 4\UP_M4_S01_2hands.blend
Binary file not shown.
BIN
View File
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
{
"last_check": "2026-05-27 14:41:11.263249",
"last_check": "2026-06-15 10:23:39.203210",
"backup_date": "May-27-2026",
"update_ready": false,
"ignore": false,
@@ -2,6 +2,11 @@
All notable changes to **Maya Config Pro** are listed here. Versions match `blender_manifest.toml`.
## [1.8.1] — 2026-06-16
### Fixed
- **Node Editor:** Alt+RMB drag works for **Node Wrangler Lazy Connect** again (FA Hotkeys + Blender default). Disabled conflicting `node.backimage_sample` and `node.move_detach_links_release` bindings; runtime patch applies on preset switch and add-on load.
## [1.8.0] — 2026-04-22
### WIP — Animation shelf (3D View)
@@ -2,7 +2,7 @@
Maya Config Pro - Blender Extension
A Maya-like configuration, shortcuts, and UI elements for Blender.
Version: 1.8.0
Version: 1.8.1
Author: Form Affinity (Jesse Doyle)
"""
@@ -12,7 +12,7 @@ Author: Form Affinity (Jesse Doyle)
bl_info = {
"name": "Maya Config Pro",
"author": "Form Affinity (Jesse Doyle)",
"version": (1, 8, 0),
"version": (1, 8, 1),
"blender": (4, 2, 0),
"location": "View3D > Sidebar > Maya Config",
"description": "Maya-like configuration, shortcuts, UI panels, and keymap presets",
@@ -50,6 +50,7 @@ from .ops import (
from .keyconfigs import fa_hotkeys
from .utils import deploy as deploy_util
from .utils import keymap_fix
from .ops import deploy_ops
@@ -190,6 +191,11 @@ def register():
except Exception as e:
print(f"Warning: Failed to sync keymaps: {e}")
try:
keymap_fix.patch_active_keyconfig()
except Exception as e:
print(f"Warning: Maya Config Pro: node editor keymap patch: {e}")
def unregister():
"""Unregister all classes and submodules"""
@@ -3,7 +3,7 @@ schema_version = "1.0.0"
id = "form_affinity_maya_config_pro"
name = "Maya Config Pro"
tagline = "Maya-like configuration, shortcuts, and UI elements for Blender"
version = "1.8.0"
version = "1.8.1"
type = "add-on"
maintainer = "Form Affinity"
@@ -10,6 +10,7 @@ that layer without restarting.
import bpy
from ..utils import compat
from ..utils import keymap_fix
# Import the keyconfig data
from . import fa_hotkeys_data
@@ -138,6 +139,10 @@ def sync_addon_keymaps() -> None:
if is_fa_keyconfig_active():
unregister_keymaps()
register_keymaps()
try:
keymap_fix.patch_node_editor_alt_rmb("FA_HOTKEYS")
except Exception:
pass
else:
unregister_keymaps()
@@ -2555,7 +2555,10 @@ keyconfig_data = \
},
),
("node.backimage_fit", {"type": 'HOME', "value": 'PRESS', "alt": True}, None),
("node.backimage_sample", {"type": 'RIGHTMOUSE', "value": 'PRESS', "alt": True}, None),
("node.backimage_sample", {"type": 'RIGHTMOUSE', "value": 'PRESS', "alt": True},
{"active":False,
},
),
("node.link_make",
{"type": 'J', "value": 'PRESS'},
{"properties":
@@ -2768,6 +2771,7 @@ keyconfig_data = \
],
),
],
"active":False,
},
),
("node.move_detach_links",
@@ -7,6 +7,7 @@ import os
import bpy
from ..keyconfigs import fa_hotkeys
from ..utils import keymap_fix
from ..utils import compat
from ..utils import deploy as deploy_util
@@ -27,6 +28,10 @@ class MCP_OT_DeployKeymapPresets(bpy.types.Operator):
fa_hotkeys.sync_addon_keymaps()
except Exception:
pass
try:
keymap_fix.patch_active_keyconfig()
except Exception:
pass
else:
self.report({"ERROR"}, msg)
return {"FINISHED"} if ok else {"CANCELLED"}
@@ -109,6 +114,11 @@ class MCP_OT_ActivateKeymapPreset(bpy.types.Operator):
except Exception:
pass
try:
keymap_fix.patch_node_editor_alt_rmb(self.preset)
except Exception:
pass
return {"FINISHED"}
@@ -2555,7 +2555,10 @@ keyconfig_data = \
},
),
("node.backimage_fit", {"type": 'HOME', "value": 'PRESS', "alt": True}, None),
("node.backimage_sample", {"type": 'RIGHTMOUSE', "value": 'PRESS', "alt": True}, None),
("node.backimage_sample", {"type": 'RIGHTMOUSE', "value": 'PRESS', "alt": True},
{"active":False,
},
),
("node.link_make",
{"type": 'J', "value": 'PRESS'},
{"properties":
@@ -2768,6 +2771,7 @@ keyconfig_data = \
],
),
],
"active":False,
},
),
("node.move_detach_links",
@@ -0,0 +1,104 @@
"""
Runtime fixes for Alt+RMB in node editor areas.
Node Wrangler Lazy Connect (node.nw_lazy_connect) uses Alt+RMB press/drag.
Native node.backimage_sample and node.move_detach_links_release block it.
"""
from __future__ import annotations
import bpy
def _find_keymap(kc, name: str, space_type: str):
try:
return kc.keymaps.find(name, space_type=space_type, region_type="WINDOW")
except Exception:
return None
def _set_kmi_active(km, *, idname: str, value: str, active: bool) -> None:
if not km:
return
for kmi in km.keymap_items:
if (
kmi.idname == idname
and kmi.type == "RIGHTMOUSE"
and kmi.value == value
and kmi.alt
and not kmi.shift
and not kmi.ctrl
):
kmi.active = active
def _lazy_connect_available() -> bool:
return "node_wrangler" in bpy.context.preferences.addons
def _ensure_lazy_connect(km) -> None:
if not km or not _lazy_connect_available():
return
for kmi in km.keymap_items:
if (
kmi.idname == "node.nw_lazy_connect"
and kmi.type == "RIGHTMOUSE"
and kmi.value == "PRESS"
and kmi.alt
and not kmi.shift
and not kmi.ctrl
and not getattr(kmi.properties, "with_menu", True)
):
kmi.active = True
return
kmi = km.keymap_items.new(
"node.nw_lazy_connect",
"RIGHTMOUSE",
"PRESS",
alt=True,
head=True,
)
kmi.properties.with_menu = False
def active_preset_name() -> str | None:
try:
stem = str(bpy.context.preferences.keymap.active_keyconfig or "").lower()
except Exception:
stem = ""
if stem == "fa_hotkeys":
return "FA_HOTKEYS"
if stem in {"industry_compatible", "industry compatible"}:
return "INDUSTRY"
if stem == "blender":
return "BLENDER"
return None
def patch_active_keyconfig() -> None:
preset = active_preset_name()
if preset:
patch_node_editor_alt_rmb(preset)
def _patch_keyconfig(kc) -> None:
if not kc:
return
km_node = _find_keymap(kc, "Node Editor", "NODE_EDITOR")
_set_kmi_active(km_node, idname="node.backimage_sample", value="PRESS", active=False)
_set_kmi_active(
km_node,
idname="node.move_detach_links_release",
value="CLICK_DRAG",
active=False,
)
_ensure_lazy_connect(km_node)
def patch_node_editor_alt_rmb(preset: str) -> None:
"""Free Alt+RMB for Node Wrangler Lazy Connect in node editors."""
wm = getattr(bpy.context, "window_manager", None)
if not wm:
return
_patch_keyconfig(wm.keyconfigs.active)
_patch_keyconfig(wm.keyconfigs.addon)