Skip to content

Commit 08feaef

Browse files
committed
Fixed cache delay when moving the Tracker Transform Handler
1 parent 6f695f5 commit 08feaef

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

src/windows/video_widget.py

+4-7
Original file line numberDiff line numberDiff line change
@@ -1001,15 +1001,13 @@ def updateEffectProperty(self, effect_id, frame_number, property_key, new_value,
10011001
found_point = False
10021002
effect_updated = False
10031003

1004-
raw_properties = json.loads(self.transforming_effect_object.Json())
1005-
10061004
c = Effect.get(id=effect_id)
10071005

10081006
if not c:
10091007
# No clip found
10101008
return
10111009

1012-
for point in raw_properties[property_key]["Points"]:
1010+
for point in c.data[property_key]["Points"]:
10131011
log.info("looping points: co.X = %s" % point["co"]["X"])
10141012

10151013
if point["co"]["X"] == frame_number:
@@ -1021,18 +1019,17 @@ def updateEffectProperty(self, effect_id, frame_number, property_key, new_value,
10211019
if not found_point and new_value != None:
10221020
effect_updated = True
10231021
log.info("Created new point at X=%s" % frame_number)
1024-
raw_properties[property_key]["Points"].append({'co': {'X': frame_number, 'Y': new_value}, 'interpolation': openshot.BEZIER})
1022+
c.data[property_key]["Points"].append({'co': {'X': frame_number, 'Y': new_value}, 'interpolation': openshot.BEZIER})
10251023

1026-
raw_properties_string = json.dumps(raw_properties)
1024+
# Reduce # of clip properties we are saving (performance boost)
1025+
c.data = {property_key: c.data.get(property_key)}
10271026

10281027
if effect_updated:
10291028
c.save()
10301029
# Update the preview
10311030
if refresh:
10321031
get_app().window.refreshFrameSignal.emit()
10331032

1034-
self.transforming_effect_object.SetJson(raw_properties_string)
1035-
10361033
def refreshTriggered(self):
10371034
"""Signal to refresh viewport (i.e. a property might have changed that effects the preview)"""
10381035

0 commit comments

Comments
 (0)