feat(gui): one Filters popover for the photos timeline

Favorites, "not in an album" and the month move from separate pills and a
dropdown into a Filters popover next to the kind tabs. The kind tabs stay
in the row because their counts are worth a glance. The button carries a
badge with the number of active filters, kind included, and the popover
has a "Clear filters" action that resets everything in one reload.

Flipping a filter while a page was still loading used to drop the reload,
leaving the timeline answering the old filter. The request is now queued
and the stale page is discarded.
This commit is contained in:
nvrl committed 2026-09-28 02:12:59 +02:00
1 parent 2f14c1688f
commit 2757977fd6
14 files changed
+1910 -1676

No files matched your search

+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff
+189 -178
View File
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.2.2\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-28 00:50+0200\n"
"POT-Creation-Date: 2026-09-28 01:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,99 +18,99 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: crates/pdfs-gui/src/app/main.rs:840
#: crates/pdfs-gui/src/app/main.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:1133
#: crates/pdfs-gui/src/prompt.rs:169
msgid "My files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:843 crates/pdfs-gui/src/app/main.rs:1456
#: crates/pdfs-gui/src/app/main.rs:847 crates/pdfs-gui/src/app/main.rs:1460
#: crates/pdfs-gui/src/app/pages/albums.rs:633
#: crates/pdfs-gui/src/app/pages/photos.rs:756
#: crates/pdfs-gui/src/app/pages/photos.rs:789
msgid "Photos"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:848
#: crates/pdfs-gui/src/app/main.rs:852
msgid "Shared with me"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:853
#: crates/pdfs-gui/src/app/main.rs:857
msgid "Shared by me"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:856
#: crates/pdfs-gui/src/app/main.rs:860
#: crates/pdfs-gui/src/app/pages/devices.rs:109
msgid "Computers"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:857
#: crates/pdfs-gui/src/app/main.rs:861
#: crates/pdfs-gui/src/app/pages/trash.rs:106
msgid "Trash"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:861
#: crates/pdfs-gui/src/app/main.rs:865
msgid "Sync"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:866
#: crates/pdfs-gui/src/app/main.rs:870
#: crates/pdfs-gui/src/app/pages/activity.rs:153
msgid "Activity"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1012
#: crates/pdfs-gui/src/app/main.rs:1016
msgid "Refresh (F5)"
msgstr ""
#. 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:1186
#: crates/pdfs-gui/src/app/main.rs:1190
#, rust-format
msgid "{what}: {detail}"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1205
#: crates/pdfs-gui/src/app/main.rs:1209
msgid "You're offline"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1206
#: crates/pdfs-gui/src/app/main.rs:1210
msgid "That's not there any more"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1207
#: crates/pdfs-gui/src/app/main.rs:1211
msgid "You don't have access to that"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1208
#: crates/pdfs-gui/src/app/main.rs:1212
msgid "Something changed this first"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1209
#: crates/pdfs-gui/src/app/main.rs:1213
msgid "Your Proton Drive is full"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1250 crates/pdfs-gui/src/app/main.rs:1438
#: crates/pdfs-gui/src/app/main.rs:1254 crates/pdfs-gui/src/app/main.rs:1442
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1251 crates/pdfs-gui/src/app/main.rs:1495
#: crates/pdfs-gui/src/app/main.rs:1255 crates/pdfs-gui/src/app/main.rs:1499
msgid "Keyboard Shortcuts"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1253
#: crates/pdfs-gui/src/app/main.rs:1257
msgid "About Proton Drive for Linux"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1258
#: crates/pdfs-gui/src/app/main.rs:1262
msgid "Main menu"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Drive for Linux"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1312
#: crates/pdfs-gui/src/app/main.rs:1316
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -118,23 +118,23 @@ msgid ""
"AG."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1317
#: crates/pdfs-gui/src/app/main.rs:1321
msgid "Source Code"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1321
#: crates/pdfs-gui/src/app/main.rs:1325
msgid "Proton Terms of Service"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1325
#: crates/pdfs-gui/src/app/main.rs:1329
msgid "Proton Privacy Policy"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1330
#: crates/pdfs-gui/src/app/main.rs:1334
msgid "Disclaimer"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1334
#: crates/pdfs-gui/src/app/main.rs:1338
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
@@ -149,21 +149,21 @@ 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:1345
#: crates/pdfs-gui/src/app/main.rs:1349
msgid "translator-credits"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1376
#: crates/pdfs-gui/src/app/main.rs:1380
msgid "Stop Proton Drive?"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1377
#: crates/pdfs-gui/src/app/main.rs:1381
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1379 crates/pdfs-gui/src/app/main.rs:1652
#: crates/pdfs-gui/src/app/main.rs:1383 crates/pdfs-gui/src/app/main.rs:1656
#: 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
@@ -177,7 +177,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:1854
#: crates/pdfs-gui/src/app/pages/photos.rs:1939
#: 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
@@ -191,67 +191,67 @@ msgstr ""
msgid "Cancel"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1380
#: crates/pdfs-gui/src/app/main.rs:1384
msgctxt "verb"
msgid "Stop"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1401
msgid "Couldn't stop Proton Drive"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1402
msgid "The mount service did not stop."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1434
#: crates/pdfs-gui/src/app/main.rs:1438
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1436
#: crates/pdfs-gui/src/app/main.rs:1440
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/main.rs:1441
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1439
#: crates/pdfs-gui/src/app/main.rs:1443
msgid "Keyboard shortcuts"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1445
#: crates/pdfs-gui/src/app/main.rs:1449
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1446
#: crates/pdfs-gui/src/app/main.rs:1450
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1447
#: crates/pdfs-gui/src/app/main.rs:1451
msgid "Back / forward"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1448
#: crates/pdfs-gui/src/app/main.rs:1452
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1449
#: crates/pdfs-gui/src/app/main.rs:1453
msgid "Grid / list"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1450
#: crates/pdfs-gui/src/app/main.rs:1454
#: 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
@@ -260,63 +260,63 @@ msgstr ""
msgid "Rename"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1451 crates/pdfs-gui/src/app/main.rs:1471
#: crates/pdfs-gui/src/app/main.rs:1455 crates/pdfs-gui/src/app/main.rs:1475
#: 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/duplicates.rs:24
#: crates/pdfs-gui/src/app/pages/photos.rs:550
#: crates/pdfs-gui/src/app/pages/photos.rs:1851
#: crates/pdfs-gui/src/app/pages/photos.rs:1855
#: crates/pdfs-gui/src/app/pages/photos.rs:561
#: crates/pdfs-gui/src/app/pages/photos.rs:1936
#: crates/pdfs-gui/src/app/pages/photos.rs:1940
#: crates/pdfs-gui/src/app/widgets/details.rs:162
msgid "Move to Trash"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1452
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Clear the selection"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/main.rs:1462
msgid "Larger thumbnails"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1459
#: crates/pdfs-gui/src/app/main.rs:1463
msgid "Smaller thumbnails"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1460
#: crates/pdfs-gui/src/app/main.rs:1464
msgid "Reset thumbnail size"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1461
#: crates/pdfs-gui/src/app/main.rs:1465
msgid "Select all"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1465
#: crates/pdfs-gui/src/app/main.rs:1469
msgid "Photo Viewer"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1467
#: crates/pdfs-gui/src/app/main.rs:1471
msgid "Previous / next photo"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1468
#: crates/pdfs-gui/src/app/main.rs:1472
msgid "First / last photo"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1469
#: crates/pdfs-gui/src/app/main.rs:1473
msgid "Show details"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1470
#: crates/pdfs-gui/src/app/main.rs:1474
msgid "Fullscreen"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1472
#: crates/pdfs-gui/src/app/main.rs:1476
msgid "Close"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1575
#: crates/pdfs-gui/src/app/main.rs:1579
msgid "Select a single item to rename it"
msgstr ""
@@ -353,7 +353,7 @@ msgstr ""
#: 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:418
#: crates/pdfs-gui/src/app/pages/photos.rs:429
#: 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
@@ -389,7 +389,7 @@ msgstr ""
#: 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:3235
#: crates/pdfs-gui/src/app/pages/photos.rs:3330
#: 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."
@@ -401,7 +401,7 @@ msgstr ""
#: 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:3269
#: crates/pdfs-gui/src/app/pages/photos.rs:3364
#: 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
@@ -413,7 +413,7 @@ msgstr ""
#: 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:3270
#: crates/pdfs-gui/src/app/pages/photos.rs:3365
#: 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
@@ -425,7 +425,7 @@ msgstr ""
#: 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:3278
#: crates/pdfs-gui/src/app/pages/photos.rs:3373
#: 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
@@ -438,7 +438,7 @@ msgstr ""
#: 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:3279
#: crates/pdfs-gui/src/app/pages/photos.rs:3374
#: 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
@@ -446,12 +446,12 @@ msgid "Waiting for the Proton Drive mount service to come up."
msgstr ""
#: crates/pdfs-gui/src/app/pages/activity.rs:419
#: crates/pdfs-gui/src/app/pages/photos.rs:2522
#: crates/pdfs-gui/src/app/pages/photos.rs:2607
msgid "Today"
msgstr ""
#: crates/pdfs-gui/src/app/pages/activity.rs:422
#: crates/pdfs-gui/src/app/pages/photos.rs:2527
#: crates/pdfs-gui/src/app/pages/photos.rs:2612
msgid "Yesterday"
msgstr ""
@@ -504,7 +504,7 @@ msgstr ""
#. 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:2566
#: crates/pdfs-gui/src/app/pages/photos.rs:2651
msgid "%H:%M"
msgstr ""
@@ -610,12 +610,12 @@ msgid "Reading your Proton Drive albums."
msgstr ""
#: crates/pdfs-gui/src/app/pages/albums.rs:59
#: crates/pdfs-gui/src/app/pages/photos.rs:3148
#: crates/pdfs-gui/src/app/pages/photos.rs:3243
msgid "No photo library"
msgstr ""
#: crates/pdfs-gui/src/app/pages/albums.rs:60
#: crates/pdfs-gui/src/app/pages/photos.rs:3149
#: crates/pdfs-gui/src/app/pages/photos.rs:3244
msgid "This Proton account doesn't have Photos enabled."
msgstr ""
@@ -648,7 +648,7 @@ msgstr[1] ""
#: 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:3002
#: crates/pdfs-gui/src/app/pages/photos.rs:3087
#: 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
@@ -715,10 +715,10 @@ msgstr ""
#: 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:1284
#: crates/pdfs-gui/src/app/pages/photos.rs:1939
#: crates/pdfs-gui/src/app/pages/photos.rs:3066
#: crates/pdfs-gui/src/app/pages/photos.rs:3241
#: crates/pdfs-gui/src/app/pages/photos.rs:1369
#: crates/pdfs-gui/src/app/pages/photos.rs:2024
#: crates/pdfs-gui/src/app/pages/photos.rs:3151
#: crates/pdfs-gui/src/app/pages/photos.rs:3336
#: 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
@@ -782,7 +782,7 @@ msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/albums.rs:424
#: crates/pdfs-gui/src/app/pages/photos.rs:722
#: crates/pdfs-gui/src/app/pages/photos.rs:755
msgid "New Album…"
msgstr ""
@@ -973,7 +973,7 @@ msgstr ""
#. 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:1787
#: crates/pdfs-gui/src/app/pages/photos.rs:1872
#, rust-format
msgid "{n} selected"
msgid_plural "{n} selected"
@@ -982,8 +982,8 @@ msgstr[1] ""
#: 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:1932
#: crates/pdfs-gui/src/app/pages/photos.rs:1938
#: crates/pdfs-gui/src/app/pages/photos.rs:2017
#: crates/pdfs-gui/src/app/pages/photos.rs:2023
msgid "Couldn't move to Trash"
msgstr ""
@@ -1017,7 +1017,7 @@ msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/browser.rs:727
#: crates/pdfs-gui/src/app/pages/photos.rs:1925
#: crates/pdfs-gui/src/app/pages/photos.rs:2010
msgid "Undo"
msgstr ""
@@ -1074,7 +1074,7 @@ msgid "Open With…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/browser.rs:1263
#: crates/pdfs-gui/src/app/pages/photos.rs:3000
#: crates/pdfs-gui/src/app/pages/photos.rs:3085
msgctxt "verb"
msgid "Play"
msgstr ""
@@ -1367,7 +1367,7 @@ msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/browser.rs:2696
#: crates/pdfs-gui/src/app/pages/photos.rs:740
#: crates/pdfs-gui/src/app/pages/photos.rs:773
msgctxt "verb"
msgid "View"
msgstr ""
@@ -2505,177 +2505,188 @@ msgid "Hide details"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1429
#: crates/pdfs-gui/src/app/pages/photos.rs:3061
#: crates/pdfs-gui/src/app/pages/photos.rs:3065
#: crates/pdfs-gui/src/app/pages/photos.rs:3146
#: crates/pdfs-gui/src/app/pages/photos.rs:3150
msgid "Couldn't change the favorite"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:428
#: crates/pdfs-gui/src/app/pages/photos.rs:508
#: crates/pdfs-gui/src/app/pages/photos.rs:439
#: crates/pdfs-gui/src/app/pages/photos.rs:519
msgid "Upload photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:433
#: crates/pdfs-gui/src/app/pages/photos.rs:444
#: crates/pdfs-gui/src/app/pages/takeout.rs:287
msgid "Import from Google Photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:473
#: crates/pdfs-gui/src/app/pages/photos.rs:622
#: crates/pdfs-gui/src/app/pages/photos.rs:484
msgid "Jump to a month"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:492
#: crates/pdfs-gui/src/app/pages/photos.rs:503
msgid "Back to albums"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:504
#: crates/pdfs-gui/src/app/pages/photos.rs:515
msgctxt "verb"
msgid "Upload"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:517
#: crates/pdfs-gui/src/app/pages/photos.rs:528
msgid "Import a Google Photos Takeout export"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:527
#: crates/pdfs-gui/src/app/pages/photos.rs:538
msgid "Find duplicates"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:536
#: crates/pdfs-gui/src/app/pages/photos.rs:545
#: crates/pdfs-gui/src/app/pages/photos.rs:1785
#: crates/pdfs-gui/src/app/pages/photos.rs:547
#: crates/pdfs-gui/src/app/pages/photos.rs:556
#: crates/pdfs-gui/src/app/pages/photos.rs:1870
msgid "Select photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:556
#: crates/pdfs-gui/src/app/pages/photos.rs:3018
#: crates/pdfs-gui/src/app/pages/photos.rs:567
#: crates/pdfs-gui/src/app/pages/photos.rs:3103
msgid "Add to Album…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:562
#: crates/pdfs-gui/src/app/pages/photos.rs:573
msgid "Leave selection (Esc)"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:606
msgid "Show only favorites"
#: crates/pdfs-gui/src/app/pages/photos.rs:616
msgid "Only favorites"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:613
msgid "Show only photos not in an album"
#: crates/pdfs-gui/src/app/pages/photos.rs:619
msgid "Only photos not in an album"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:620
#: crates/pdfs-gui/src/app/pages/photos.rs:857
#: crates/pdfs-gui/src/app/pages/photos.rs:624
msgid "Month"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:625
#: crates/pdfs-gui/src/app/pages/photos.rs:921
msgid "All dates"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:641
#: crates/pdfs-gui/src/app/pages/photos.rs:634
msgid "Clear filters"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:651
msgid "Filters"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:674
msgid "Timeline"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:645
#: crates/pdfs-gui/src/app/pages/photos.rs:678
msgid "Albums"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:664
#: crates/pdfs-gui/src/app/pages/photos.rs:697
msgid "On this day"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:739
#: crates/pdfs-gui/src/app/pages/photos.rs:772
msgid "Importing from Google Photos…"
msgstr ""
#. 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:833
#: crates/pdfs-gui/src/app/pages/photos.rs:869
msgid "%OB %Y"
msgstr ""
#. 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:864
#: crates/pdfs-gui/src/app/pages/photos.rs:928
#, rust-format
msgid "{month} ({count})"
msgstr ""
#. Translators: a Photos filter tab that shows photos, videos and raw files together.
#: crates/pdfs-gui/src/app/pages/photos.rs:901
#: crates/pdfs-gui/src/app/pages/photos.rs:965
msgctxt "photo filter"
msgid "All"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:902
#: crates/pdfs-gui/src/app/pages/photos.rs:966
msgctxt "photo filter"
msgid "Photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:903
#: crates/pdfs-gui/src/app/pages/photos.rs:967
msgctxt "photo filter"
msgid "Videos"
msgstr ""
#. Translators: a Photos filter tab for raw camera files.
#: crates/pdfs-gui/src/app/pages/photos.rs:905
#: crates/pdfs-gui/src/app/pages/photos.rs:969
msgctxt "photo filter"
msgid "Raw"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1210
#: crates/pdfs-gui/src/app/pages/photos.rs:1295
msgid "Select Photo to Upload"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1214
#: crates/pdfs-gui/src/app/pages/photos.rs:1299
#: crates/pdfs-gui/src/prompt.rs:60
msgid "Images"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1270
#: crates/pdfs-gui/src/app/pages/photos.rs:1355
msgid "Photo uploaded"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1275
#: crates/pdfs-gui/src/app/pages/photos.rs:1283
#: crates/pdfs-gui/src/app/pages/photos.rs:1360
#: crates/pdfs-gui/src/app/pages/photos.rs:1368
msgid "Couldn't upload photo"
msgstr ""
#. Translators: badge on a photo tile whose shot includes a raw camera file.
#: crates/pdfs-gui/src/app/pages/photos.rs:1444
#: crates/pdfs-gui/src/app/pages/photos.rs:1529
msgid "RAW"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1829
#: crates/pdfs-gui/src/app/pages/photos.rs:1914
msgid "Move this photo to Trash?"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1831
#: crates/pdfs-gui/src/app/pages/photos.rs:1916
#, 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] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1837
#: crates/pdfs-gui/src/app/pages/photos.rs:1922
#, rust-format
msgid "Move {n} photo to Trash?"
msgid_plural "Move {n} photos to Trash?"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1844
#: crates/pdfs-gui/src/app/pages/photos.rs:1929
#, 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] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1908
#: crates/pdfs-gui/src/app/pages/photos.rs:1993
msgid "The server refused."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1911
#: crates/pdfs-gui/src/app/pages/photos.rs:1996
msgid "Some photos couldn't be moved to Trash"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:1920
#: crates/pdfs-gui/src/app/pages/photos.rs:2005
#, rust-format
msgid "Moved {n} photo to Trash"
msgid_plural "Moved {n} photos to Trash"
@@ -2683,7 +2694,7 @@ msgstr[0] ""
msgstr[1] ""
#. Translators: the Photos page subtitle, such as "12 videos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2476
#: crates/pdfs-gui/src/app/pages/photos.rs:2561
#, rust-format
msgid "{count} video"
msgid_plural "{count} videos"
@@ -2691,7 +2702,7 @@ msgstr[0] ""
msgstr[1] ""
#. Translators: the Photos page subtitle, such as "12 raw photos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2478
#: crates/pdfs-gui/src/app/pages/photos.rs:2563
#, rust-format
msgid "{count} raw photo"
msgid_plural "{count} raw photos"
@@ -2699,138 +2710,138 @@ msgstr[0] ""
msgstr[1] ""
#. Translators: the Photos page subtitle, such as "1,204 photos".
#: crates/pdfs-gui/src/app/pages/photos.rs:2480
#: crates/pdfs-gui/src/app/pages/photos.rs:2565
#, rust-format
msgid "{count} photo"
msgid_plural "{count} photos"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2508
#: crates/pdfs-gui/src/app/pages/photos.rs:2534
#: crates/pdfs-gui/src/app/pages/photos.rs:2593
#: crates/pdfs-gui/src/app/pages/photos.rs:2619
msgid "Unknown date"
msgstr ""
#. Translators: strftime format for a day heading in the photo timeline, such as "3 June 2026".
#: crates/pdfs-gui/src/app/pages/photos.rs:2531
#: crates/pdfs-gui/src/app/pages/photos.rs:2616
msgid "%-d %B %Y"
msgstr ""
#. 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:2552
#: crates/pdfs-gui/src/app/pages/photos.rs:2637
msgid "%Y-%m-%d %H:%M:%S"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2556
#: crates/pdfs-gui/src/app/pages/photos.rs:2558
#: crates/pdfs-gui/src/app/pages/photos.rs:2641
#: crates/pdfs-gui/src/app/pages/photos.rs:2643
msgid "Unknown Date"
msgstr ""
#. 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:2576
#: crates/pdfs-gui/src/app/pages/photos.rs:2661
msgid "%-d %b"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2598
#: crates/pdfs-gui/src/app/pages/photos.rs:2683
msgid "Every photo is in an album"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2599
#: crates/pdfs-gui/src/app/pages/photos.rs:2684
msgid "Turn off the album filter to see everything."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2604
#: crates/pdfs-gui/src/app/pages/photos.rs:2689
msgid "No photos yet"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2605
#: crates/pdfs-gui/src/app/pages/photos.rs:2690
msgid "Photos you upload to Proton Drive appear here."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2608
#: crates/pdfs-gui/src/app/pages/photos.rs:2693
msgid "No favorites yet"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2609
#: crates/pdfs-gui/src/app/pages/photos.rs:2694
msgid "Star a photo in the viewer or from its menu to find it here."
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2614
#: crates/pdfs-gui/src/app/pages/photos.rs:2699
#, rust-format
msgid "No favorite videos in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2615
#: crates/pdfs-gui/src/app/pages/photos.rs:2700
msgid "No favorite videos"
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2617
#: crates/pdfs-gui/src/app/pages/photos.rs:2702
#, rust-format
msgid "No favorite raw files in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2618
#: crates/pdfs-gui/src/app/pages/photos.rs:2703
msgid "No favorite raw files"
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2620
#: crates/pdfs-gui/src/app/pages/photos.rs:2705
#, rust-format
msgid "No favorite photos in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2621
#: crates/pdfs-gui/src/app/pages/photos.rs:2706
msgid "No favorite photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2623
#: crates/pdfs-gui/src/app/pages/photos.rs:2708
msgid "Turn off the favorites filter to see everything."
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2628
#: crates/pdfs-gui/src/app/pages/photos.rs:2713
#, rust-format
msgid "No videos in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2629
#: crates/pdfs-gui/src/app/pages/photos.rs:2714
msgid "No videos"
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2631
#: crates/pdfs-gui/src/app/pages/photos.rs:2716
#, rust-format
msgid "No raw files in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2632
#: crates/pdfs-gui/src/app/pages/photos.rs:2717
msgid "No raw files"
msgstr ""
#. Translators: {month} is a month and year, such as "June 2024".
#: crates/pdfs-gui/src/app/pages/photos.rs:2634
#: crates/pdfs-gui/src/app/pages/photos.rs:2719
#, rust-format
msgid "No photos in {month}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2635
#: crates/pdfs-gui/src/app/pages/photos.rs:2720
msgid "No photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2637
#: crates/pdfs-gui/src/app/pages/photos.rs:2722
msgid "Try another filter or month."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2753
#: crates/pdfs-gui/src/app/pages/photos.rs:2838
#, rust-format
msgid "{n} year ago"
msgid_plural "{n} years ago"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/photos.rs:2778
#: crates/pdfs-gui/src/app/pages/photos.rs:2863
#, rust-format
msgid "{date}, {n} photo"
msgid_plural "{date}, {n} photos"
@@ -2838,55 +2849,55 @@ msgstr[0] ""
msgstr[1] ""
#. Translators: a check item in a photo's menu, on while the photo is a favorite.
#: crates/pdfs-gui/src/app/pages/photos.rs:3007
#: crates/pdfs-gui/src/app/pages/photos.rs:3092
msgctxt "state"
msgid "Favorite"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3012
#: crates/pdfs-gui/src/app/pages/photos.rs:3097
msgctxt "verb"
msgid "Select"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3024
#: crates/pdfs-gui/src/app/pages/photos.rs:3109
msgid "Remove from Album"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3030
#: crates/pdfs-gui/src/app/pages/photos.rs:3115
msgid "Move to Trash…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3054
#: crates/pdfs-gui/src/app/pages/photos.rs:3139
msgid "Added to Favorites"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3056
#: crates/pdfs-gui/src/app/pages/photos.rs:3141
msgid "Removed from Favorites"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3085
#: crates/pdfs-gui/src/app/pages/photos.rs:3176
msgid "Loading photos…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3086
#: crates/pdfs-gui/src/app/pages/photos.rs:3177
msgid "Reading your Proton Drive timeline."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3179
#: crates/pdfs-gui/src/app/pages/photos.rs:3274
msgid "Empty album"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3180
#: crates/pdfs-gui/src/app/pages/photos.rs:3275
msgid "This album has no photos in it."
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3222
#: crates/pdfs-gui/src/app/pages/photos.rs:3240
#: crates/pdfs-gui/src/app/pages/photos.rs:3317
#: crates/pdfs-gui/src/app/pages/photos.rs:3335
msgid "Couldn't load more photos"
msgstr ""
#: crates/pdfs-gui/src/app/pages/photos.rs:3227
#: crates/pdfs-gui/src/app/pages/photos.rs:3234
#: crates/pdfs-gui/src/app/pages/photos.rs:3322
#: crates/pdfs-gui/src/app/pages/photos.rs:3329
msgid "Couldn't load photos"
msgstr ""
+194 -181
View File
File diff suppressed because it is too large. Load diff
+194 -181
View File
File diff suppressed because it is too large. Load diff