e62a712de230ebe1325938df227a9b62cffaa7ae
- TimelineWidget.set_cursor: skip update() when clamped value is unchanged (e.g. clicking at the boundary repeatedly). - MainWindow: cache container_fps in self._fps on file load; keyPressEvent reads the cached value instead of hitting the mpv property on every key. - PlaylistWidget: add _path_set (set[str]) alongside _paths (list[str]) so duplicate detection in add_files is O(1) instead of O(N). - SettingsDialog._on_install: quit+wait any previous SetupWorker before starting a new one, preventing leaked threads and duplicate signal connections on repeated installs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
No description provided
Languages
Python
98.3%
Shell
0.9%
PowerShell
0.8%