Show Wikipedia/Songfacts on next track if none selected
This commit is contained in:
parent
42ebf2fa7b
commit
3d83de20c2
@ -925,27 +925,19 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
Display songfacts page for title in highlighted row
|
||||
"""
|
||||
|
||||
row_number = self.active_tab().source_model_selected_row_number()
|
||||
if row_number is None:
|
||||
return
|
||||
|
||||
track_info = self.active_proxy_model().get_row_info(row_number)
|
||||
if track_info is None:
|
||||
track_info = self.selected_or_next_track_info()
|
||||
if not track_info:
|
||||
return
|
||||
|
||||
self.signals.search_songfacts_signal.emit(track_info.title)
|
||||
|
||||
def lookup_row_in_wikipedia(self) -> None:
|
||||
"""
|
||||
Display Wikipedia page for title in highlighted row
|
||||
Display Wikipedia page for title in highlighted row or next track
|
||||
"""
|
||||
|
||||
row_number = self.active_tab().source_model_selected_row_number()
|
||||
if row_number is None:
|
||||
return
|
||||
|
||||
track_info = self.active_proxy_model().get_row_info(row_number)
|
||||
if track_info is None:
|
||||
track_info = self.selected_or_next_track_info()
|
||||
if not track_info:
|
||||
return
|
||||
|
||||
self.signals.search_wikipedia_signal.emit(track_info.title)
|
||||
@ -1502,6 +1494,26 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
|
||||
self.active_proxy_model().set_incremental_search(self.txtSearch.text())
|
||||
|
||||
def selected_or_next_track_info(self) -> Optional[RowAndTrack]:
|
||||
"""
|
||||
Return RowAndTrack info for selected track. If no selected track, return for
|
||||
next track. If no next track, return None.
|
||||
"""
|
||||
|
||||
row_number = self.active_tab().source_model_selected_row_number()
|
||||
if row_number is None:
|
||||
if track_sequence.next:
|
||||
if track_sequence.next.track_id:
|
||||
row_number = track_sequence.next.row_number
|
||||
if row_number is None:
|
||||
return None
|
||||
|
||||
track_info = self.active_proxy_model().get_row_info(row_number)
|
||||
if track_info is None:
|
||||
return None
|
||||
|
||||
return track_info
|
||||
|
||||
def select_next_row(self) -> None:
|
||||
"""Select next or first row in playlist"""
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user