Compare commits

...

2 Commits

Author SHA1 Message Date
Keith Edmunds
62364fdaf1 Don't automatically select previously played tracks
Fixes #89
2021-10-17 12:08:13 +01:00
Keith Edmunds
125a44c645 Add 'this month then' note colour 2021-10-16 10:33:32 +01:00
2 changed files with 18 additions and 10 deletions

View File

@ -42,6 +42,7 @@ class Config(object):
'track': "#ffff00",
'request': "#7cf000",
'wrap': "#fffacd",
'this month then': "#c256c2",
'story': "#dda0dd",
}
ROOT = os.environ.get('ROOT') or "/home/kae/music"

View File

@ -405,9 +405,15 @@ class PlaylistTab(QTableWidget):
scroll_to = self.item(current_row, self.COL_INDEX)
self.scrollToItem(scroll_to, QAbstractItemView.PositionAtCenter)
# Get next track
next_track_row = self._find_next_track_row()
# Get next track, but skip tracks already played
search_starting_row = current_row + 1
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()
return next_track_id
@ -813,7 +819,7 @@ class PlaylistTab(QTableWidget):
if column in [self.COL_TITLE, self.COL_ARTIST]:
self.editItem(item)
def _find_next_track_row(self):
def _find_next_track_row(self, starting_row=None):
"""
Find next track to play.
@ -823,13 +829,14 @@ class PlaylistTab(QTableWidget):
"""
found_next_track = False
if starting_row is None:
current_row = self._meta_get_current()
if current_row is not None:
start = current_row + 1
starting_row = current_row + 1
else:
start = 0
starting_row = 0
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:
continue
found_next_track = True