diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-31 11:26:52 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-31 11:26:52 +0100 |
| commit | 467fa84fd851459d5d9c9e5297e2500e938f0a18 (patch) | |
| tree | 392d0237cac273a6a07db11b120a8a453e8e8ff6 /translations/qtmaildir_it_IT.ts | |
| parent | 9ae9473acdb7cb3310c3028765cc4b30fedfce27 (diff) | |
| download | qtmaildir-467fa84fd851459d5d9c9e5297e2500e938f0a18.tar.gz qtmaildir-467fa84fd851459d5d9c9e5297e2500e938f0a18.zip | |
fix: keep bulk tag actions linear, and say when they land
Select all on a 10k-row search, then Archive, froze the window with one
CPU pinned. gdb on the live process showed the UI thread cubic before the
write was ever sent: each optimistic row write emitted dataChanged, whose
handler refreshed the action labels by walking the whole selection, and
each step of that walk looked the message up with a linear scan of every
thread.
ThreadListModel now answers id lookups from a lazily rebuilt hash,
invalidated by its own structural signals and by hand at the two in-place
id changes. MainWindow::batchModelWrites() holds the label refresh while a
loop of optimistic writes runs, then refreshes once. Two list membership
tests became sets.
The announcement also used to fade on a timer whether or not the write
had landed. It now reads "applying" until a round trip through the
worker's queue says the write has run, then "done". An error takes the
label back from a late "done".
Item 211.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'translations/qtmaildir_it_IT.ts')
| -rw-r--r-- | translations/qtmaildir_it_IT.ts | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/translations/qtmaildir_it_IT.ts b/translations/qtmaildir_it_IT.ts index 51bf793..7a57598 100644 --- a/translations/qtmaildir_it_IT.ts +++ b/translations/qtmaildir_it_IT.ts @@ -1981,6 +1981,14 @@ protocollo di rete: il recupero e l'invio sono comandi esterni. <translation>Sincronizzazione in corso in background...</translation> </message> <message> + <source>%1, applying…</source> + <translation>%1, in corso…</translation> + </message> + <message> + <source>%1, done</source> + <translation>%1, fatto</translation> + </message> + <message> <source>%1, waiting for the running sync to finish</source> <translation>%1, in attesa che termini la sincronizzazione in corso</translation> </message> |
