Disable selected row timing during move_unplayed
This commit is contained in:
parent
84cf22a196
commit
128fe2925f
@ -643,6 +643,8 @@ class PlaylistRows(Base):
|
||||
number from starting_row to end of playlist
|
||||
"""
|
||||
|
||||
log.debug(f"(move_rows_down({playlist_id=}, {starting_row=}, {move_by=}")
|
||||
|
||||
session.execute(
|
||||
update(PlaylistRows)
|
||||
.where(
|
||||
|
||||
@ -235,6 +235,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
self.frame_6.hide()
|
||||
else:
|
||||
self.carts_init()
|
||||
self.disable_selection_timing = False
|
||||
self.enable_play_next_controls()
|
||||
self.clock_counter = 0
|
||||
self.timer10.start(10)
|
||||
@ -995,7 +996,11 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
unplayed_rows = self.active_proxy_model().get_unplayed_rows()
|
||||
if not unplayed_rows:
|
||||
return
|
||||
# We can get a race condition as selected rows change while
|
||||
# moving so disable selected rows timing for move
|
||||
self.disable_selection_timing = True
|
||||
self.move_playlist_rows(unplayed_rows)
|
||||
self.disable_selection_timing = False
|
||||
|
||||
def new_from_template(self) -> None:
|
||||
"""Create new playlist from template"""
|
||||
@ -1130,7 +1135,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
volume = self.music.player.audio_get_volume()
|
||||
if volume < Config.VOLUME_VLC_DEFAULT:
|
||||
self.music.set_volume()
|
||||
log.warn(f"Reset from {volume=}")
|
||||
log.warning(f"Reset from {volume=}")
|
||||
break
|
||||
sleep(0.1)
|
||||
|
||||
|
||||
@ -292,15 +292,20 @@ class PlaylistTab(QTableView):
|
||||
if len(selected_rows) == 0:
|
||||
self.musicmuster.lblSumPlaytime.setText("")
|
||||
else:
|
||||
selected_duration = self.source_model.get_rows_duration(
|
||||
self.get_selected_rows()
|
||||
)
|
||||
if selected_duration > 0:
|
||||
self.musicmuster.lblSumPlaytime.setText(
|
||||
f"Selected duration: {ms_to_mmss(selected_duration)}"
|
||||
if not self.musicmuster.disable_selection_timing:
|
||||
selected_duration = self.source_model.get_rows_duration(
|
||||
self.get_selected_rows()
|
||||
)
|
||||
if selected_duration > 0:
|
||||
self.musicmuster.lblSumPlaytime.setText(
|
||||
f"Selected duration: {ms_to_mmss(selected_duration)}"
|
||||
)
|
||||
else:
|
||||
self.musicmuster.lblSumPlaytime.setText("")
|
||||
else:
|
||||
self.musicmuster.lblSumPlaytime.setText("")
|
||||
log.info(
|
||||
f"playlists.py.selectionChanged: {self.musicmuster.disable_selection_timing=}"
|
||||
)
|
||||
|
||||
super().selectionChanged(selected, deselected)
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user