[DeckSync] Pass the sync summary through the signal and tidy the manager API

- Emit SyncSummary from syncFinished() instead of four positional ints, and
  build it from a single currentSummary() helper, so the counts cannot drift
  between the status message and the signal.
- Use a designated initializer for LocalFile, like the other records.
- Drop setClient() and setColorIdentityProvider(): both fields are already
  constructor parameters and the setters had no callers. setProfile() and
  setDeckPath() stay, since the tab re-reads them before every run.
- Fix the include paths in tab_deck_storage.h and the narrowing conversion of
  the tree item id, so the branch builds again.
This commit is contained in:
Lukas Brübach 2026-11-01 12:41:00 +01:00
parent c0a62a2486
commit ad0da98a86
4 changed files with 31 additions and 33 deletions

View file

@ -565,7 +565,7 @@ void TabDeckStorage::onSyncStatusMessage(const QString &message)
renderSyncStatus();
}
void TabDeckStorage::onSyncFinished(int uploaded, int downloaded, int unchanged, int skipped, const QString &error)
void TabDeckStorage::onSyncFinished(const SyncSummary &summary, const QString &error)
{
aSyncNow->setEnabled(remoteEnabled);
if (!error.isEmpty()) {
@ -574,7 +574,7 @@ void TabDeckStorage::onSyncFinished(int uploaded, int downloaded, int unchanged,
} else {
syncStatusType = SyncStatusType::Finished;
syncStatusDetail.clear();
lastSyncSummary = {uploaded, downloaded, unchanged, skipped};
lastSyncSummary = summary;
}
renderSyncStatus();
if (error.isEmpty()) {