feat(core,fuse,gui): "On this day" strip above the photos timeline

Add a PhotosOnThisDay control request, served from the stored timeline:
photos whose local capture date matches today's in earlier years, one
row per group. The GUI shows a card per year ("3 years ago") with the
year's newest photo as its cover; clicking a card scrolls the timeline
to that day. The strip is revealed only at the top of the whole,
unfiltered timeline, so it gives the grid its room back once you
scroll or filter.
This commit is contained in:
nvrl committed 2026-09-28 02:12:59 +02:00
1 parent c3ec82392a
commit 7dbf818d83
17 files changed
+2017 -1551

No files matched your search

+190 -172
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-28 00:14+0200\n"
"POT-Creation-Date: 2026-09-28 00:44+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Italian\n"
@@ -15,99 +15,99 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: crates/pdfs-gui/src/app/main.rs:830
#: crates/pdfs-gui/src/app/main.rs:835
#: crates/pdfs-gui/src/app/pages/locations.rs:1133
#: crates/pdfs-gui/src/prompt.rs:169
msgid "My files"
msgstr "I miei file"
#: crates/pdfs-gui/src/app/main.rs:833 crates/pdfs-gui/src/app/main.rs:1446
#: crates/pdfs-gui/src/app/main.rs:838 crates/pdfs-gui/src/app/main.rs:1451
#: crates/pdfs-gui/src/app/pages/albums.rs:633
#: crates/pdfs-gui/src/app/pages/photos.rs:730
#: crates/pdfs-gui/src/app/pages/photos.rs:746
msgid "Photos"
msgstr "Foto"
#: crates/pdfs-gui/src/app/main.rs:838
#: crates/pdfs-gui/src/app/main.rs:843
msgid "Shared with me"
msgstr "Condivisi con me"
#: crates/pdfs-gui/src/app/main.rs:843
#: crates/pdfs-gui/src/app/main.rs:848
msgid "Shared by me"
msgstr "Condivisi da me"
#: crates/pdfs-gui/src/app/main.rs:846
#: crates/pdfs-gui/src/app/main.rs:851
#: crates/pdfs-gui/src/app/pages/devices.rs:109
msgid "Computers"
msgstr "Computer"
#: crates/pdfs-gui/src/app/main.rs:847
#: crates/pdfs-gui/src/app/main.rs:852
#: crates/pdfs-gui/src/app/pages/trash.rs:106
msgid "Trash"
msgstr "Cestino"
#: crates/pdfs-gui/src/app/main.rs:851
#: crates/pdfs-gui/src/app/main.rs:856
msgid "Sync"
msgstr "Sincronizzazione"
#: crates/pdfs-gui/src/app/main.rs:856
#: crates/pdfs-gui/src/app/main.rs:861
#: crates/pdfs-gui/src/app/pages/activity.rs:153
msgid "Activity"
msgstr "Attività"
#: crates/pdfs-gui/src/app/main.rs:1002
#: crates/pdfs-gui/src/app/main.rs:1007
msgid "Refresh (F5)"
msgstr "Aggiorna (F5)"
#. Translators: a failed action's toast. {what} says what failed, such as
#. "Couldn't rename"; {detail} is the reason, usually untranslated text
#. from the mount service.
#: crates/pdfs-gui/src/app/main.rs:1176
#: crates/pdfs-gui/src/app/main.rs:1181
#, rust-format
msgid "{what}: {detail}"
msgstr "{what}: {detail}"
#: crates/pdfs-gui/src/app/main.rs:1195
#: crates/pdfs-gui/src/app/main.rs:1200
msgid "You're offline"
msgstr "Sei offline"
#: crates/pdfs-gui/src/app/main.rs:1196
#: crates/pdfs-gui/src/app/main.rs:1201
msgid "That's not there any more"
msgstr "Non esiste più"
#: crates/pdfs-gui/src/app/main.rs:1197
#: crates/pdfs-gui/src/app/main.rs:1202
msgid "You don't have access to that"
msgstr "Non hai accesso a questo elemento"
#: crates/pdfs-gui/src/app/main.rs:1198
#: crates/pdfs-gui/src/app/main.rs:1203
msgid "Something changed this first"
msgstr "È stato modificato prima da qualcos'altro"
#: crates/pdfs-gui/src/app/main.rs:1199
#: crates/pdfs-gui/src/app/main.rs:1204
msgid "Your Proton Drive is full"
msgstr "Il tuo Proton Drive è pieno"
#: crates/pdfs-gui/src/app/main.rs:1240 crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1245 crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferenze"
#: crates/pdfs-gui/src/app/main.rs:1241 crates/pdfs-gui/src/app/main.rs:1485
#: crates/pdfs-gui/src/app/main.rs:1246 crates/pdfs-gui/src/app/main.rs:1490
msgid "Keyboard Shortcuts"
msgstr "Scorciatoie da tastiera"
#: crates/pdfs-gui/src/app/main.rs:1243
#: crates/pdfs-gui/src/app/main.rs:1248
msgid "About Proton Drive for Linux"
msgstr "Informazioni su Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1248
#: crates/pdfs-gui/src/app/main.rs:1253
msgid "Main menu"
msgstr "Menu principale"
#: crates/pdfs-gui/src/app/main.rs:1294
#: crates/pdfs-gui/src/app/main.rs:1299
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1302
#: crates/pdfs-gui/src/app/main.rs:1307
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -118,23 +118,23 @@ msgstr ""
"\n"
"Client non ufficiale: non affiliato, approvato né supportato da Proton AG."
#: crates/pdfs-gui/src/app/main.rs:1307
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Source Code"
msgstr "Codice sorgente"
#: crates/pdfs-gui/src/app/main.rs:1311
#: crates/pdfs-gui/src/app/main.rs:1316
msgid "Proton Terms of Service"
msgstr "Termini di servizio di Proton"
#: crates/pdfs-gui/src/app/main.rs:1315
#: crates/pdfs-gui/src/app/main.rs:1320
msgid "Proton Privacy Policy"
msgstr "Informativa sulla privacy di Proton"
#: crates/pdfs-gui/src/app/main.rs:1320
#: crates/pdfs-gui/src/app/main.rs:1325
msgid "Disclaimer"
msgstr "Esclusione di responsabilità"
#: crates/pdfs-gui/src/app/main.rs:1324
#: crates/pdfs-gui/src/app/main.rs:1329
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
@@ -159,15 +159,15 @@ msgstr ""
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1340
msgid "translator-credits"
msgstr "Collaboratori di Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1366
#: crates/pdfs-gui/src/app/main.rs:1371
msgid "Stop Proton Drive?"
msgstr "Arrestare Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1367
#: crates/pdfs-gui/src/app/main.rs:1372
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -175,7 +175,7 @@ msgstr ""
"Il disco viene smontato e nulla viene sincronizzato finché non ti "
"riconnetti. Proton Drive si riavvierà al prossimo accesso."
#: crates/pdfs-gui/src/app/main.rs:1369 crates/pdfs-gui/src/app/main.rs:1642
#: crates/pdfs-gui/src/app/main.rs:1374 crates/pdfs-gui/src/app/main.rs:1647
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -189,7 +189,7 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:670
#: crates/pdfs-gui/src/app/pages/locations.rs:1050
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:1868
#: crates/pdfs-gui/src/app/pages/photos.rs:1842
#: crates/pdfs-gui/src/app/pages/shared.rs:717
#: crates/pdfs-gui/src/app/pages/shared.rs:748
#: crates/pdfs-gui/src/app/pages/shared.rs:789
@@ -203,67 +203,67 @@ msgstr ""
msgid "Cancel"
msgstr "Annulla"
#: crates/pdfs-gui/src/app/main.rs:1370
#: crates/pdfs-gui/src/app/main.rs:1375
msgctxt "verb"
msgid "Stop"
msgstr "Arresta"
#: crates/pdfs-gui/src/app/main.rs:1387
#: crates/pdfs-gui/src/app/main.rs:1392
msgid "Couldn't stop Proton Drive"
msgstr "Impossibile arrestare Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1388
#: crates/pdfs-gui/src/app/main.rs:1393
msgid "The mount service did not stop."
msgstr "Il servizio di montaggio non si è arrestato."
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Generale"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Cerca in Drive"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Aggiorna"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Keyboard shortcuts"
msgstr "Scorciatoie da tastiera"
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/main.rs:1438
msgid "Files"
msgstr "File"
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/main.rs:1440
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nuova cartella"
#: crates/pdfs-gui/src/app/main.rs:1436
#: crates/pdfs-gui/src/app/main.rs:1441
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Carica file"
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/main.rs:1442
msgid "Back / forward"
msgstr "Indietro / avanti"
#: crates/pdfs-gui/src/app/main.rs:1438
#: crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Cartella superiore"
#: crates/pdfs-gui/src/app/main.rs:1439
#: crates/pdfs-gui/src/app/main.rs:1444
msgid "Grid / list"
msgstr "Griglia / elenco"
#: crates/pdfs-gui/src/app/main.rs:1440
#: crates/pdfs-gui/src/app/main.rs:1445
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -272,62 +272,62 @@ msgstr "Griglia / elenco"
msgid "Rename"
msgstr "Rinomina"
#: crates/pdfs-gui/src/app/main.rs:1441 crates/pdfs-gui/src/app/main.rs:1461
#: crates/pdfs-gui/src/app/main.rs:1446 crates/pdfs-gui/src/app/main.rs:1466
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
#: crates/pdfs-gui/src/app/pages/photos.rs:552
#: crates/pdfs-gui/src/app/pages/photos.rs:1865
#: crates/pdfs-gui/src/app/pages/photos.rs:1869
#: crates/pdfs-gui/src/app/pages/photos.rs:540
#: crates/pdfs-gui/src/app/pages/photos.rs:1839
#: crates/pdfs-gui/src/app/pages/photos.rs:1843
#: crates/pdfs-gui/src/app/widgets/details.rs:162
msgid "Move to Trash"
msgstr "Sposta nel cestino"
#: crates/pdfs-gui/src/app/main.rs:1442
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Clear the selection"
msgstr "Annulla la selezione"
#: crates/pdfs-gui/src/app/main.rs:1448
#: crates/pdfs-gui/src/app/main.rs:1453
msgid "Larger thumbnails"
msgstr "Miniature più grandi"
#: crates/pdfs-gui/src/app/main.rs:1449
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Smaller thumbnails"
msgstr "Miniature più piccole"
#: crates/pdfs-gui/src/app/main.rs:1450
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "Reset thumbnail size"
msgstr "Ripristina la dimensione delle miniature"
#: crates/pdfs-gui/src/app/main.rs:1451
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Select all"
msgstr "Seleziona tutto"
#: crates/pdfs-gui/src/app/main.rs:1455
#: crates/pdfs-gui/src/app/main.rs:1460
msgid "Photo Viewer"
msgstr "Visualizzatore di foto"
#: crates/pdfs-gui/src/app/main.rs:1457
#: crates/pdfs-gui/src/app/main.rs:1462
msgid "Previous / next photo"
msgstr "Foto precedente / successiva"
#: crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/main.rs:1463
msgid "First / last photo"
msgstr "Prima / ultima foto"
#: crates/pdfs-gui/src/app/main.rs:1459
#: crates/pdfs-gui/src/app/main.rs:1464
msgid "Show details"
msgstr "Mostra dettagli"
#: crates/pdfs-gui/src/app/main.rs:1460
#: crates/pdfs-gui/src/app/main.rs:1465
msgid "Fullscreen"
msgstr "Schermo intero"
#: crates/pdfs-gui/src/app/main.rs:1462
#: crates/pdfs-gui/src/app/main.rs:1467
msgid "Close"
msgstr "Chiudi"
#: crates/pdfs-gui/src/app/main.rs:1565
#: crates/pdfs-gui/src/app/main.rs:1570
msgid "Select a single item to rename it"
msgstr "Seleziona un solo elemento per rinominarlo"
@@ -364,7 +364,7 @@ msgstr "Richiede attenzione"
#: crates/pdfs-gui/src/app/pages/browser.rs:306
#: crates/pdfs-gui/src/app/pages/devices.rs:84
#: crates/pdfs-gui/src/app/pages/locations.rs:134
#: crates/pdfs-gui/src/app/pages/photos.rs:430
#: crates/pdfs-gui/src/app/pages/photos.rs:417
#: crates/pdfs-gui/src/app/pages/shared.rs:83
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:38
#: crates/pdfs-gui/src/app/pages/trash.rs:57 crates/pdfs-gui/src/prompt.rs:593
@@ -400,7 +400,7 @@ msgstr "Impossibile leggere le attività"
#: crates/pdfs-gui/src/app/pages/browser.rs:2880
#: crates/pdfs-gui/src/app/pages/browser.rs:3066
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:310
#: crates/pdfs-gui/src/app/pages/photos.rs:3077
#: crates/pdfs-gui/src/app/pages/photos.rs:3217
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:139
#: crates/pdfs-gui/src/app/pages/trash.rs:320
msgid "Unexpected reply from the mount service."
@@ -412,7 +412,7 @@ msgstr "Risposta inattesa dal servizio di montaggio."
#: crates/pdfs-gui/src/app/pages/browser.rs:2914
#: crates/pdfs-gui/src/app/pages/devices.rs:209
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/photos.rs:3111
#: crates/pdfs-gui/src/app/pages/photos.rs:3251
#: crates/pdfs-gui/src/app/pages/shared.rs:523
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:156
#: crates/pdfs-gui/src/app/pages/status.rs:1301
@@ -424,7 +424,7 @@ msgstr "Non connesso"
#: crates/pdfs-gui/src/app/pages/browser.rs:2915
#: crates/pdfs-gui/src/app/pages/devices.rs:210
#: crates/pdfs-gui/src/app/pages/locations.rs:845
#: crates/pdfs-gui/src/app/pages/photos.rs:3112
#: crates/pdfs-gui/src/app/pages/photos.rs:3252
#: crates/pdfs-gui/src/app/pages/shared.rs:524
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:157
#: crates/pdfs-gui/src/app/pages/trash.rs:336
@@ -436,7 +436,7 @@ msgstr "Il servizio di montaggio di Proton Drive non è in esecuzione."
#: crates/pdfs-gui/src/app/pages/browser.rs:2924
#: crates/pdfs-gui/src/app/pages/devices.rs:218
#: crates/pdfs-gui/src/app/pages/locations.rs:853
#: crates/pdfs-gui/src/app/pages/photos.rs:3120
#: crates/pdfs-gui/src/app/pages/photos.rs:3260
#: crates/pdfs-gui/src/app/pages/shared.rs:532
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:165
#: crates/pdfs-gui/src/app/pages/status.rs:305
@@ -449,7 +449,7 @@ msgstr "Connessione…"
#: crates/pdfs-gui/src/app/pages/browser.rs:2925
#: crates/pdfs-gui/src/app/pages/devices.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:854
#: crates/pdfs-gui/src/app/pages/photos.rs:3121
#: crates/pdfs-gui/src/app/pages/photos.rs:3261
#: crates/pdfs-gui/src/app/pages/shared.rs:533
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:166
#: crates/pdfs-gui/src/app/pages/trash.rs:345
@@ -457,12 +457,12 @@ msgid "Waiting for the Proton Drive mount service to come up."
msgstr "In attesa dell'avvio del servizio di montaggio di Proton Drive."
#: crates/pdfs-gui/src/app/pages/activity.rs:419
#: crates/pdfs-gui/src/app/pages/photos.rs:2509
#: crates/pdfs-gui/src/app/pages/photos.rs:2504
msgid "Today"
msgstr "Oggi"
#: crates/pdfs-gui/src/app/pages/activity.rs:422
#: crates/pdfs-gui/src/app/pages/photos.rs:2514
#: crates/pdfs-gui/src/app/pages/photos.rs:2509
msgid "Yesterday"
msgstr "Ieri"
@@ -521,7 +521,7 @@ msgstr "Risolto"
#. Translators: strftime format for the time of day in the activity feed, such as "14:05".
#. Translators: strftime format for the time a photo was taken, shown on its tile, such as "14:05".
#: crates/pdfs-gui/src/app/pages/activity.rs:580
#: crates/pdfs-gui/src/app/pages/photos.rs:2553
#: crates/pdfs-gui/src/app/pages/photos.rs:2548
msgid "%H:%M"
msgstr "%H:%M"
@@ -627,12 +627,12 @@ msgid "Reading your Proton Drive albums."
msgstr "Lettura degli album di Proton Drive."
#: crates/pdfs-gui/src/app/pages/albums.rs:59
#: crates/pdfs-gui/src/app/pages/photos.rs:2990
#: crates/pdfs-gui/src/app/pages/photos.rs:3130
msgid "No photo library"
msgstr "Nessuna libreria di foto"
#: crates/pdfs-gui/src/app/pages/albums.rs:60
#: crates/pdfs-gui/src/app/pages/photos.rs:2991
#: crates/pdfs-gui/src/app/pages/photos.rs:3131
msgid "This Proton account doesn't have Photos enabled."
msgstr "Questo account Proton non ha Foto abilitato."
@@ -665,7 +665,7 @@ msgstr[1] "{n} album"
#: crates/pdfs-gui/src/app/pages/albums.rs:205
#: crates/pdfs-gui/src/app/pages/browser.rs:1246
#: crates/pdfs-gui/src/app/pages/photos.rs:2848
#: crates/pdfs-gui/src/app/pages/photos.rs:2984
#: crates/pdfs-gui/src/app/pages/shared.rs:384
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:244
#: crates/pdfs-gui/src/app/widgets/details.rs:155
@@ -731,10 +731,10 @@ msgstr "Impossibile creare l'album"
#: crates/pdfs-gui/src/app/pages/locations.rs:1090
#: crates/pdfs-gui/src/app/pages/locations.rs:1109
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1424
#: crates/pdfs-gui/src/app/pages/photos.rs:1234
#: crates/pdfs-gui/src/app/pages/photos.rs:1947
#: crates/pdfs-gui/src/app/pages/photos.rs:2912
#: crates/pdfs-gui/src/app/pages/photos.rs:3083
#: crates/pdfs-gui/src/app/pages/photos.rs:1272
#: crates/pdfs-gui/src/app/pages/photos.rs:1921
#: crates/pdfs-gui/src/app/pages/photos.rs:3048
#: crates/pdfs-gui/src/app/pages/photos.rs:3223
#: crates/pdfs-gui/src/app/pages/shared.rs:510
#: crates/pdfs-gui/src/app/pages/shared.rs:838
#: crates/pdfs-gui/src/app/pages/status.rs:672
@@ -798,7 +798,7 @@ msgstr[0] "Scegli un album per {n} foto."
msgstr[1] "Scegli un album per {n} foto."
#: crates/pdfs-gui/src/app/pages/albums.rs:424
#: crates/pdfs-gui/src/app/pages/photos.rs:696
#: crates/pdfs-gui/src/app/pages/photos.rs:712
msgid "New Album…"
msgstr "Nuovo album…"
@@ -989,7 +989,7 @@ msgstr "I miei file"
#. Translators: {n} is how many items are selected: files and folders in My Files, photos here.
#: crates/pdfs-gui/src/app/pages/browser.rs:638
#: crates/pdfs-gui/src/app/pages/browser.rs:1331
#: crates/pdfs-gui/src/app/pages/photos.rs:1801
#: crates/pdfs-gui/src/app/pages/photos.rs:1775
#, rust-format
msgid "{n} selected"
msgid_plural "{n} selected"
@@ -998,8 +998,8 @@ msgstr[1] "{n} selezionati"
#: crates/pdfs-gui/src/app/pages/browser.rs:674
#: crates/pdfs-gui/src/app/pages/browser.rs:709
#: crates/pdfs-gui/src/app/pages/photos.rs:1940
#: crates/pdfs-gui/src/app/pages/photos.rs:1946
#: crates/pdfs-gui/src/app/pages/photos.rs:1914
#: crates/pdfs-gui/src/app/pages/photos.rs:1920
msgid "Couldn't move to Trash"
msgstr "Impossibile spostare nel cestino"
@@ -1035,7 +1035,7 @@ msgstr[0] "{n} elemento spostato nel cestino"
msgstr[1] "{n} elementi spostati nel cestino"
#: crates/pdfs-gui/src/app/pages/browser.rs:727
#: crates/pdfs-gui/src/app/pages/photos.rs:1933
#: crates/pdfs-gui/src/app/pages/photos.rs:1907
msgid "Undo"
msgstr "Annulla"
@@ -1092,7 +1092,7 @@ msgid "Open With…"
msgstr "Apri con…"
#: crates/pdfs-gui/src/app/pages/browser.rs:1263
#: crates/pdfs-gui/src/app/pages/photos.rs:2846
#: crates/pdfs-gui/src/app/pages/photos.rs:2982
msgctxt "verb"
msgid "Play"
msgstr "Riproduci"
@@ -1389,7 +1389,7 @@ msgstr[0] "Caricamento di {n} elemento…"
msgstr[1] "Caricamento di {n} elementi…"
#: crates/pdfs-gui/src/app/pages/browser.rs:2696
#: crates/pdfs-gui/src/app/pages/photos.rs:714
#: crates/pdfs-gui/src/app/pages/photos.rs:730
msgctxt "verb"
msgid "View"
msgstr "Visualizza"
@@ -2562,169 +2562,173 @@ msgid "Hide details"
msgstr "Nascondi dettagli"
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1429
#: crates/pdfs-gui/src/app/pages/photos.rs:2907
#: crates/pdfs-gui/src/app/pages/photos.rs:2911
#: crates/pdfs-gui/src/app/pages/photos.rs:3043
#: crates/pdfs-gui/src/app/pages/photos.rs:3047
msgid "Couldn't change the favorite"
msgstr "Impossibile modificare il preferito"
#: crates/pdfs-gui/src/app/pages/photos.rs:440
#: crates/pdfs-gui/src/app/pages/photos.rs:519
#: crates/pdfs-gui/src/app/pages/photos.rs:427
#: crates/pdfs-gui/src/app/pages/photos.rs:507
msgid "Upload photos"
msgstr "Carica foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:445
#: crates/pdfs-gui/src/app/pages/photos.rs:432
#: crates/pdfs-gui/src/app/pages/takeout.rs:287
msgid "Import from Google Photos"
msgstr "Importa da Google Photos"
#: crates/pdfs-gui/src/app/pages/photos.rs:486
#: crates/pdfs-gui/src/app/pages/photos.rs:624
#: crates/pdfs-gui/src/app/pages/photos.rs:472
#: crates/pdfs-gui/src/app/pages/photos.rs:612
msgid "Jump to a month"
msgstr "Vai a un mese"
#: crates/pdfs-gui/src/app/pages/photos.rs:503
#: crates/pdfs-gui/src/app/pages/photos.rs:491
msgid "Back to albums"
msgstr "Torna agli album"
#: crates/pdfs-gui/src/app/pages/photos.rs:515
#: crates/pdfs-gui/src/app/pages/photos.rs:503
msgctxt "verb"
msgid "Upload"
msgstr "Carica"
#: crates/pdfs-gui/src/app/pages/photos.rs:528
#: crates/pdfs-gui/src/app/pages/photos.rs:516
msgid "Import a Google Photos Takeout export"
msgstr "Importa un'esportazione Google Takeout di Google Photos"
#: crates/pdfs-gui/src/app/pages/photos.rs:538
#: crates/pdfs-gui/src/app/pages/photos.rs:547
#: crates/pdfs-gui/src/app/pages/photos.rs:1799
#: crates/pdfs-gui/src/app/pages/photos.rs:526
#: crates/pdfs-gui/src/app/pages/photos.rs:535
#: crates/pdfs-gui/src/app/pages/photos.rs:1773
msgid "Select photos"
msgstr "Seleziona foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:558
#: crates/pdfs-gui/src/app/pages/photos.rs:2864
#: crates/pdfs-gui/src/app/pages/photos.rs:546
#: crates/pdfs-gui/src/app/pages/photos.rs:3000
msgid "Add to Album…"
msgstr "Aggiungi all'album…"
#: crates/pdfs-gui/src/app/pages/photos.rs:564
#: crates/pdfs-gui/src/app/pages/photos.rs:552
msgid "Leave selection (Esc)"
msgstr "Esci dalla selezione (Esc)"
#: crates/pdfs-gui/src/app/pages/photos.rs:608
#: crates/pdfs-gui/src/app/pages/photos.rs:596
msgid "Show only favorites"
msgstr "Mostra solo i preferiti"
#: crates/pdfs-gui/src/app/pages/photos.rs:615
#: crates/pdfs-gui/src/app/pages/photos.rs:603
msgid "Show only photos not in an album"
msgstr "Mostra solo le foto non in un album"
#: crates/pdfs-gui/src/app/pages/photos.rs:622
#: crates/pdfs-gui/src/app/pages/photos.rs:827
#: crates/pdfs-gui/src/app/pages/photos.rs:610
#: crates/pdfs-gui/src/app/pages/photos.rs:845
msgid "All dates"
msgstr "Tutte le date"
#: crates/pdfs-gui/src/app/pages/photos.rs:643
#: crates/pdfs-gui/src/app/pages/photos.rs:631
msgid "Timeline"
msgstr "Cronologia"
#: crates/pdfs-gui/src/app/pages/photos.rs:647
#: crates/pdfs-gui/src/app/pages/photos.rs:635
msgid "Albums"
msgstr "Album"
#: crates/pdfs-gui/src/app/pages/photos.rs:713
#: crates/pdfs-gui/src/app/pages/photos.rs:654
msgid "On this day"
msgstr "Accadde oggi"
#: crates/pdfs-gui/src/app/pages/photos.rs:729
msgid "Importing from Google Photos…"
msgstr "Importazione da Google Photos…"
#. Translators: strftime format for a month on its own, such as "June 2024". %OB is the month name in its standalone (nominative) form; use %B if your language has no separate form.
#: crates/pdfs-gui/src/app/pages/photos.rs:803
#: crates/pdfs-gui/src/app/pages/photos.rs:821
msgid "%OB %Y"
msgstr "%B %Y"
#. Translators: a row of the date jump; {month} is a month such as "June 2024", {count} how many photos it holds.
#: crates/pdfs-gui/src/app/pages/photos.rs:834
#: crates/pdfs-gui/src/app/pages/photos.rs:852
#, rust-format
msgid "{month} ({count})"
msgstr "{month} ({count})"
#. Translators: a Photos filter tab that shows photos, videos and raw files together.
#: crates/pdfs-gui/src/app/pages/photos.rs:871
#: crates/pdfs-gui/src/app/pages/photos.rs:889
msgctxt "photo filter"
msgid "All"
msgstr "Tutti"
#: crates/pdfs-gui/src/app/pages/photos.rs:872
#: crates/pdfs-gui/src/app/pages/photos.rs:890
msgctxt "photo filter"
msgid "Photos"
msgstr "Foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:873
#: crates/pdfs-gui/src/app/pages/photos.rs:891
msgctxt "photo filter"
msgid "Videos"
msgstr "Video"
#. Translators: a Photos filter tab for raw camera files.
#: crates/pdfs-gui/src/app/pages/photos.rs:875
#: crates/pdfs-gui/src/app/pages/photos.rs:893
msgctxt "photo filter"
msgid "Raw"
msgstr "RAW"
#: crates/pdfs-gui/src/app/pages/photos.rs:1160
#: crates/pdfs-gui/src/app/pages/photos.rs:1198
msgid "Select Photo to Upload"
msgstr "Seleziona la foto da caricare"
#: crates/pdfs-gui/src/app/pages/photos.rs:1164
#: crates/pdfs-gui/src/app/pages/photos.rs:1202
#: crates/pdfs-gui/src/prompt.rs:60
msgid "Images"
msgstr "Immagini"
#: crates/pdfs-gui/src/app/pages/photos.rs:1220
#: crates/pdfs-gui/src/app/pages/photos.rs:1258
msgid "Photo uploaded"
msgstr "Foto caricata"
#: crates/pdfs-gui/src/app/pages/photos.rs:1225
#: crates/pdfs-gui/src/app/pages/photos.rs:1233
#: crates/pdfs-gui/src/app/pages/photos.rs:1263
#: crates/pdfs-gui/src/app/pages/photos.rs:1271
msgid "Couldn't upload photo"
msgstr "Impossibile caricare la foto"
#. Translators: badge on a photo tile whose shot includes a raw camera file.
#: crates/pdfs-gui/src/app/pages/photos.rs:1458
#: crates/pdfs-gui/src/app/pages/photos.rs:1432
msgid "RAW"
msgstr "RAW"
#: crates/pdfs-gui/src/app/pages/photos.rs:1843
#: crates/pdfs-gui/src/app/pages/photos.rs:1817
msgid "Move this photo to Trash?"
msgstr "Spostare questa foto nel cestino?"
#: crates/pdfs-gui/src/app/pages/photos.rs:1845
#: crates/pdfs-gui/src/app/pages/photos.rs:1819
#, rust-format
msgid "Move this photo to Trash? It is stored as {n} file."
msgid_plural "Move this photo to Trash? It is stored as {n} files."
msgstr[0] "Spostare questa foto nel cestino? È memorizzata come {n} file."
msgstr[1] "Spostare questa foto nel cestino? È memorizzata come {n} file."
#: crates/pdfs-gui/src/app/pages/photos.rs:1851
#: crates/pdfs-gui/src/app/pages/photos.rs:1825
#, rust-format
msgid "Move {n} photo to Trash?"
msgid_plural "Move {n} photos to Trash?"
msgstr[0] "Spostare {n} foto nel cestino?"
msgstr[1] "Spostare {n} foto nel cestino?"
#: crates/pdfs-gui/src/app/pages/photos.rs:1858
#: crates/pdfs-gui/src/app/pages/photos.rs:1832
#, rust-format
msgid "Move {n} photo to Trash? They are stored as {files} files."
msgid_plural "Move {n} photos to Trash? They are stored as {files} files."
msgstr[0] "Spostare {n} foto nel cestino? Sono memorizzate come {files} file."
msgstr[1] "Spostare {n} foto nel cestino? Sono memorizzate come {files} file."
#: crates/pdfs-gui/src/app/pages/photos.rs:1916
#: crates/pdfs-gui/src/app/pages/photos.rs:1890
msgid "The server refused."
msgstr "Il server ha rifiutato la richiesta."
#: crates/pdfs-gui/src/app/pages/photos.rs:1919
#: crates/pdfs-gui/src/app/pages/photos.rs:1893
msgid "Some photos couldn't be moved to Trash"
msgstr "Non è stato possibile spostare alcune foto nel cestino"
#: crates/pdfs-gui/src/app/pages/photos.rs:1928
#: crates/pdfs-gui/src/app/pages/photos.rs:1902
#, rust-format
msgid "Moved {n} photo to Trash"
msgid_plural "Moved {n} photos to Trash"
@@ -2732,7 +2736,7 @@ msgstr[0] "{n} foto spostata nel cestino"
msgstr[1] "{n} foto spostate nel cestino"
#. Translators: the Photos page subtitle, such as "12 videos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2463
#: crates/pdfs-gui/src/app/pages/photos.rs:2458
#, rust-format
msgid "{count} video"
msgid_plural "{count} videos"
@@ -2740,7 +2744,7 @@ msgstr[0] "{count} video"
msgstr[1] "{count} video"
#. Translators: the Photos page subtitle, such as "12 raw photos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2465
#: crates/pdfs-gui/src/app/pages/photos.rs:2460
#, rust-format
msgid "{count} raw photo"
msgid_plural "{count} raw photos"
@@ -2748,182 +2752,196 @@ msgstr[0] "{count} foto RAW"
msgstr[1] "{count} foto RAW"
#. Translators: the Photos page subtitle, such as "1,204 photos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2467
#: crates/pdfs-gui/src/app/pages/photos.rs:2462
#, rust-format
msgid "{count} photo"
msgid_plural "{count} photos"
msgstr[0] "{count} foto"
msgstr[1] "{count} foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:2495
#: crates/pdfs-gui/src/app/pages/photos.rs:2521
#: crates/pdfs-gui/src/app/pages/photos.rs:2490
#: crates/pdfs-gui/src/app/pages/photos.rs:2516
msgid "Unknown date"
msgstr "Data sconosciuta"
#. Translators: strftime format for a day heading in the photo timeline, such as "3 June 2026".
#: crates/pdfs-gui/src/app/pages/photos.rs:2518
#: crates/pdfs-gui/src/app/pages/photos.rs:2513
msgid "%-d %B %Y"
msgstr "%-d %B %Y"
#. Translators: strftime format for a photo's capture date and time, such as "2026-06-03 14:05:09".
#: crates/pdfs-gui/src/app/pages/photos.rs:2539
#: crates/pdfs-gui/src/app/pages/photos.rs:2534
msgid "%Y-%m-%d %H:%M:%S"
msgstr "%d/%m/%Y %H:%M:%S"
#: crates/pdfs-gui/src/app/pages/photos.rs:2543
#: crates/pdfs-gui/src/app/pages/photos.rs:2545
#: crates/pdfs-gui/src/app/pages/photos.rs:2538
#: crates/pdfs-gui/src/app/pages/photos.rs:2540
msgid "Unknown Date"
msgstr "Data sconosciuta"
#. Translators: strftime format for the day a photo was taken, shown on its tile when the timeline is grouped by month or year, such as "3 Jun".
#: crates/pdfs-gui/src/app/pages/photos.rs:2563
#: crates/pdfs-gui/src/app/pages/photos.rs:2558
msgid "%-d %b"
msgstr "%-d %b"
#: crates/pdfs-gui/src/app/pages/photos.rs:2585
#: crates/pdfs-gui/src/app/pages/photos.rs:2580
msgid "Every photo is in an album"
msgstr "Ogni foto è in un album"
#: crates/pdfs-gui/src/app/pages/photos.rs:2586
#: crates/pdfs-gui/src/app/pages/photos.rs:2581
msgid "Turn off the album filter to see everything."
msgstr "Disattiva il filtro degli album per vedere tutto."
#: crates/pdfs-gui/src/app/pages/photos.rs:2591
#: crates/pdfs-gui/src/app/pages/photos.rs:2586
msgid "No photos yet"
msgstr "Ancora nessuna foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:2592
#: crates/pdfs-gui/src/app/pages/photos.rs:2587
msgid "Photos you upload to Proton Drive appear here."
msgstr "Le foto caricate su Proton Drive appaiono qui."
#: crates/pdfs-gui/src/app/pages/photos.rs:2595
#: crates/pdfs-gui/src/app/pages/photos.rs:2590
msgid "No favorites yet"
msgstr "Ancora nessun preferito"
#: crates/pdfs-gui/src/app/pages/photos.rs:2596
#: crates/pdfs-gui/src/app/pages/photos.rs:2591
msgid "Star a photo in the viewer or from its menu to find it here."
msgstr ""
"Aggiungi una foto ai preferiti nel visualizzatore o dal suo menu per "
"trovarla qui."
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2601
#: crates/pdfs-gui/src/app/pages/photos.rs:2596
#, rust-format
msgid "No favorite videos in {month}"
msgstr "Nessun video preferito a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2602
#: crates/pdfs-gui/src/app/pages/photos.rs:2597
msgid "No favorite videos"
msgstr "Nessun video preferito"
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2604
#: crates/pdfs-gui/src/app/pages/photos.rs:2599
#, rust-format
msgid "No favorite raw files in {month}"
msgstr "Nessun file RAW preferito a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2605
#: crates/pdfs-gui/src/app/pages/photos.rs:2600
msgid "No favorite raw files"
msgstr "Nessun file RAW preferito"
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2607
#: crates/pdfs-gui/src/app/pages/photos.rs:2602
#, rust-format
msgid "No favorite photos in {month}"
msgstr "Nessuna foto preferita a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2608
#: crates/pdfs-gui/src/app/pages/photos.rs:2603
msgid "No favorite photos"
msgstr "Nessuna foto preferita"
#: crates/pdfs-gui/src/app/pages/photos.rs:2610
#: crates/pdfs-gui/src/app/pages/photos.rs:2605
msgid "Turn off the favorites filter to see everything."
msgstr "Disattiva il filtro dei preferiti per vedere tutto."
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2615
#: crates/pdfs-gui/src/app/pages/photos.rs:2610
#, rust-format
msgid "No videos in {month}"
msgstr "Nessun video a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2616
#: crates/pdfs-gui/src/app/pages/photos.rs:2611
msgid "No videos"
msgstr "Nessun video"
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2618
#: crates/pdfs-gui/src/app/pages/photos.rs:2613
#, rust-format
msgid "No raw files in {month}"
msgstr "Nessun file RAW a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2619
#: crates/pdfs-gui/src/app/pages/photos.rs:2614
msgid "No raw files"
msgstr "Nessun file RAW"
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2621
#: crates/pdfs-gui/src/app/pages/photos.rs:2616
#, rust-format
msgid "No photos in {month}"
msgstr "Nessuna foto a {month}"
#: crates/pdfs-gui/src/app/pages/photos.rs:2622
#: crates/pdfs-gui/src/app/pages/photos.rs:2617
msgid "No photos"
msgstr "Nessuna foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:2624
#: crates/pdfs-gui/src/app/pages/photos.rs:2619
msgid "Try another filter or month."
msgstr "Prova un altro filtro o un altro mese."
#: crates/pdfs-gui/src/app/pages/photos.rs:2735
#, rust-format
msgid "{n} year ago"
msgid_plural "{n} years ago"
msgstr[0] "{n} anno fa"
msgstr[1] "{n} anni fa"
#: crates/pdfs-gui/src/app/pages/photos.rs:2760
#, rust-format
msgid "{date}, {n} photo"
msgid_plural "{date}, {n} photos"
msgstr[0] "{date}, {n} foto"
msgstr[1] "{date}, {n} foto"
#. Translators: a check item in a photo's menu, on while the photo is a favorite.
#: crates/pdfs-gui/src/app/pages/photos.rs:2853
#: crates/pdfs-gui/src/app/pages/photos.rs:2989
msgctxt "state"
msgid "Favorite"
msgstr "Preferito"
#: crates/pdfs-gui/src/app/pages/photos.rs:2858
#: crates/pdfs-gui/src/app/pages/photos.rs:2994
msgctxt "verb"
msgid "Select"
msgstr "Seleziona"
#: crates/pdfs-gui/src/app/pages/photos.rs:2870
#: crates/pdfs-gui/src/app/pages/photos.rs:3006
msgid "Remove from Album"
msgstr "Rimuovi dall'album"
#: crates/pdfs-gui/src/app/pages/photos.rs:2876
#: crates/pdfs-gui/src/app/pages/photos.rs:3012
msgid "Move to Trash…"
msgstr "Sposta nel cestino…"
#: crates/pdfs-gui/src/app/pages/photos.rs:2900
#: crates/pdfs-gui/src/app/pages/photos.rs:3036
msgid "Added to Favorites"
msgstr "Aggiunto ai preferiti"
#: crates/pdfs-gui/src/app/pages/photos.rs:2902
#: crates/pdfs-gui/src/app/pages/photos.rs:3038
msgid "Removed from Favorites"
msgstr "Rimosso dai preferiti"
#: crates/pdfs-gui/src/app/pages/photos.rs:2931
#: crates/pdfs-gui/src/app/pages/photos.rs:3067
msgid "Loading photos…"
msgstr "Caricamento delle foto…"
#: crates/pdfs-gui/src/app/pages/photos.rs:2932
#: crates/pdfs-gui/src/app/pages/photos.rs:3068
msgid "Reading your Proton Drive timeline."
msgstr "Lettura della cronologia di Proton Drive."
#: crates/pdfs-gui/src/app/pages/photos.rs:3021
#: crates/pdfs-gui/src/app/pages/photos.rs:3161
msgid "Empty album"
msgstr "Album vuoto"
#: crates/pdfs-gui/src/app/pages/photos.rs:3022
#: crates/pdfs-gui/src/app/pages/photos.rs:3162
msgid "This album has no photos in it."
msgstr "Questo album non contiene foto."
#: crates/pdfs-gui/src/app/pages/photos.rs:3064
#: crates/pdfs-gui/src/app/pages/photos.rs:3082
#: crates/pdfs-gui/src/app/pages/photos.rs:3204
#: crates/pdfs-gui/src/app/pages/photos.rs:3222
msgid "Couldn't load more photos"
msgstr "Impossibile caricare altre foto"
#: crates/pdfs-gui/src/app/pages/photos.rs:3069
#: crates/pdfs-gui/src/app/pages/photos.rs:3076
#: crates/pdfs-gui/src/app/pages/photos.rs:3209
#: crates/pdfs-gui/src/app/pages/photos.rs:3216
msgid "Couldn't load photos"
msgstr "Impossibile caricare le foto"