Merge branch 'develop' into enhancement/AY-4915_Move-Hiero-client-code

This commit is contained in:
Jakub Ježek 2024-06-04 14:55:58 +02:00 committed by GitHub
commit 84e5c643b2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 173 additions and 45 deletions

View file

@ -13,6 +13,26 @@ from ayon_maya.api.lib import (
from maya import cmds
@contextlib.contextmanager
def preserve_time_units():
"""Preserve current frame, frame range and fps"""
frame = cmds.currentTime(query=True)
fps = cmds.currentUnit(query=True, time=True)
start = cmds.playbackOptions(query=True, minTime=True)
end = cmds.playbackOptions(query=True, maxTime=True)
anim_start = cmds.playbackOptions(query=True, animationStartTime=True)
anim_end = cmds.playbackOptions(query=True, animationEndTime=True)
try:
yield
finally:
cmds.currentUnit(time=fps, updateAnimation=False)
cmds.currentTime(frame)
cmds.playbackOptions(minTime=start,
maxTime=end,
animationStartTime=anim_start,
animationEndTime=anim_end)
@contextlib.contextmanager
def preserve_modelpanel_cameras(container, log=None):
"""Preserve camera members of container in the modelPanels.
@ -348,6 +368,15 @@ class MayaUSDReferenceLoader(ReferenceLoader):
])
options["file_type"] = self.file_type
return super(MayaUSDReferenceLoader, self).process_reference(
context, name, namespace, options
)
# Maya USD import reference has the tendency to change the time slider
# range and current frame, so we force revert it after
with preserve_time_units():
return super(MayaUSDReferenceLoader, self).process_reference(
context, name, namespace, options
)
def update(self, container, context):
# Maya USD import reference has the tendency to change the time slider
# range and current frame, so we force revert it after
with preserve_time_units():
super(MayaUSDReferenceLoader, self).update(container, context)

View file

@ -1,6 +1,6 @@
name = "maya"
title = "Maya"
version = "0.2.0"
version = "0.2.1"
ayon_required_addons = {
"core": ">0.3.2",