Improve playlist load speed

This commit is contained in:
Keith Edmunds 2023-12-15 17:48:42 +00:00
parent 2f0ad5cd52
commit c6befd219c

View File

@ -188,12 +188,6 @@ class PlaylistTab(QTableView):
self.customContextMenuRequested.connect(self._context_menu)
# Connect signals
# This dancing is to satisfy mypy
h_header = self.horizontalHeader()
if isinstance(h_header, QHeaderView):
h_header.sectionResized.connect(self._column_resize)
h_header.setStretchLastSection(True)
# self.signals.set_next_track_signal.connect(self._reset_next)
self.signals = MusicMusterSignals()
self.signals.resize_rows_signal.connect(self.resizeRowsToContents)
self.signals.span_cells_signal.connect(self._span_cells)
@ -205,7 +199,7 @@ class PlaylistTab(QTableView):
# Load playlist rows
self.setModel(self.proxy_model)
self._set_column_widths()
QTimer.singleShot(0, lambda: self.resizeRowsToContents())
self.resizeRowsToContents()
# ########## Overrident class functions ##########
@ -695,6 +689,12 @@ class PlaylistTab(QTableView):
self.setColumnWidth(column_number, record.f_int)
else:
self.setColumnWidth(column_number, Config.DEFAULT_COLUMN_WIDTH)
# Stretch last column *after* setting column widths which is
# *much* faster
h_header = self.horizontalHeader()
if isinstance(h_header, QHeaderView):
h_header.sectionResized.connect(self._column_resize)
h_header.setStretchLastSection(True)
def set_row_as_next_track(self) -> None:
"""