|
34 | 34 |
|
35 | 35 | # Try to get the security-patched XML functions from defusedxml
|
36 | 36 | try:
|
37 |
| - from defusedxml import minidom as xml |
| 37 | + from defusedxml import minidom as xml |
38 | 38 | except ImportError:
|
39 |
| - from xml.dom import minidom as xml |
| 39 | + from xml.dom import minidom as xml |
40 | 40 |
|
41 | 41 | from xml.parsers.expat import ExpatError
|
42 | 42 |
|
@@ -101,8 +101,8 @@ def __init__(self):
|
101 | 101 | self.delayed_fps_timer = None
|
102 | 102 | self.delayed_fps_timer = QTimer()
|
103 | 103 | self.delayed_fps_timer.setInterval(200)
|
| 104 | + self.delayed_fps_timer.setSingleShot(True) |
104 | 105 | self.delayed_fps_timer.timeout.connect(self.delayed_fps_callback)
|
105 |
| - self.delayed_fps_timer.stop() |
106 | 106 |
|
107 | 107 | # Pause playback (to prevent crash since we are fixing to change the timeline's max size)
|
108 | 108 | get_app().window.actionPlay_trigger(None, force="pause")
|
@@ -288,10 +288,8 @@ def __init__(self):
|
288 | 288 | self.updateFrameRate()
|
289 | 289 |
|
290 | 290 | def delayed_fps_callback(self):
|
291 |
| - """Callback for fps/profile changed event timer (to delay the timeline mapping so we don't spam libopenshot)""" |
292 |
| - # Stop timer |
293 |
| - self.delayed_fps_timer.stop() |
294 |
| - |
| 291 | + """Callback for fps/profile changed event timer |
| 292 | + (to delay the timeline mapping so we don't spam libopenshot)""" |
295 | 293 | # Calculate fps
|
296 | 294 | fps_double = self.timeline.info.fps.ToDouble()
|
297 | 295 |
|
@@ -355,7 +353,8 @@ def updateFrameRate(self):
|
355 | 353 | self.timeline.info.channels = self.txtChannels.value()
|
356 | 354 | self.timeline.info.channel_layout = self.cboChannelLayout.currentData()
|
357 | 355 |
|
358 |
| - # Send changes to libopenshot (apply mappings to all framemappers)... after a small delay |
| 356 | + # Send changes to libopenshot (apply mappings to all framemappers) |
| 357 | + # Start or restart timer to process changes after a small delay |
359 | 358 | self.delayed_fps_timer.start()
|
360 | 359 |
|
361 | 360 | # Determine max frame (based on clips)
|
|
0 commit comments