parent
125a44c645
commit
62364fdaf1
@ -405,9 +405,15 @@ class PlaylistTab(QTableWidget):
|
|||||||
scroll_to = self.item(current_row, self.COL_INDEX)
|
scroll_to = self.item(current_row, self.COL_INDEX)
|
||||||
self.scrollToItem(scroll_to, QAbstractItemView.PositionAtCenter)
|
self.scrollToItem(scroll_to, QAbstractItemView.PositionAtCenter)
|
||||||
|
|
||||||
# Get next track
|
# Get next track, but skip tracks already played
|
||||||
next_track_row = self._find_next_track_row()
|
search_starting_row = current_row + 1
|
||||||
next_track_id = self._set_next(next_track_row)
|
while True:
|
||||||
|
next_track_row = self._find_next_track_row(search_starting_row)
|
||||||
|
next_track_id = self._set_next(next_track_row)
|
||||||
|
if next_track_id not in self.played_tracks:
|
||||||
|
break
|
||||||
|
search_starting_row += 1
|
||||||
|
|
||||||
self._repaint()
|
self._repaint()
|
||||||
return next_track_id
|
return next_track_id
|
||||||
|
|
||||||
@ -813,7 +819,7 @@ class PlaylistTab(QTableWidget):
|
|||||||
if column in [self.COL_TITLE, self.COL_ARTIST]:
|
if column in [self.COL_TITLE, self.COL_ARTIST]:
|
||||||
self.editItem(item)
|
self.editItem(item)
|
||||||
|
|
||||||
def _find_next_track_row(self):
|
def _find_next_track_row(self, starting_row=None):
|
||||||
"""
|
"""
|
||||||
Find next track to play.
|
Find next track to play.
|
||||||
|
|
||||||
@ -823,13 +829,14 @@ class PlaylistTab(QTableWidget):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
found_next_track = False
|
found_next_track = False
|
||||||
current_row = self._meta_get_current()
|
if starting_row is None:
|
||||||
if current_row is not None:
|
current_row = self._meta_get_current()
|
||||||
start = current_row + 1
|
if current_row is not None:
|
||||||
else:
|
starting_row = current_row + 1
|
||||||
start = 0
|
else:
|
||||||
|
starting_row = 0
|
||||||
notes_rows = self._meta_get_notes()
|
notes_rows = self._meta_get_notes()
|
||||||
for row in range(start, self.rowCount()):
|
for row in range(starting_row, self.rowCount()):
|
||||||
if row in notes_rows:
|
if row in notes_rows:
|
||||||
continue
|
continue
|
||||||
found_next_track = True
|
found_next_track = True
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user