Rebase dev onto v2_id

This commit is contained in:
Keith Edmunds 2022-03-02 09:27:37 +00:00
parent d62a044522
commit 08eea631d6

View File

@ -31,6 +31,7 @@ from models import (db_init, Playdates, Playlists, PlaylistTracks,
Session, Settings, Tracks)
from playlists import PlaylistTab
from utilities import create_track_from_file
from sqlalchemy.orm.exc import DetachedInstanceError
from ui.dlg_search_database_ui import Ui_Dialog
from ui.dlg_SelectPlaylist_ui import Ui_dlgSelectPlaylist
from ui.main_window_ui import Ui_MainWindow
@ -164,7 +165,7 @@ class Window(QMainWindow, Ui_MainWindow):
self.action_Clear_selection.triggered.connect(self.clear_selection)
self.actionClosePlaylist.triggered.connect(self.close_playlist_tab)
self.actionExport_playlist.triggered.connect(self.export_playlist_tab)
self.actionFade.triggered.connect(self.fade)
self.actionFade.triggered.connect(lambda: self.stop_playing(fade=True))
self.actionMoveSelected.triggered.connect(self.move_selected)
self.actionNewPlaylist.triggered.connect(self.create_playlist)
self.actionOpenPlaylist.triggered.connect(self.open_playlist)
@ -183,7 +184,7 @@ class Window(QMainWindow, Ui_MainWindow):
self.btnAddFile.clicked.connect(self.add_file)
self.btnAddNote.clicked.connect(self.create_note)
self.btnDatabase.clicked.connect(self.search_database)
self.btnFade.clicked.connect(self.fade)
self.btnFade.clicked.connect(lambda: self.stop_playing(fade=True))
self.btnPlay.clicked.connect(self.play_next)
self.btnSetNext.clicked.connect(self.this_is_the_next_track)
self.btnSongInfo.clicked.connect(self.song_info_search)
@ -807,27 +808,33 @@ class Window(QMainWindow, Ui_MainWindow):
self.stop_playing()
def update_headers(self) -> None:
"""Update last / current / next track headers"""
"""
Update last / current / next track headers
If multiple tracks are played quickly in succession, it's possible
for the self.{previous,current,next} track to not be in the session.
Unlikely to happen in normal use so handle by blanking title.
"""
try:
self.hdrPreviousTrack.setText(
f"{self.previous_track.title} - {self.previous_track.artist}"
)
except AttributeError:
except (AttributeError, DetachedInstanceError):
self.hdrPreviousTrack.setText("")
try:
self.hdrCurrentTrack.setText(
f"{self.current_track.title} - {self.current_track.artist}"
)
except AttributeError:
except (AttributeError, DetachedInstanceError):
self.hdrCurrentTrack.setText("")
try:
self.hdrNextTrack.setText(
f"{self.next_track.title} - {self.next_track.artist}"
)
except AttributeError:
except (AttributeError, DetachedInstanceError):
self.hdrNextTrack.setText("")