Compare commits

..

No commits in common. "2932f32771e020cadc874f535f2b287eaa9facb3" and "2976ceaa22bd2c211d5b697f8ccd937a40e82235" have entirely different histories.

View File

@ -363,15 +363,12 @@ class PlaylistModel(QAbstractTableModel):
Need to delete them in contiguous groups wrapped in beginRemoveRows / endRemoveRows Need to delete them in contiguous groups wrapped in beginRemoveRows / endRemoveRows
calls. To keep it simple, if inefficient, delete rows one by one. calls. To keep it simple, if inefficient, delete rows one by one.
TODO: delete in blocks
Delete from highest row back so that not yet deleted row numbers don't change.
""" """
log.info(f"delete_rows({row_numbers=}")
with Session() as session: with Session() as session:
for row_number in sorted(row_numbers, reverse=True): for row_number in row_numbers:
log.info(f"delete_rows(), {row_number=}")
super().beginRemoveRows(QModelIndex(), row_number, row_number) super().beginRemoveRows(QModelIndex(), row_number, row_number)
# We need to remove data from the underlying data store, # We need to remove data from the underlying data store,
# which is the database, but we cache in # which is the database, but we cache in
@ -582,7 +579,7 @@ class PlaylistModel(QAbstractTableModel):
for a in self.playlist_rows.values() for a in self.playlist_rows.values()
if not a.played and a.track_id is not None if not a.played and a.track_id is not None
] ]
log.debug(f"get_unplayed_rows() returned: {result=}") log.info(f"get_unplayed_rows() returned: {result=}")
return result return result
def headerData( def headerData(