From b40ca797d9900cf2999199c6a62bbb17c3ca2cf4 Mon Sep 17 00:00:00 2001 From: Nils Pukropp Date: Sat, 31 Oct 2026 10:24:32 +0100 Subject: [PATCH 1/2] fix(fuse): run a burst's named folders first and retry failed watches A poll in the same burst as a new folder's Reconcile(id) took its place, so the new folder waited behind a pass over every other one (B260). A recursive watch that failed partway left its watches registered, was never retried, and its events ran passes over every folder (B262). It is now unwatched and retried every 10 minutes, symlinks are not followed, and watcher errors are logged. A folder removed and added again in one burst keeps its watch under the new id (B272). --- crates/pdfs-fuse/src/sync.rs | 26 +++- crates/pdfs-fuse/src/sync/engine.rs | 199 ++++++++++++++++++---------- docs/BUGS.md | 38 ++++-- 3 files changed, 181 insertions(+), 82 deletions(-) diff --git a/crates/pdfs-fuse/src/sync.rs b/crates/pdfs-fuse/src/sync.rs index c698021..a5c5f09 100644 --- a/crates/pdfs-fuse/src/sync.rs +++ b/crates/pdfs-fuse/src/sync.rs @@ -48,11 +48,11 @@ mod engine; mod local_scan; mod model; mod planner; -#[cfg(test)] -use engine::Running; pub(crate) use engine::SYNC_CONCURRENCY; pub(crate) use engine::{EngineHealth, SyncMsg, spawn}; #[cfg(test)] +use engine::{Running, burst_order, keep_wanted}; +#[cfg(test)] use engine::{classify, event_target, settle_with}; #[cfg(test)] use local_scan::is_write_mode; @@ -2478,6 +2478,28 @@ mod tests { assert_eq!(health.report().panics, 1); } + /// Folders named by id run before the rest of a `ReconcileAll` in the + /// same burst, so a folder just added does not wait behind a pass over + /// every other folder (`docs/BUGS.md` B260). + #[test] + fn named_folders_run_before_the_rest_of_a_burst() { + let ids: HashSet = [9, 4].into(); + assert_eq!(burst_order(&ids, &[1, 4, 6, 9]), [4, 9, 1, 6]); + assert_eq!(burst_order(&HashSet::new(), &[1, 4]), [1, 4]); + // A folder the list no longer has still gets the pass it asked for. + assert_eq!(burst_order(&[12].into(), &[1]), [12, 1]); + } + + /// A folder removed and added again keeps its watch under the new id; + /// a folder that is gone loses its watch (`docs/BUGS.md` B272). + #[test] + fn a_re_added_folder_keeps_its_watch_under_the_new_id() { + let mut have = vec![(PathBuf::from("/a"), 1), (PathBuf::from("/b"), 2)]; + let dropped = keep_wanted(&mut have, &[(PathBuf::from("/a"), 7)]); + assert_eq!(have, [(PathBuf::from("/a"), 7)]); + assert_eq!(dropped, [PathBuf::from("/b")]); + } + /// While a pass runs, the report names its folder, which is what tells a /// long pass apart from an idle engine. #[test] diff --git a/crates/pdfs-fuse/src/sync/engine.rs b/crates/pdfs-fuse/src/sync/engine.rs index 7020cb4..8d6fb00 100644 --- a/crates/pdfs-fuse/src/sync/engine.rs +++ b/crates/pdfs-fuse/src/sync/engine.rs @@ -29,6 +29,9 @@ const POLL_INTERVAL: Duration = Duration::from_secs(120); /// unusable done one-at-a-time; this bounds concurrency like the bulk-upload /// engine does. pub(crate) const SYNC_CONCURRENCY: usize = 8; +/// How long after a failed watch the engine tries the watches again. Each try +/// walks the folder's whole tree, so not on every burst. +const REWATCH_RETRY: Duration = Duration::from_secs(600); /// A message to the sync engine's control thread. pub(crate) enum SyncMsg { @@ -183,24 +186,35 @@ fn engine_loop(core: Core, rx: Receiver) { let tx_events = core.sync_tx.clone(); let watched_events = watched.clone(); - let mut watcher = - match notify::recommended_watcher(move |res: notify::Result| { - let Ok(event) = res else { return }; - // Ignore pure metadata/access noise; content changes are what matter. - if matches!(event.kind, notify::EventKind::Access(_)) { - return; - } - let msg = event_target(&watched_events.lock(), &event.paths); - let _ = tx_events.send(msg); - }) { - Ok(w) => w, + let handler = move |res: notify::Result| { + let event = match res { + Ok(event) => event, + // Running out of inotify watches for a new subfolder, say: that + // subfolder's changes are then found by the poll only (B262). Err(e) => { - warn!(error = %e, "filesystem watcher unavailable; sync is poll-only"); - // Still run the loop so polling and explicit SyncNow work. - poll_only_loop(&core, rx); + warn!(error = %e, "sync: filesystem watcher error"); return; } }; + // Ignore pure metadata/access noise; content changes are what matter. + if matches!(event.kind, notify::EventKind::Access(_)) { + return; + } + let msg = event_target(&watched_events.lock(), &event.paths); + let _ = tx_events.send(msg); + }; + // The local walk skips symlinks, so following them here would only watch + // trees outside the folder, and run passes over it for changes made there. + let config = notify::Config::default().with_follow_symlinks(false); + let mut watcher = match notify::RecommendedWatcher::new(handler, config) { + Ok(w) => w, + Err(e) => { + warn!(error = %e, "filesystem watcher unavailable; sync is poll-only"); + // Still run the loop so polling and explicit SyncNow work. + poll_only_loop(&core, rx); + return; + } + }; // Periodic remote poll. { @@ -218,8 +232,9 @@ fn engine_loop(core: Core, rx: Receiver) { .ok(); } - rewatch(&core, &mut watcher, &watched); - reconcile_all(&core); + let mut unwatched = rewatch(&core, &mut watcher, &watched); + let mut last_rewatch = Instant::now(); + run_burst(&core, &HashSet::new(), true); while let Ok(msg) = rx.recv() { let mut ids: HashSet = HashSet::new(); @@ -232,19 +247,16 @@ fn engine_loop(core: Core, rx: Receiver) { return; } + // A folder whose watch failed is tried again now and then, not only + // when the folder set changes. + if unwatched && last_rewatch.elapsed() >= REWATCH_RETRY { + do_rewatch = true; + } if do_rewatch { - rewatch(&core, &mut watcher, &watched); - } - if all { - reconcile_all(&core); - } else { - for id in ids { - if core.sync_paused() { - break; - } - run_pass_by_id(&core, id); - } + unwatched = rewatch(&core, &mut watcher, &watched); + last_rewatch = Instant::now(); } + run_burst(&core, &ids, all); } } @@ -261,7 +273,7 @@ fn poll_only_loop(core: &Core, rx: Receiver) { } }); } - reconcile_all(core); + run_burst(core, &HashSet::new(), true); while let Ok(msg) = rx.recv() { let mut ids: HashSet = HashSet::new(); let mut all = false; @@ -272,19 +284,59 @@ fn poll_only_loop(core: &Core, rx: Receiver) { info!("sync engine stopping"); return; } - if all { - reconcile_all(core); - } else { - for id in ids { - if core.sync_paused() { - break; - } - run_pass_by_id(core, id); + run_burst(core, &ids, all); + } +} + +/// Run the passes one burst asked for: the folders named by id, then, when the +/// burst also holds a `ReconcileAll`, every other folder. +/// +/// The named folders go first. A poll's `ReconcileAll` in the same burst used +/// to take their place, and a folder just added, which has the highest id, +/// waited behind a full pass over every other folder (`docs/BUGS.md` B260). +/// +/// Skipped while sync is paused, and cut short when a pause lands between +/// passes: the resume sends a fresh [`SyncMsg::ReconcileAll`], which walks +/// everything the watcher reported meanwhile. +fn run_burst(core: &Core, ids: &HashSet, all: bool) { + if core.sync_paused() { + debug!("sync: paused, skipping reconcile"); + return; + } + let folders = if all { + match core.db.sync_folder_list() { + Ok(folders) => folders, + Err(e) => { + warn!(error = ?e, "sync: cannot list folders"); + Vec::new() } } + } else { + Vec::new() + }; + let listed: Vec = folders.iter().map(|f| f.id).collect(); + for id in burst_order(ids, &listed) { + if core.sync_paused() { + break; + } + // A folder named by id is read again: it may have been added or + // changed after the list was read. + match folders.iter().find(|f| f.id == id) { + Some(folder) if !ids.contains(&id) => run_pass(core, folder), + _ => run_pass_by_id(core, id), + } } } +/// The order of a burst's passes: the folders named by id, lowest first, then +/// the rest of `listed` in its own order. +pub(super) fn burst_order(ids: &HashSet, listed: &[i64]) -> Vec { + let mut order: Vec = ids.iter().copied().collect(); + order.sort_unstable(); + order.extend(listed.iter().copied().filter(|id| !ids.contains(id))); + order +} + /// Absorb the rest of an event burst, returning once the watcher has been quiet /// for `quiet` or `cap` has elapsed since the first event — whichever comes /// first. The caller has already classified the event that opened the burst. @@ -356,26 +408,6 @@ pub(super) fn classify( true } -/// Reconcile every mirror folder in turn. Skipped while sync is paused: the -/// resume sends a fresh [`SyncMsg::ReconcileAll`], which walks everything the -/// watcher reported meanwhile. -fn reconcile_all(core: &Core) { - if core.sync_paused() { - debug!("sync: paused, skipping reconcile"); - return; - } - let folders = match core.db.sync_folder_list() { - Ok(f) => f, - Err(e) => { - warn!(error = ?e, "sync: cannot list folders"); - return; - } - }; - for folder in folders { - run_pass(core, &folder); - } -} - /// The reconcile a watcher event asks for: the one mirror folder all its paths /// lie in, so an edit in one folder does not walk every other one too. An event /// that spans folders, or that no watched folder claims (a watch list a moment @@ -396,7 +428,8 @@ pub(super) fn event_target(watched: &[(PathBuf, i64)], paths: &[PathBuf]) -> Syn } /// Bring the filesystem watches in line with the current mirror-folder set: -/// watch newly-added folders, drop removed ones. +/// watch newly-added folders, drop removed ones. Returns whether a folder is +/// left unwatched because its watch failed. /// /// The watch calls run on a copy, outside the lock: the watcher's event /// callback takes the same lock, and a backend that hands a watch request to @@ -405,7 +438,7 @@ fn rewatch( core: &Core, watcher: &mut notify::RecommendedWatcher, watched: &Mutex>, -) { +) -> bool { let want: Vec<(PathBuf, i64)> = match core.db.sync_folder_list() { Ok(f) => f .into_iter() @@ -414,30 +447,60 @@ fn rewatch( .collect(), Err(e) => { warn!(error = ?e, "sync: cannot list folders to watch"); - return; + return false; } }; let mut have = watched.lock().clone(); // Drop watches no longer wanted. - have.retain(|(path, _)| { - if want.iter().any(|(p, _)| p == path) { - true - } else { - let _ = watcher.unwatch(path); - false - } - }); + for path in keep_wanted(&mut have, &want) { + let _ = watcher.unwatch(&path); + } // Add newly wanted watches. + let mut failed = false; for (path, id) in &want { if have.iter().any(|(p, _)| p == path) { continue; } match watcher.watch(path, RecursiveMode::Recursive) { Ok(()) => have.push((path.clone(), *id)), - Err(e) => warn!(path = %path.display(), error = %e, "sync: watch failed"), + Err(e) => { + // A recursive watch that fails partway keeps the watches it had + // added. Their events would match no folder and run a pass over + // every one, and they hold watches the next folder needs (B262). + let _ = watcher.unwatch(path); + failed = true; + warn!( + path = %path.display(), + error = %e, + "sync: watch failed; the poll finds this folder's changes until a retry \ + works. A low fs.inotify.max_user_watches is the usual cause" + ); + } } } *watched.lock() = have; + failed +} + +/// Keep the watches in `have` that `want` still asks for, and return the paths +/// of the others, to unwatch. +/// +/// A path is matched alone, but takes the id `want` gives it: a folder removed +/// and added again in one burst keeps its watch, and its events go to the new +/// row rather than to the removed one (`docs/BUGS.md` B272). +pub(super) fn keep_wanted(have: &mut Vec<(PathBuf, i64)>, want: &[(PathBuf, i64)]) -> Vec { + let mut dropped = Vec::new(); + have.retain_mut(|(path, id)| match want.iter().find(|(p, _)| p == path) { + Some((_, wanted)) => { + *id = *wanted; + true + } + None => { + dropped.push(path.clone()); + false + } + }); + dropped } // ---- reconcile ------------------------------------------------------------ diff --git a/docs/BUGS.md b/docs/BUGS.md index 2103de3..9814d4e 100644 --- a/docs/BUGS.md +++ b/docs/BUGS.md @@ -69,7 +69,6 @@ original wording. | Entry | Title | What is left | |---|---|---| | [B273](#b273--a-restore-proposes-another-computers-paths-when-the-two-share-a-hostname) | A restore proposes another computer's paths when the two share a hostname | Not fixed | -| [B272](#b272--after-a-folder-is-removed-and-added-again-its-file-events-go-to-the-old-id) | After a folder is removed and added again, its file events go to the old id | Not fixed | | [B271](#b271--one-failed-listing-makes-a-large-first-sync-start-over-from-nothing) | One failed listing makes a large first sync start over from nothing | Not fixed | | [B270](#b270--one-file-left-in-a-mirror-folder-clears-the-wipe-guard-for-all-the-others) | One file left in a mirror folder clears the wipe guard for all the others | Not fixed | | [B269](#b269--a-restore-that-skipped-every-folder-reports-success) | A restore that skipped every folder reports success | Not fixed | @@ -79,9 +78,7 @@ original wording. | [B265](#b265--address-keys-whose-token-is-for-an-inactive-account-key-never-open) | Address keys whose token is for an inactive account key never open | Needs an SDK change; not reproduced | | [B264](#b264--a-mount-that-fails-after-starting-its-workers-leaves-them-running) | A mount that fails after starting its workers leaves them running | Not fixed | | [B263](#b263--a-mount-that-can-never-succeed-retries-every-5-s-and-tells-only-the-journal) | A mount that can never succeed retries every 5 s and tells only the journal | Not fixed | -| [B262](#b262--watching-a-large-synced-folder-holds-up-the-sync-engine-and-a-failed-watch-is-never-retried) | Watching a large synced folder holds up the sync engine, and a failed watch is never retried | Not fixed | | [B261](#b261--a-folder-that-has-never-synced-reads-up-to-date) | A folder that has never synced reads "up to date" | Not fixed | -| [B260](#b260--the-poll-pushes-a-new-folders-first-sync-behind-every-other-folder) | The poll pushes a new folder's first sync behind every other folder | Not fixed | | [B258](#b258--journalctl--p-warning-shows-nothing-whatever-the-daemon-logged) | `journalctl -p warning` shows nothing, whatever the daemon logged | Not fixed | | [B134](#b134--a-file-deleted-online-while-the-drain-checks-its-write-is-kept-as-a-conflict-copy) | A file deleted online while the drain checks its write is kept as a conflict copy | Only with `local_first` off | | [B91](#b91--the-daemon-hung-overnight-and-nothing-could-say-what-it-was-waiting-on) | The daemon hung overnight, and nothing could say what it was waiting on | The cause is not diagnosed; the daemon now reports where it is stuck and is restarted | @@ -95,6 +92,7 @@ original wording. | Entry | Title | What is left | |---|---|---| +| [B262](#b262--watching-a-large-synced-folder-holds-up-the-sync-engine-and-a-failed-watch-is-never-retried) | Watching a large synced folder holds up the sync engine, and a failed watch is never retried | The first pass still waits for the watch; a failed watch is not shown in the app | | [B259](#b259--the-sync-engine-can-die-or-hang-and-nothing-shows-it-until-a-restart) | The sync engine can die or hang, and nothing shows it until a restart | No pass deadline; an ended engine is reported, not restarted; the trigger in #53 is not known | | [B199](#b199--a-stopped-share-stays-on-the-shared-by-me-page-for-minutes) | A stopped share stays on the Shared by me page for minutes | The share itself is not deleted; the SDK has no call for it | | [B88](#b88--pdfs-pin-rename-move-delete-and-sharing-still-cannot-name-a-path-under-a-secondary-mount) | `pdfs pin`, `rename`, `move`, `delete` and sharing still cannot name a path under a secondary mount | `pin`, `unpin`, opening a file, thumbnails, uploads, sharing and versions | @@ -116,6 +114,8 @@ a live account since. | Entry | Title | |---|---| +| [B272](#b272--after-a-folder-is-removed-and-added-again-its-file-events-go-to-the-old-id) | After a folder is removed and added again, its file events go to the old id | +| [B260](#b260--the-poll-pushes-a-new-folders-first-sync-behind-every-other-folder) | The poll pushes a new folder's first sync behind every other folder | | [B256](#b256--pdfs-copy-right-after-a-save-copies-the-old-version) | `pdfs copy` right after a save copies the old version | | [B255](#b255--a-synced-folder-whose-files-are-all-gone-here-is-stuck-for-good) | A synced folder whose files are all gone here is stuck for good | | [B254](#b254--an-edit-in-the-same-second-as-a-new-upload-never-arrives) | An edit in the same second as a new upload never arrives | @@ -395,7 +395,7 @@ written before it existed. ### B272 — After a folder is removed and added again, its file events go to the old id -**Status:** Open +**Status:** Fixed, not verified live **Found:** 2026-10-31, code audit after issue #53. **Where:** `rewatch` in `crates/pdfs-fuse/src/sync/engine.rs` @@ -407,8 +407,10 @@ two-minute poll, and the same goes for every later edit until the daemon restart path is still wanted, so the old entry stays with the removed folder's id. Its events become `Reconcile(old id)`, `sync_folder_get` finds no row, and the request is dropped. -**Fix.** Not done. Compare `(path, id)` pairs, and update the id of a path that is still -watched. +**Fix.** `keep_wanted` keeps a watch whose path is still wanted and gives it the id the +folder list has now. + +**Test:** `a_re_added_folder_keeps_its_watch_under_the_new_id` in `pdfs-fuse`. --- @@ -613,7 +615,8 @@ show it (a state file, and `STATUS=` to systemd). ### B262 — Watching a large synced folder holds up the sync engine, and a failed watch is never retried -**Status:** Open +**Status:** Partly fixed. A watch is still set up before the first pass, and a failed watch +is not shown in the folder's state. **Found:** 2026-10-31, code audit after issue #53. **Where:** `rewatch` and `engine_loop` in `crates/pdfs-fuse/src/sync/engine.rs` @@ -631,8 +634,16 @@ line, the folder is never watched, and later changes are found only by the two-m and they use up watches the next folder needs. - Errors the watcher reports later are dropped in its callback. -**Fix.** Not done. Reconcile first, unwatch after a partial failure and retry with a back-off, -turn off symlink following, and show a watch failure in the folder's state. +**Fix.** +- A failed watch is unwatched, which removes the watches it had added under the folder, and + is tried again every 10 minutes. The warning names `fs.inotify.max_user_watches`. +- The watcher no longer follows symlinks. +- Errors the watcher reports are logged. +- Not done: the watch still runs before the folder's first pass. Watching first is what keeps + a change made during the pass from being missed, so the order stays; the cost is one walk + of a new folder's tree. A failed watch is not shown in the folder's state yet. + +**Test:** none for the watch failure itself; it needs the inotify limit reached. --- @@ -660,7 +671,7 @@ account-wide pause on the folder rows. ### B260 — The poll pushes a new folder's first sync behind every other folder -**Status:** Open +**Status:** Fixed, not verified live **Found:** 2026-10-31, code audit after issue #53. **Where:** `engine_loop` in `crates/pdfs-fuse/src/sync/engine.rs` @@ -673,8 +684,11 @@ running. When a burst holds both a `ReconcileAll` and a folder's `Reconcile(id)` only `reconcile_all`, which goes in id order. A new folder has the highest id, so it always goes last. -**Fix.** Not done. Run the folders asked for by id before the rest, and don't queue a poll -while a pass runs. +**Fix.** `run_burst` runs the folders a burst names by id first, lowest id first, and then +every other folder when the burst also holds a `ReconcileAll`. A named folder is read again +before its pass. A pause that lands between passes now stops the rest of the burst. + +**Test:** `named_folders_run_before_the_rest_of_a_burst` in `pdfs-fuse`. --- From 437d14b0f5f51f6e992bf2c40699ec4bf9997df1 Mon Sep 17 00:00:00 2001 From: Nils Pukropp Date: Sat, 31 Oct 2026 10:30:52 +0100 Subject: [PATCH 2/2] fix(gui): say a folder is waiting for its first sync, not up to date A new sync folder row starts with state idle, so the app called a folder up to date before any of it reached Drive (B261, issue #53). A mirror folder that has never synced now reads "waiting for first sync", and the This computer row counts such folders. All catalogs translated. --- crates/pdfs-gui/src/app/pages/devices.rs | 55 ++++++- crates/pdfs-gui/src/app/pages/locations.rs | 23 ++- docs/BUGS.md | 15 +- po/de.po | 175 ++++++++++---------- po/en_GB.po | 175 ++++++++++---------- po/es.po | 175 ++++++++++---------- po/fr.po | 175 ++++++++++---------- po/it.po | 175 ++++++++++---------- po/nl.po | 175 ++++++++++---------- po/pdfs.pot | 175 ++++++++++---------- po/pl.po | 176 +++++++++++---------- po/pt_BR.po | 175 ++++++++++---------- 12 files changed, 923 insertions(+), 746 deletions(-) diff --git a/crates/pdfs-gui/src/app/pages/devices.rs b/crates/pdfs-gui/src/app/pages/devices.rs index 16635ad..b11517a 100644 --- a/crates/pdfs-gui/src/app/pages/devices.rs +++ b/crates/pdfs-gui/src/app/pages/devices.rs @@ -597,6 +597,19 @@ pub(crate) fn this_computer_subtitle(folders: &[SyncFolderInfo]) -> String { folders.len() as u64, &[], ); + // A folder whose first pass has not run is not backed up yet, whatever its + // state column says (`docs/BUGS.md` B261). + let waiting = folders.iter().filter(|f| never_synced(f)).count(); + let count = match waiting { + 0 => count, + // Translators: {folders} is "N folders backed up"; {n} counts the folders whose first sync has not run yet. + n => ngettext_f( + "{folders} · {n} waiting for its first sync", + "{folders} · {n} waiting for their first sync", + n as u64, + &[("folders", &count)], + ), + }; let attention = folders .iter() .filter(|f| f.state == "error" || f.state == "conflict") @@ -613,12 +626,21 @@ pub(crate) fn this_computer_subtitle(folders: &[SyncFolderInfo]) -> String { } } -/// Human label for a synced folder's `state` column. -pub(crate) fn sync_state_label(state: &str) -> String { +/// Whether a synced folder is a mirror whose first pass has not finished. +/// Its `state` starts out `idle`, which would read as "up to date". +fn never_synced(folder: &SyncFolderInfo) -> bool { + folder.mode == "mirror" && folder.last_sync == 0 && folder.state == "idle" +} + +/// Human label for a synced folder's `state` column. `never_synced` is a +/// mirror folder whose first pass has not finished: its `state` starts out +/// `idle`, and "up to date" would say the opposite of the truth (B261). +pub(crate) fn sync_state_label(state: &str, never_synced: bool) -> String { match state { "syncing" => gettext("syncing…"), "error" => gettext("sync error"), "conflict" => gettext("needs attention"), + _ if never_synced => gettext("waiting for first sync"), _ => gettext("up to date"), } } @@ -1274,7 +1296,7 @@ mod tests { remote_uid: "vol~link".into(), mode: "mirror".into(), state: state.into(), - last_sync: 0, + last_sync: 1_700_000_000, pending_mode: None, progress: None, paused: false, @@ -1286,6 +1308,33 @@ mod tests { assert_eq!(this_computer_subtitle(&[]), "No folders backed up yet"); } + /// A folder added a moment ago is not backed up yet, and the row must not + /// say it is (`docs/BUGS.md` B261). An on-demand folder has no first sync. + #[test] + fn a_folder_before_its_first_sync_is_not_counted_as_backed_up() { + let new = SyncFolderInfo { + last_sync: 0, + ..folder("idle") + }; + assert_eq!( + this_computer_subtitle(&[folder("idle"), new.clone()]), + "2 folders backed up · 1 waiting for its first sync" + ); + let failed = SyncFolderInfo { + state: "error".into(), + ..new.clone() + }; + assert_eq!( + this_computer_subtitle(&[new.clone(), failed]), + "2 folders backed up · 1 waiting for its first sync · 1 needs attention" + ); + let on_demand = SyncFolderInfo { + mode: "ondemand".into(), + ..new + }; + assert_eq!(this_computer_subtitle(&[on_demand]), "1 folder backed up"); + } + #[test] fn folders_needing_attention_are_counted_not_hidden() { // The per-folder rows live on the Sync page, so this row is the only diff --git a/crates/pdfs-gui/src/app/pages/locations.rs b/crates/pdfs-gui/src/app/pages/locations.rs index 65963d2..a538248 100644 --- a/crates/pdfs-gui/src/app/pages/locations.rs +++ b/crates/pdfs-gui/src/app/pages/locations.rs @@ -1729,7 +1729,10 @@ pub(crate) fn location_subtitle(spec: &MountSpec) -> String { parts.push(match &spec.progress { Some(p) => sync_progress_label(p), None if spec.paused => pgettext("state", "paused"), - None => sync_state_label(&spec.state).to_string(), + None => sync_state_label( + &spec.state, + spec.mode == MountMode::Mirror && spec.last_sync == 0, + ), }); } // Only the locations that are supposed to have a session report its absence: @@ -1775,7 +1778,25 @@ mod tests { MountMode::Mirror, false, ); + assert_eq!(location_subtitle(&spec), "Synced · waiting for first sync"); + } + + /// A folder whose first pass has not run is not up to date, though its + /// state column starts out `idle` (`docs/BUGS.md` B261). + #[test] + fn a_folder_reads_up_to_date_only_after_its_first_sync() { + let mut spec = spec( + MountKind::Device { sync_folder_id: 7 }, + MountMode::Mirror, + false, + ); + assert_eq!(location_subtitle(&spec), "Synced · waiting for first sync"); + spec.last_sync = 1_700_000_000; assert_eq!(location_subtitle(&spec), "Synced · up to date"); + // A folder that failed before it ever synced says so. + spec.last_sync = 0; + spec.state = "error".into(); + assert_eq!(location_subtitle(&spec), "Synced · sync error"); } #[test] diff --git a/docs/BUGS.md b/docs/BUGS.md index 319b4ca..e15e669 100644 --- a/docs/BUGS.md +++ b/docs/BUGS.md @@ -80,7 +80,6 @@ original wording. | [B264](#b264--a-mount-that-fails-after-starting-its-workers-leaves-them-running) | A mount that fails after starting its workers leaves them running | Not fixed | | [B263](#b263--a-mount-that-can-never-succeed-retries-every-5-s-and-tells-only-the-journal) | A mount that can never succeed retries every 5 s and tells only the journal | Not fixed | | [B262](#b262--watching-a-large-synced-folder-holds-up-the-sync-engine-and-a-failed-watch-is-never-retried) | Watching a large synced folder holds up the sync engine, and a failed watch is never retried | Not fixed | -| [B261](#b261--a-folder-that-has-never-synced-reads-up-to-date) | A folder that has never synced reads "up to date" | Not fixed | | [B260](#b260--the-poll-pushes-a-new-folders-first-sync-behind-every-other-folder) | The poll pushes a new folder's first sync behind every other folder | Not fixed | | [B259](#b259--the-sync-engine-can-die-or-hang-and-nothing-shows-it-until-a-restart) | The sync engine can die or hang, and nothing shows it until a restart | Not fixed; the trigger in #53 is not known | | [B258](#b258--journalctl--p-warning-shows-nothing-whatever-the-daemon-logged) | `journalctl -p warning` shows nothing, whatever the daemon logged | Not fixed | @@ -116,6 +115,7 @@ a live account since. | Entry | Title | |---|---| +| [B261](#b261--a-folder-that-has-never-synced-reads-up-to-date) | A folder that has never synced reads "up to date" | | [B256](#b256--pdfs-copy-right-after-a-save-copies-the-old-version) | `pdfs copy` right after a save copies the old version | | [B255](#b255--a-synced-folder-whose-files-are-all-gone-here-is-stuck-for-good) | A synced folder whose files are all gone here is stuck for good | | [B254](#b254--an-edit-in-the-same-second-as-a-new-upload-never-arrives) | An edit in the same second as a new upload never arrives | @@ -638,7 +638,7 @@ turn off symlink following, and show a watch failure in the folder's state. ### B261 — A folder that has never synced reads "up to date" -**Status:** Open +**Status:** Fixed, not verified live **Found:** 2026-10-31, issue #53: "In Computers I add the folder. It appears as synced." **Where:** `sync_folder` in `crates/pdfs-core/src/db/migrations.rs`; `sync_state_label` in `crates/pdfs-gui/src/app/pages/devices.rs`; the location rows in @@ -653,8 +653,15 @@ every folder while sync is paused for the whole account. it, and a test pins the label for that case. The rows only show a folder's own pause, not the account-wide one. -**Fix.** Not done. Show "waiting for first sync" when `last_sync` is 0, and show the -account-wide pause on the folder rows. +**Fix.** A mirror folder whose `last_sync` is 0 and whose state is `idle` reads "waiting for +first sync" on its row. The This computer row on the Computers page counts such folders, as in +"2 folders backed up · 1 waiting for its first sync". An on-demand folder has no first sync, +so it is left out. The account-wide pause stays where it already is, the pause card at the top +of the page; repeating it on every row would only add noise. + +**Test:** `a_folder_reads_up_to_date_only_after_its_first_sync` and +`a_folder_before_its_first_sync_is_not_counted_as_backed_up` in `pdfs-gui`; the pinned test now +expects the new label. --- diff --git a/po/de.po b/po/de.po index 7ac1044..ec987ec 100644 --- a/po/de.po +++ b/po/de.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: German\n" @@ -249,13 +249,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -350,7 +350,7 @@ msgstr "Raster / Liste" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Umbenennen" @@ -682,7 +682,7 @@ msgid "Couldn't add a sync folder" msgstr "Synchronisierungsordner konnte nicht hinzugefügt werden" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Ordner konnten nicht wiederhergestellt werden" @@ -1274,12 +1274,12 @@ msgstr "Alben konnten nicht geladen werden" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1929,7 +1929,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Neuer Name" @@ -1954,7 +1954,7 @@ msgstr "Den Zielordner auswählen." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Hierher verschieben" @@ -2279,76 +2279,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} Ordner gesichert" msgstr[1] "{n} Ordner gesichert" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} wartet auf die erste Synchronisierung" +msgstr[1] "{folders} · {n} warten auf die erste Synchronisierung" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} erfordert Aufmerksamkeit" msgstr[1] "{folders} · {n} erfordern Aufmerksamkeit" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "wird synchronisiert …" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "Synchronisierungsfehler" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "erfordert Aufmerksamkeit" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "wartet auf erste Synchronisierung" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "aktuell" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "wird auf Änderungen geprüft …" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "wird auf Änderungen geprüft – {n} Element geprüft" msgstr[1] "wird auf Änderungen geprüft – {n} Elemente geprüft" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "wird auf Änderungen geprüft – {done} von {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "{done} von {total} wird synchronisiert" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "{file} wird synchronisiert – {done} von {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Ordner zur Synchronisierung hinzufügen" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Ordner wird synchronisiert …" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Ordner konnte nicht hinzugefügt werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Wiederherstellbare Ordner konnten nicht aufgelistet werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2356,19 +2367,19 @@ msgstr "" "Die Ordner ankreuzen, die mit diesem Rechner synchronisiert werden sollen, " "und für jeden den Speicherort anpassen." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Ordner wiederherstellen" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Wiederherstellen" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Ordner werden wiederhergestellt …" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2377,37 +2388,37 @@ msgstr "" "Diese Ordner werden von „{name}“ gesichert. Wiederhergestellte Ordner werden " "weiterhin mit der Kopie dieses Computers synchronisiert." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "Diese Ordner werden in Proton Drive unter diesem Computer gesichert." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Nichts wiederherzustellen – alle Ordner von „{name}“ werden bereits hier " "synchronisiert." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Nichts wiederherzustellen – alle Ordner dieses Computers werden bereits hier " "synchronisiert." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "Ordner wird auf „Nur online“ umgestellt" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "Ordner wird heruntergeladen und bleibt synchronisiert" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Modus konnte nicht geändert werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2425,7 +2436,7 @@ msgstr "" "Ordner auf „Synchronisiert“ umstellen und vor dem Entfernen warten, bis der " "Download abgeschlossen ist." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2439,68 +2450,68 @@ msgstr "" "mehr synchronisiert. Es kann zusätzlich ausgewählt werden, die Kopie in " "Proton Drive zu löschen." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Synchronisierung des Ordners beenden?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Auch aus Proton Drive löschen" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Löscht die einzige Kopie dieser Dateien." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "Die lokale Kopie bleibt unverändert." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Synchronisierung beenden" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Synchronisierung des Ordners beendet" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Synchronisierung des Ordners konnte nicht beendet werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Computer umbenennen" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "„{name}“ umbenennen." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Der Computer konnte nicht umbenannt werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Ein Name ist erforderlich." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Computer umbenannt" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Zur Bestätigung „{name}“ eingeben" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Computer entfernen?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2515,26 +2526,26 @@ msgstr "" "gelöscht. Die Dateien auf dem Computer selbst bleiben unberührt – dies kann " "jedoch von hier aus nicht rückgängig gemacht werden." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Entfernen" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Computer entfernt" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Der Computer konnte nicht entfernt werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Diese Sicherung hier fortsetzen?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2553,25 +2564,25 @@ msgstr "" "werden nicht verschoben. Mit „Auf diesem Computer wiederherstellen“ lässt " "sich danach zurückholen, was „{name}“ synchronisiert hat." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Hier fortsetzen" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Sicherung jetzt als „{name}“" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Diese Sicherung konnte hier nicht fortgesetzt werden" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Mit diesem Computer synchronisieren?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2588,25 +2599,25 @@ msgstr "" "„{name}“. Bereits hier synchronisierte Ordner bleiben, wo sie sind. Als " "Nächstes wählen Sie, welche seiner Ordner hier synchronisiert werden." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Hier synchronisieren" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Jetzt synchron mit „{name}“" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Synchronisierung mit diesem Computer nicht möglich" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Sicherung auf diesen Computer verschieben?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2623,12 +2634,12 @@ msgstr "" "verschwinden." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Sicherung von „{name}“ verschoben" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Diese Sicherung konnte nicht verschoben werden" @@ -3374,7 +3385,7 @@ msgid "paused" msgstr "pausiert" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "nicht verfügbar" diff --git a/po/en_GB.po b/po/en_GB.po index 5a2e3c1..c9e37c3 100644 --- a/po/en_GB.po +++ b/po/en_GB.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: English (United Kingdom)\n" @@ -245,13 +245,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -346,7 +346,7 @@ msgstr "Grid / list" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Rename" @@ -674,7 +674,7 @@ msgid "Couldn't add a sync folder" msgstr "Couldn't add a sync folder" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Couldn't restore folders" @@ -1262,12 +1262,12 @@ msgstr "Couldn't load albums" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1910,7 +1910,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "New name" @@ -1935,7 +1935,7 @@ msgstr "Choose the folder to move into." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Move Here" @@ -2256,76 +2256,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} folder backed up" msgstr[1] "{n} folders backed up" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} waiting for its first sync" +msgstr[1] "{folders} · {n} waiting for their first sync" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} needs attention" msgstr[1] "{folders} · {n} need attention" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "syncing…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "sync error" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "needs attention" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "waiting for first sync" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "up to date" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "checking for changes…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "checking for changes — {n} item checked" msgstr[1] "checking for changes — {n} items checked" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "checking for changes — {done} of {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "syncing {done} of {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "syncing {file} — {done} of {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Add Folder to Sync" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Syncing folder…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Couldn't add folder" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Couldn't list folders to restore" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2333,19 +2344,19 @@ msgstr "" "Tick the folders to sync to this machine, and adjust where each one should " "live." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Restore Folders" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Restore" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Restoring folders…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2354,33 +2365,33 @@ msgstr "" "These folders are backed up from “{name}”. Restored folders keep syncing " "with that computer's copy." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "These folders are backed up under this computer in Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "Nothing to restore — “{name}”'s folders are all synced here." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "Nothing to restore — this computer's folders are all synced here." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "Folder will switch to online only" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "Folder will download and stay synced" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Couldn't change mode" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2397,7 +2408,7 @@ msgstr "" "copy, cancel, switch the folder to Synced, and wait for the download to " "finish before removing it." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2410,68 +2421,68 @@ msgstr "" "The local files stay on this disk and simply stop being synced. Choose " "whether to also delete the copy in Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Stop Syncing Folder?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Also delete from Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Deletes the only copy of these files." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "The local copy is unaffected." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Stop Syncing" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Stopped syncing folder" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Couldn't stop syncing the folder" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Rename Computer" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Rename “{name}”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Couldn't rename the computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "A name is required." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Computer renamed" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Type “{name}” to confirm" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Remove Computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2486,26 +2497,26 @@ msgstr "" "on that computer itself are not touched — but this cannot be undone from " "here." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Remove" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Computer removed" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Couldn't remove the computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Continue This Backup Here?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2524,25 +2535,25 @@ msgstr "" "“Restore to This Computer” afterwards to bring back what “{name}” was " "syncing." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Continue Here" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Now backing up as “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Couldn't continue that backup here" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Sync With This Computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2559,25 +2570,25 @@ msgstr "" "Folders already synced here stay where they are. Next you choose which of " "its folders to sync here." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Sync Here" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Now syncing with “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Couldn't sync with that computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Move Backup to This Computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2593,12 +2604,12 @@ msgstr "" "Stop Proton Drive on “{name}” first. Otherwise it sees its folders disappear." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Moved the backup of “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Couldn't move that backup" @@ -3321,7 +3332,7 @@ msgid "paused" msgstr "paused" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "not available" diff --git a/po/es.po b/po/es.po index 9ecbbaf..21ed428 100644 --- a/po/es.po +++ b/po/es.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: Spanish\n" @@ -247,13 +247,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -348,7 +348,7 @@ msgstr "Cuadrícula / lista" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Renombrar" @@ -679,7 +679,7 @@ msgid "Couldn't add a sync folder" msgstr "No se pudo añadir una carpeta sincronizada" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "No se pudieron restaurar las carpetas" @@ -1268,12 +1268,12 @@ msgstr "No se pudieron cargar los álbumes" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1921,7 +1921,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Nombre nuevo" @@ -1946,7 +1946,7 @@ msgstr "Elija la carpeta de destino." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Mover aquí" @@ -2268,76 +2268,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} carpeta con copia de seguridad" msgstr[1] "{n} carpetas con copia de seguridad" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} espera su primera sincronización" +msgstr[1] "{folders} · {n} esperan su primera sincronización" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} requiere atención" msgstr[1] "{folders} · {n} requieren atención" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "sincronizando…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "error de sincronización" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "requiere atención" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "esperando la primera sincronización" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "actualizado" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "buscando cambios…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "buscando cambios: {n} elemento revisado" msgstr[1] "buscando cambios: {n} elementos revisados" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "buscando cambios: {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "sincronizando {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "sincronizando {file}: {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Añadir carpeta para sincronizar" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Sincronizando la carpeta…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "No se pudo añadir la carpeta" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "No se pudieron listar las carpetas para restaurar" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2345,19 +2356,19 @@ msgstr "" "Marque las carpetas que sincronizar con esta máquina y ajuste dónde debe " "estar cada una." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Restaurar carpetas" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Restaurar" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Restaurando carpetas…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2366,36 +2377,36 @@ msgstr "" "Estas carpetas tienen copia de seguridad desde “{name}”. Las carpetas " "restauradas siguen sincronizándose con la copia de ese equipo." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "" "Estas carpetas tienen copia de seguridad bajo este equipo en Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Nada que restaurar: todas las carpetas de “{name}” ya se sincronizan aquí." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Nada que restaurar: todas las carpetas de este equipo ya se sincronizan aquí." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "La carpeta pasará a solo en línea" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "La carpeta se descargará y permanecerá sincronizada" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "No se pudo cambiar el modo" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2412,7 +2423,7 @@ msgstr "" "Para conservar una copia local, cancele, cambie la carpeta a Sincronizada y " "espere a que termine la descarga antes de quitarla." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2425,68 +2436,68 @@ msgstr "" "Los archivos locales permanecen en este disco y simplemente dejan de " "sincronizarse. Elija si quiere eliminar también la copia en Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "¿Dejar de sincronizar la carpeta?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Eliminar también de Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Elimina la única copia de estos archivos." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "La copia local no se ve afectada." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Dejar de sincronizar" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Se dejó de sincronizar la carpeta" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "No se pudo dejar de sincronizar la carpeta" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Renombrar equipo" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Renombrar “{name}”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "No se pudo renombrar el equipo" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Se necesita un nombre." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Equipo renombrado" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Escriba “{name}” para confirmar" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "¿Quitar el equipo?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2500,26 +2511,26 @@ msgstr "" "Todo lo que respaldó en Proton Drive se eliminará con él. Los archivos de " "ese equipo no se tocan, pero esto no se puede deshacer desde aquí." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Quitar" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Equipo quitado" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "No se pudo quitar el equipo" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "¿Continuar esta copia de seguridad aquí?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2538,25 +2549,25 @@ msgstr "" "no se mueven. Después, use “Restaurar en este equipo” para recuperar lo que " "“{name}” sincronizaba." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Continuar aquí" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Ahora se hace copia de seguridad como “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "No se pudo continuar esa copia de seguridad aquí" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "¿Sincronizar con este equipo?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2573,25 +2584,25 @@ msgstr "" "Proton Drive. Las carpetas ya sincronizadas aquí se quedan donde están. A " "continuación, elija qué carpetas suyas sincronizar aquí." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Sincronizar aquí" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Ahora se sincroniza con “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "No se pudo sincronizar con ese equipo" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "¿Mover la copia de seguridad a este equipo?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2608,12 +2619,12 @@ msgstr "" "carpetas." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Se movió la copia de seguridad de “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "No se pudo mover esa copia de seguridad" @@ -3348,7 +3359,7 @@ msgid "paused" msgstr "en pausa" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "no disponible" diff --git a/po/fr.po b/po/fr.po index 8a20308..3ff133c 100644 --- a/po/fr.po +++ b/po/fr.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: French\n" @@ -249,13 +249,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -350,7 +350,7 @@ msgstr "Grille / liste" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Renommer" @@ -682,7 +682,7 @@ msgid "Couldn't add a sync folder" msgstr "Impossible d’ajouter un dossier synchronisé" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Impossible de restaurer les dossiers" @@ -1279,12 +1279,12 @@ msgstr "Impossible de charger les albums" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1933,7 +1933,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Nouveau nom" @@ -1958,7 +1958,7 @@ msgstr "Choisissez le dossier de destination." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Déplacer ici" @@ -2281,76 +2281,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} dossier sauvegardé" msgstr[1] "{n} dossiers sauvegardés" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} attend sa première synchronisation" +msgstr[1] "{folders} · {n} attendent leur première synchronisation" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} requiert votre attention" msgstr[1] "{folders} · {n} requièrent votre attention" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "synchronisation…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "erreur de synchronisation" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "attention requise" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "en attente de la première synchronisation" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "à jour" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "recherche de modifications…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "recherche de modifications — {n} élément vérifié" msgstr[1] "recherche de modifications — {n} éléments vérifiés" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "recherche de modifications — {done} sur {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "synchronisation de {done} sur {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "synchronisation de {file} — {done} sur {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Ajouter un dossier à synchroniser" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Synchronisation du dossier…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Impossible d’ajouter le dossier" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Impossible de lister les dossiers à restaurer" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2358,19 +2369,19 @@ msgstr "" "Cochez les dossiers à synchroniser sur cette machine et ajustez " "l’emplacement de chacun." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Restaurer les dossiers" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Restaurer" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Restauration des dossiers…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2379,35 +2390,35 @@ msgstr "" "Ces dossiers sont sauvegardés depuis « {name} ». Les dossiers restaurés " "restent synchronisés avec la copie de cet ordinateur." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "Ces dossiers sont sauvegardés sous cet ordinateur dans Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Rien à restaurer — les dossiers de « {name} » sont tous synchronisés ici." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Rien à restaurer — les dossiers de cet ordinateur sont tous synchronisés ici." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "Le dossier passera en ligne uniquement" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "Le dossier va être téléchargé et rester synchronisé" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Impossible de changer de mode" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2424,7 +2435,7 @@ msgstr "" "arrêtée. Pour conserver une copie locale, annulez, passez le dossier en " "« Synchronisé » et attendez la fin du téléchargement avant de le retirer." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2438,68 +2449,68 @@ msgstr "" "synchronisés. Choisissez s’il faut aussi supprimer la copie dans Proton " "Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Arrêter la synchronisation du dossier ?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Supprimer aussi de Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Supprime l’unique copie de ces fichiers." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "La copie locale n’est pas affectée." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Arrêter la synchronisation" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Synchronisation du dossier arrêtée" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Impossible d’arrêter la synchronisation du dossier" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Renommer l’ordinateur" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Renommer « {name} »." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Impossible de renommer l’ordinateur" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Un nom est requis." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Ordinateur renommé" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Saisissez « {name} » pour confirmer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Retirer l’ordinateur ?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2514,26 +2525,26 @@ msgstr "" "fichiers présents sur cet ordinateur ne sont pas touchés — mais cette action " "ne peut pas être annulée d’ici." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Retirer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Ordinateur retiré" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Impossible de retirer l’ordinateur" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Continuer cette sauvegarde ici ?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2552,25 +2563,25 @@ msgstr "" "ne sont pas déplacés. Utilisez ensuite « Restaurer sur cet ordinateur » pour " "récupérer ce que « {name} » synchronisait." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Continuer ici" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Sauvegarde désormais en tant que « {name} »" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Impossible de continuer cette sauvegarde ici" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Synchroniser avec cet ordinateur ?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2587,25 +2598,25 @@ msgstr "" "dans Proton Drive. Les dossiers déjà synchronisés ici restent où ils sont. " "Vous choisissez ensuite lesquels de ses dossiers synchroniser ici." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Synchroniser ici" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Synchronisé désormais avec « {name} »" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Impossible de synchroniser avec cet ordinateur" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Déplacer la sauvegarde vers cet ordinateur ?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2622,12 +2633,12 @@ msgstr "" "disparaître." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Sauvegarde de « {name} » déplacée" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Impossible de déplacer cette sauvegarde" @@ -3374,7 +3385,7 @@ msgid "paused" msgstr "en pause" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "non disponible" diff --git a/po/it.po b/po/it.po index c035843..32bff17 100644 --- a/po/it.po +++ b/po/it.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: Italian\n" @@ -245,13 +245,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -346,7 +346,7 @@ msgstr "Griglia / elenco" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Rinomina" @@ -678,7 +678,7 @@ msgid "Couldn't add a sync folder" msgstr "Impossibile aggiungere una cartella sincronizzata" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Impossibile ripristinare le cartelle" @@ -1273,12 +1273,12 @@ msgstr "Impossibile caricare gli album" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1927,7 +1927,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Nuovo nome" @@ -1952,7 +1952,7 @@ msgstr "Scegli la cartella di destinazione." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Sposta qui" @@ -2275,76 +2275,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} cartella sottoposta a backup" msgstr[1] "{n} cartelle sottoposte a backup" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} attende la prima sincronizzazione" +msgstr[1] "{folders} · {n} attendono la prima sincronizzazione" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} richiede attenzione" msgstr[1] "{folders} · {n} richiedono attenzione" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "sincronizzazione…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "errore di sincronizzazione" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "richiede attenzione" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "in attesa della prima sincronizzazione" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "aggiornato" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "controllo delle modifiche…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "controllo delle modifiche: {n} elemento controllato" msgstr[1] "controllo delle modifiche: {n} elementi controllati" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "controllo delle modifiche: {done} di {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "sincronizzazione {done} di {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "sincronizzazione di {file}: {done} di {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Aggiungi cartella da sincronizzare" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Sincronizzazione della cartella…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Impossibile aggiungere la cartella" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Impossibile elencare le cartelle da ripristinare" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2352,19 +2363,19 @@ msgstr "" "Seleziona le cartelle da sincronizzare su questa macchina e regola dove deve " "trovarsi ciascuna." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Ripristina cartelle" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Ripristina" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Ripristino delle cartelle…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2373,39 +2384,39 @@ msgstr "" "Queste cartelle sono sottoposte a backup da “{name}”. Le cartelle " "ripristinate continuano a sincronizzarsi con la copia di quel computer." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "" "Queste cartelle sono sottoposte a backup sotto questo computer in Proton " "Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Niente da ripristinare: le cartelle di “{name}” sono già tutte sincronizzate " "qui." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Niente da ripristinare: le cartelle di questo computer sono già tutte " "sincronizzate qui." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "La cartella passerà a solo online" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "La cartella verrà scaricata e resterà sincronizzata" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Impossibile cambiare modalità" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2423,7 +2434,7 @@ msgstr "" "cartella a Sincronizzata e attendi il completamento del download prima di " "rimuoverla." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2436,68 +2447,68 @@ msgstr "" "I file locali restano su questo disco e semplicemente smettono di essere " "sincronizzati. Scegli se eliminare anche la copia in Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Interrompere la sincronizzazione della cartella?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Elimina anche da Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Elimina l'unica copia di questi file." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "La copia locale non viene modificata." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Interrompi sincronizzazione" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Sincronizzazione della cartella interrotta" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Impossibile interrompere la sincronizzazione della cartella" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Rinomina computer" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Rinomina “{name}”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Impossibile rinominare il computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "È richiesto un nome." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Computer rinominato" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Digita “{name}” per confermare" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Rimuovere il computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2512,26 +2523,26 @@ msgstr "" "insieme a esso. I file su quel computer non vengono toccati, ma questa " "operazione non può essere annullata da qui." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Rimuovi" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Computer rimosso" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Impossibile rimuovere il computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Continuare questo backup qui?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2550,25 +2561,25 @@ msgstr "" "qui non vengono spostate. Usa poi “Ripristina su questo computer” per " "recuperare ciò che “{name}” sincronizzava." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Continua qui" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Ora il backup avviene come “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Impossibile continuare quel backup qui" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Sincronizzare con questo computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2585,25 +2596,25 @@ msgstr "" "in Proton Drive. Le cartelle già sincronizzate qui restano dove sono. Poi " "scegli quali delle sue cartelle sincronizzare qui." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Sincronizza qui" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Ora sincronizzato con “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Impossibile sincronizzare con quel computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Spostare il backup su questo computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2620,12 +2631,12 @@ msgstr "" "cartelle." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Backup di “{name}” spostato" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Impossibile spostare quel backup" @@ -3366,7 +3377,7 @@ msgid "paused" msgstr "in pausa" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "non disponibile" diff --git a/po/nl.po b/po/nl.po index 1de0e6f..d79763c 100644 --- a/po/nl.po +++ b/po/nl.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: Dutch\n" @@ -246,13 +246,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -347,7 +347,7 @@ msgstr "Raster / lijst" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Hernoemen" @@ -679,7 +679,7 @@ msgid "Couldn't add a sync folder" msgstr "Kon geen synchronisatiemap toevoegen" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Kon mappen niet terugzetten" @@ -1269,12 +1269,12 @@ msgstr "Kon albums niet laden" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1921,7 +1921,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Nieuwe naam" @@ -1946,7 +1946,7 @@ msgstr "Kies de map waarnaar je wilt verplaatsen." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Hierheen verplaatsen" @@ -2269,76 +2269,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} map in back-up" msgstr[1] "{n} mappen in back-up" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} wacht op de eerste synchronisatie" +msgstr[1] "{folders} · {n} wachten op de eerste synchronisatie" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} vereist aandacht" msgstr[1] "{folders} · {n} vereisen aandacht" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "synchroniseren…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "synchronisatiefout" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "vereist aandacht" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "wacht op eerste synchronisatie" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "bijgewerkt" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "controleren op wijzigingen…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "controleren op wijzigingen — {n} item gecontroleerd" msgstr[1] "controleren op wijzigingen — {n} items gecontroleerd" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "controleren op wijzigingen — {done} van {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "synchroniseren: {done} van {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "{file} synchroniseren — {done} van {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Map toevoegen aan synchronisatie" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Map synchroniseren…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Kon map niet toevoegen" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Kon mappen om terug te zetten niet weergeven" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2346,19 +2357,19 @@ msgstr "" "Vink de mappen aan die je met dit apparaat wilt synchroniseren en pas aan " "waar elke map moet komen." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Mappen herstellen" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Terugzetten" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Mappen terugzetten…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2367,38 +2378,38 @@ msgstr "" "Van deze mappen is een back-up gemaakt vanaf “{name}”. Teruggezette mappen " "blijven synchroniseren met de kopie van die computer." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "" "Van deze mappen is een back-up gemaakt onder deze computer in Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Niets om terug te zetten — de mappen van “{name}” worden hier al allemaal " "gesynchroniseerd." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Niets om terug te zetten — de mappen van deze computer worden hier al " "allemaal gesynchroniseerd." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "Map wordt alleen online" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "Map wordt gedownload en blijft gesynchroniseerd" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Kon modus niet wijzigen" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2415,7 +2426,7 @@ msgstr "" "kopie houden, annuleer dan, zet de map op Gesynchroniseerd en wacht tot de " "download klaar is voordat je hem verwijdert." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2428,68 +2439,68 @@ msgstr "" "De lokale bestanden blijven op deze schijf en worden gewoon niet meer " "gesynchroniseerd. Kies of je ook de kopie in Proton Drive wilt verwijderen." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Synchroniseren van map stoppen?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Ook uit Proton Drive verwijderen" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Verwijdert de enige kopie van deze bestanden." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "De lokale kopie blijft ongewijzigd." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Synchroniseren stoppen" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Synchroniseren van map gestopt" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Kon het synchroniseren van de map niet stoppen" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Computer hernoemen" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "“{name}” hernoemen." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Kon de computer niet hernoemen" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Een naam is vereist." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Computer hernoemd" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Typ “{name}” om te bevestigen" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Computer verwijderen?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2504,26 +2515,26 @@ msgstr "" "mee verwijderd. De bestanden op die computer zelf blijven onaangeroerd — " "maar dit kan hier niet ongedaan worden gemaakt." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Verwijderen" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Computer verwijderd" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Kon de computer niet verwijderen" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Deze back-up hier voortzetten?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2542,25 +2553,25 @@ msgstr "" "gesynchroniseerd, worden niet verplaatst. Gebruik daarna “Terugzetten op " "deze computer” om terug te halen wat “{name}” synchroniseerde." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Hier voortzetten" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Back-up nu als “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Kon die back-up hier niet voortzetten" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Synchroniseren met deze computer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2577,25 +2588,25 @@ msgstr "" "Proton Drive. Mappen die hier al worden gesynchroniseerd, blijven waar ze " "zijn. Daarna kiest u welke van zijn mappen u hier synchroniseert." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Hier synchroniseren" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Nu gesynchroniseerd met “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Kon niet synchroniseren met die computer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Back-up naar deze computer verplaatsen?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2611,12 +2622,12 @@ msgstr "" "Stop Proton Drive eerst op “{name}”. Anders ziet het zijn mappen verdwijnen." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Back-up van “{name}” verplaatst" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Kon die back-up niet verplaatsen" @@ -3358,7 +3369,7 @@ msgid "paused" msgstr "gepauzeerd" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "niet beschikbaar" diff --git a/po/pdfs.pot b/po/pdfs.pot index 90860e8..4014cfa 100644 --- a/po/pdfs.pot +++ b/po/pdfs.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: proton-drive-linux 3.6.0\n" "Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n" -"POT-Creation-Date: 2026-10-26 22:28+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -222,13 +222,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -323,7 +323,7 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "" @@ -649,7 +649,7 @@ msgid "Couldn't add a sync folder" msgstr "" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "" @@ -1227,12 +1227,12 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1875,7 +1875,7 @@ msgid "{status}. {message}" msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "" @@ -1900,7 +1900,7 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "" @@ -2221,127 +2221,138 @@ msgid_plural "{n} folders backed up" msgstr[0] "" msgstr[1] "" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "" +msgstr[1] "" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "" msgstr[1] "" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "" msgstr[1] "" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " "with that computer's copy." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2352,7 +2363,7 @@ msgid "" "finish before removing it." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2361,68 +2372,68 @@ msgid "" "whether to also delete the copy in Proton Drive." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2432,26 +2443,26 @@ msgid "" "here." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2463,25 +2474,25 @@ msgid "" "syncing." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2492,25 +2503,25 @@ msgid "" "its folders to sync here." msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2521,12 +2532,12 @@ msgid "" msgstr "" #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "" @@ -3210,7 +3221,7 @@ msgid "paused" msgstr "" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "" diff --git a/po/pl.po b/po/pl.po index 8acb1fb..558008f 100644 --- a/po/pl.po +++ b/po/pl.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: Polish\n" @@ -250,13 +250,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -351,7 +351,7 @@ msgstr "Siatka/lista" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Zmień nazwę" @@ -696,7 +696,7 @@ msgid "Couldn't add a sync folder" msgstr "Nie można dodać katalogu synchronizacji" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Nie można przywrócić katalogów" @@ -1300,12 +1300,12 @@ msgstr "Nie można wczytać albumów" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1969,7 +1969,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Nowa nazwa" @@ -1994,7 +1994,7 @@ msgstr "Proszę wybrać katalog docelowy." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Przenieś tutaj" @@ -2327,7 +2327,15 @@ msgstr[0] "{n} katalog z kopią zapasową" msgstr[1] "{n} katalogi z kopią zapasową" msgstr[2] "{n} katalogów z kopią zapasową" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} czeka na pierwszą synchronizację" +msgstr[1] "{folders} · {n} czekają na pierwszą synchronizację" +msgstr[2] "{folders} · {n} czeka na pierwszą synchronizację" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" @@ -2335,27 +2343,31 @@ msgstr[0] "{folders} · {n} wymaga uwagi" msgstr[1] "{folders} · {n} wymagają uwagi" msgstr[2] "{folders} · {n} wymaga uwagi" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "synchronizowanie…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "błąd synchronizacji" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "wymaga uwagi" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "oczekiwanie na pierwszą synchronizację" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "aktualne" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "sprawdzanie zmian…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" @@ -2363,42 +2375,42 @@ msgstr[0] "sprawdzanie zmian — sprawdzono {n} element" msgstr[1] "sprawdzanie zmian — sprawdzono {n} elementy" msgstr[2] "sprawdzanie zmian — sprawdzono {n} elementów" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "sprawdzanie zmian — {done} z {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "synchronizowanie {done} z {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "synchronizowanie {file} — {done} z {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Dodaj katalog do synchronizacji" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Synchronizowanie katalogu…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Nie można dodać katalogu" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Nie można wyświetlić listy katalogów do przywrócenia" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2406,19 +2418,19 @@ msgstr "" "Należy zaznaczyć katalogi do synchronizacji z tym komputerem i dostosować " "położenie każdego z nich." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Przywróć katalogi" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Przywróć" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Przywracanie katalogów…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2427,37 +2439,37 @@ msgstr "" "Te katalogi mają kopię zapasową z komputera „{name}”. Przywrócone katalogi " "nadal będą synchronizowane z kopią tego komputera." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "Te katalogi mają kopię zapasową w Proton Drive pod tym komputerem." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Nie ma nic do przywrócenia — wszystkie katalogi komputera „{name}” są tutaj " "synchronizowane." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Nie ma nic do przywrócenia — wszystkie katalogi tego komputera są tutaj " "synchronizowane." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "Katalog przejdzie w tryb tylko online" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "Katalog zostanie pobrany i będzie synchronizowany" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Nie można zmienić trybu" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2474,7 +2486,7 @@ msgstr "" "pusty. Aby zachować lokalną kopię, należy anulować, przełączyć katalog na " "tryb Synchronizowany i poczekać na ukończenie pobierania przed usunięciem." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2487,68 +2499,68 @@ msgstr "" "Lokalne pliki pozostaną na tym dysku i po prostu przestaną być " "synchronizowane. Można też usunąć kopię w Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Zatrzymać synchronizację katalogu?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Usuń także z Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Usuwa jedyną kopię tych plików." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "Lokalna kopia pozostanie bez zmian." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Zatrzymaj synchronizację" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "Zatrzymano synchronizację katalogu" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Nie można zatrzymać synchronizacji katalogu" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Zmiana nazwy komputera" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Proszę podać nową nazwę komputera „{name}”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Nie można zmienić nazwy komputera" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Nazwa jest wymagana." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Zmieniono nazwę komputera" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Proszę wpisać „{name}”, aby potwierdzić" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Usunąć komputer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2563,26 +2575,26 @@ msgstr "" "z nim. Pliki na samym komputerze pozostaną nietknięte — ale tej operacji nie " "można tutaj cofnąć." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Usuń" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Usunięto komputer" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Nie można usunąć komputera" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Kontynuować tę kopię zapasową tutaj?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2601,25 +2613,25 @@ msgstr "" "przeniesione. Aby odzyskać to, co synchronizował „{name}”, proszę potem użyć " "opcji „Przywróć na tym komputerze”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Kontynuuj tutaj" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Kopia zapasowa jest teraz tworzona jako „{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Nie można kontynuować tej kopii zapasowej tutaj" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Synchronizować z tym komputerem?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2636,25 +2648,25 @@ msgstr "" "Drive. Katalogi już tu synchronizowane zostaną tam, gdzie są. Następnie " "proszę wybrać, które z jego katalogów synchronizować tutaj." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Synchronizuj tutaj" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Teraz synchronizowane z „{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Nie można synchronizować z tym komputerem" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Przenieść kopię zapasową na ten komputer?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2672,12 +2684,12 @@ msgstr "" "jego foldery znikają." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Przeniesiono kopię zapasową „{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Nie można przenieść tej kopii zapasowej" @@ -3423,7 +3435,7 @@ msgid "paused" msgstr "wstrzymany" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "niedostępne" diff --git a/po/pt_BR.po b/po/pt_BR.po index 56b0d45..b61fcea 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -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-10-26 22:26+0100\n" +"POT-Creation-Date: 2026-10-31 10:26+0100\n" "PO-Revision-Date: 2026-09-23 12:00+0200\n" "Last-Translator: Proton Drive for Linux contributors\n" "Language-Team: Portuguese (Brazil)\n" @@ -245,13 +245,13 @@ msgstr "" #: crates/pdfs-gui/src/app/pages/browser.rs:1917 #: crates/pdfs-gui/src/app/pages/browser.rs:2039 #: crates/pdfs-gui/src/app/pages/browser.rs:2540 -#: crates/pdfs-gui/src/app/pages/devices.rs:804 -#: crates/pdfs-gui/src/app/pages/devices.rs:957 -#: crates/pdfs-gui/src/app/pages/devices.rs:995 -#: crates/pdfs-gui/src/app/pages/devices.rs:1047 -#: crates/pdfs-gui/src/app/pages/devices.rs:1091 -#: crates/pdfs-gui/src/app/pages/devices.rs:1131 -#: crates/pdfs-gui/src/app/pages/devices.rs:1194 +#: crates/pdfs-gui/src/app/pages/devices.rs:826 +#: crates/pdfs-gui/src/app/pages/devices.rs:979 +#: crates/pdfs-gui/src/app/pages/devices.rs:1017 +#: crates/pdfs-gui/src/app/pages/devices.rs:1069 +#: crates/pdfs-gui/src/app/pages/devices.rs:1113 +#: crates/pdfs-gui/src/app/pages/devices.rs:1153 +#: crates/pdfs-gui/src/app/pages/devices.rs:1216 #: crates/pdfs-gui/src/app/pages/locations.rs:850 #: crates/pdfs-gui/src/app/pages/locations.rs:1054 #: crates/pdfs-gui/src/app/pages/locations.rs:1537 @@ -346,7 +346,7 @@ msgstr "Grade / lista" #: crates/pdfs-gui/src/app/pages/albums.rs:298 #: crates/pdfs-gui/src/app/pages/browser.rs:1896 #: crates/pdfs-gui/src/app/pages/browser.rs:1918 -#: crates/pdfs-gui/src/app/pages/devices.rs:996 +#: crates/pdfs-gui/src/app/pages/devices.rs:1018 #: crates/pdfs-gui/src/app/widgets/details.rs:161 msgid "Rename" msgstr "Renomear" @@ -678,7 +678,7 @@ msgid "Couldn't add a sync folder" msgstr "Não foi possível adicionar uma pasta sincronizada" #: crates/pdfs-gui/src/app/pages/activity_text.rs:58 -#: crates/pdfs-gui/src/app/pages/devices.rs:839 +#: crates/pdfs-gui/src/app/pages/devices.rs:861 msgid "Couldn't restore folders" msgstr "Não foi possível restaurar as pastas" @@ -1270,12 +1270,12 @@ msgstr "Não foi possível carregar os álbuns" #: crates/pdfs-gui/src/app/pages/browser.rs:1873 #: crates/pdfs-gui/src/app/pages/browser.rs:2500 #: crates/pdfs-gui/src/app/pages/browser.rs:2650 -#: crates/pdfs-gui/src/app/pages/devices.rs:707 -#: crates/pdfs-gui/src/app/pages/devices.rs:747 -#: crates/pdfs-gui/src/app/pages/devices.rs:900 -#: crates/pdfs-gui/src/app/pages/devices.rs:1170 -#: crates/pdfs-gui/src/app/pages/devices.rs:1231 -#: crates/pdfs-gui/src/app/pages/devices.rs:1260 +#: crates/pdfs-gui/src/app/pages/devices.rs:729 +#: crates/pdfs-gui/src/app/pages/devices.rs:769 +#: crates/pdfs-gui/src/app/pages/devices.rs:922 +#: crates/pdfs-gui/src/app/pages/devices.rs:1192 +#: crates/pdfs-gui/src/app/pages/devices.rs:1253 +#: crates/pdfs-gui/src/app/pages/devices.rs:1282 #: crates/pdfs-gui/src/app/pages/duplicates.rs:221 #: crates/pdfs-gui/src/app/pages/locations.rs:577 #: crates/pdfs-gui/src/app/pages/locations.rs:824 @@ -1921,7 +1921,7 @@ msgid "{status}. {message}" msgstr "{status}. {message}" #: crates/pdfs-gui/src/app/pages/browser.rs:1900 -#: crates/pdfs-gui/src/app/pages/devices.rs:989 +#: crates/pdfs-gui/src/app/pages/devices.rs:1011 msgid "New name" msgstr "Novo nome" @@ -1946,7 +1946,7 @@ msgstr "Escolha a pasta de destino." #: crates/pdfs-gui/src/app/pages/browser.rs:1989 #: crates/pdfs-gui/src/app/pages/browser.rs:1994 -#: crates/pdfs-gui/src/app/pages/devices.rs:1195 +#: crates/pdfs-gui/src/app/pages/devices.rs:1217 msgid "Move Here" msgstr "Mover para cá" @@ -2268,76 +2268,87 @@ msgid_plural "{n} folders backed up" msgstr[0] "{n} pasta com backup" msgstr[1] "{n} pastas com backup" -#: crates/pdfs-gui/src/app/pages/devices.rs:608 +#: crates/pdfs-gui/src/app/pages/devices.rs:607 +#, rust-format +msgid "{folders} · {n} waiting for its first sync" +msgid_plural "{folders} · {n} waiting for their first sync" +msgstr[0] "{folders} · {n} aguarda a primeira sincronização" +msgstr[1] "{folders} · {n} aguardam a primeira sincronização" + +#: crates/pdfs-gui/src/app/pages/devices.rs:621 #, rust-format msgid "{folders} · {n} needs attention" msgid_plural "{folders} · {n} need attention" msgstr[0] "{folders} · {n} requer atenção" msgstr[1] "{folders} · {n} requerem atenção" -#: crates/pdfs-gui/src/app/pages/devices.rs:619 +#: crates/pdfs-gui/src/app/pages/devices.rs:640 msgid "syncing…" msgstr "sincronizando…" -#: crates/pdfs-gui/src/app/pages/devices.rs:620 +#: crates/pdfs-gui/src/app/pages/devices.rs:641 msgid "sync error" msgstr "erro de sincronização" -#: crates/pdfs-gui/src/app/pages/devices.rs:621 +#: crates/pdfs-gui/src/app/pages/devices.rs:642 msgid "needs attention" msgstr "requer atenção" -#: crates/pdfs-gui/src/app/pages/devices.rs:622 +#: crates/pdfs-gui/src/app/pages/devices.rs:643 +msgid "waiting for first sync" +msgstr "aguardando a primeira sincronização" + +#: crates/pdfs-gui/src/app/pages/devices.rs:644 msgid "up to date" msgstr "atualizado" -#: crates/pdfs-gui/src/app/pages/devices.rs:632 +#: crates/pdfs-gui/src/app/pages/devices.rs:654 msgid "checking for changes…" msgstr "verificando alterações…" -#: crates/pdfs-gui/src/app/pages/devices.rs:638 +#: crates/pdfs-gui/src/app/pages/devices.rs:660 #, rust-format msgid "checking for changes — {n} item checked" msgid_plural "checking for changes — {n} items checked" msgstr[0] "verificando alterações — {n} item verificado" msgstr[1] "verificando alterações — {n} itens verificados" -#: crates/pdfs-gui/src/app/pages/devices.rs:645 +#: crates/pdfs-gui/src/app/pages/devices.rs:667 #, rust-format msgid "checking for changes — {done} of {total}" msgstr "verificando alterações — {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:657 +#: crates/pdfs-gui/src/app/pages/devices.rs:679 #, rust-format msgid "syncing {done} of {total}" msgstr "sincronizando {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:663 +#: crates/pdfs-gui/src/app/pages/devices.rs:685 #, rust-format msgid "syncing {file} — {done} of {total}" msgstr "sincronizando {file} — {done} de {total}" -#: crates/pdfs-gui/src/app/pages/devices.rs:675 +#: crates/pdfs-gui/src/app/pages/devices.rs:697 msgid "Add Folder to Sync" msgstr "Adicionar pasta à sincronização" -#: crates/pdfs-gui/src/app/pages/devices.rs:699 +#: crates/pdfs-gui/src/app/pages/devices.rs:721 #: crates/pdfs-gui/src/app/pages/locations.rs:1559 #: crates/pdfs-gui/src/app/pages/locations.rs:1686 msgid "Syncing folder…" msgstr "Sincronizando pasta…" -#: crates/pdfs-gui/src/app/pages/devices.rs:702 -#: crates/pdfs-gui/src/app/pages/devices.rs:706 +#: crates/pdfs-gui/src/app/pages/devices.rs:724 +#: crates/pdfs-gui/src/app/pages/devices.rs:728 msgid "Couldn't add folder" msgstr "Não foi possível adicionar a pasta" -#: crates/pdfs-gui/src/app/pages/devices.rs:740 -#: crates/pdfs-gui/src/app/pages/devices.rs:746 +#: crates/pdfs-gui/src/app/pages/devices.rs:762 +#: crates/pdfs-gui/src/app/pages/devices.rs:768 msgid "Couldn't list folders to restore" msgstr "Não foi possível listar as pastas para restaurar" -#: crates/pdfs-gui/src/app/pages/devices.rs:772 +#: crates/pdfs-gui/src/app/pages/devices.rs:794 msgid "" "Tick the folders to sync to this machine, and adjust where each one should " "live." @@ -2345,19 +2356,19 @@ msgstr "" "Marque as pastas a sincronizar com esta máquina e ajuste onde cada uma deve " "ficar." -#: crates/pdfs-gui/src/app/pages/devices.rs:798 +#: crates/pdfs-gui/src/app/pages/devices.rs:820 msgid "Restore Folders" msgstr "Restaurar pastas" -#: crates/pdfs-gui/src/app/pages/devices.rs:805 +#: crates/pdfs-gui/src/app/pages/devices.rs:827 msgid "Restore" msgstr "Restaurar" -#: crates/pdfs-gui/src/app/pages/devices.rs:838 +#: crates/pdfs-gui/src/app/pages/devices.rs:860 msgid "Restoring folders…" msgstr "Restaurando pastas…" -#: crates/pdfs-gui/src/app/pages/devices.rs:850 +#: crates/pdfs-gui/src/app/pages/devices.rs:872 #, rust-format msgid "" "These folders are backed up from “{name}”. Restored folders keep syncing " @@ -2366,36 +2377,36 @@ msgstr "" "Estas pastas têm backup a partir de “{name}”. As pastas restauradas " "continuam sincronizando com a cópia daquele computador." -#: crates/pdfs-gui/src/app/pages/devices.rs:853 +#: crates/pdfs-gui/src/app/pages/devices.rs:875 msgid "These folders are backed up under this computer in Proton Drive." msgstr "Estas pastas têm backup sob este computador no Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:862 +#: crates/pdfs-gui/src/app/pages/devices.rs:884 #, rust-format msgid "Nothing to restore — “{name}”'s folders are all synced here." msgstr "" "Nada a restaurar — as pastas de “{name}” já estão todas sincronizadas aqui." -#: crates/pdfs-gui/src/app/pages/devices.rs:865 +#: crates/pdfs-gui/src/app/pages/devices.rs:887 msgid "Nothing to restore — this computer's folders are all synced here." msgstr "" "Nada a restaurar — as pastas deste computador já estão todas sincronizadas " "aqui." -#: crates/pdfs-gui/src/app/pages/devices.rs:889 +#: crates/pdfs-gui/src/app/pages/devices.rs:911 msgid "Folder will switch to online only" msgstr "A pasta passará a ser somente online" -#: crates/pdfs-gui/src/app/pages/devices.rs:891 +#: crates/pdfs-gui/src/app/pages/devices.rs:913 msgid "Folder will download and stay synced" msgstr "A pasta será baixada e permanecerá sincronizada" -#: crates/pdfs-gui/src/app/pages/devices.rs:895 -#: crates/pdfs-gui/src/app/pages/devices.rs:899 +#: crates/pdfs-gui/src/app/pages/devices.rs:917 +#: crates/pdfs-gui/src/app/pages/devices.rs:921 msgid "Couldn't change mode" msgstr "Não foi possível alterar o modo" -#: crates/pdfs-gui/src/app/pages/devices.rs:931 +#: crates/pdfs-gui/src/app/pages/devices.rs:953 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2412,7 +2423,7 @@ msgstr "" "uma cópia local, cancele, mude a pasta para Sincronizada e aguarde o " "download terminar antes de removê-la." -#: crates/pdfs-gui/src/app/pages/devices.rs:937 +#: crates/pdfs-gui/src/app/pages/devices.rs:959 #, rust-format msgid "" "Stop syncing “{path}”?\n" @@ -2425,68 +2436,68 @@ msgstr "" "Os arquivos locais permanecem neste disco e simplesmente deixam de ser " "sincronizados. Escolha se também deseja excluir a cópia no Proton Drive." -#: crates/pdfs-gui/src/app/pages/devices.rs:942 +#: crates/pdfs-gui/src/app/pages/devices.rs:964 msgid "Stop Syncing Folder?" msgstr "Parar de sincronizar a pasta?" -#: crates/pdfs-gui/src/app/pages/devices.rs:947 +#: crates/pdfs-gui/src/app/pages/devices.rs:969 msgid "Also delete from Proton Drive" msgstr "Também excluir do Proton Drive" -#: crates/pdfs-gui/src/app/pages/devices.rs:949 +#: crates/pdfs-gui/src/app/pages/devices.rs:971 msgid "Deletes the only copy of these files." msgstr "Exclui a única cópia destes arquivos." -#: crates/pdfs-gui/src/app/pages/devices.rs:951 +#: crates/pdfs-gui/src/app/pages/devices.rs:973 msgid "The local copy is unaffected." msgstr "A cópia local não é afetada." -#: crates/pdfs-gui/src/app/pages/devices.rs:958 +#: crates/pdfs-gui/src/app/pages/devices.rs:980 msgid "Stop Syncing" msgstr "Parar de sincronizar" -#: crates/pdfs-gui/src/app/pages/devices.rs:971 +#: crates/pdfs-gui/src/app/pages/devices.rs:993 msgid "Stopped syncing folder" msgstr "A pasta deixou de ser sincronizada" -#: crates/pdfs-gui/src/app/pages/devices.rs:972 +#: crates/pdfs-gui/src/app/pages/devices.rs:994 msgid "Couldn't stop syncing the folder" msgstr "Não foi possível parar de sincronizar a pasta" -#: crates/pdfs-gui/src/app/pages/devices.rs:983 +#: crates/pdfs-gui/src/app/pages/devices.rs:1005 msgid "Rename Computer" msgstr "Renomear computador" #. Translators: {name} is the computer's current name. -#: crates/pdfs-gui/src/app/pages/devices.rs:985 +#: crates/pdfs-gui/src/app/pages/devices.rs:1007 #, rust-format msgid "Rename “{name}”." msgstr "Renomear “{name}”." -#: crates/pdfs-gui/src/app/pages/devices.rs:1010 -#: crates/pdfs-gui/src/app/pages/devices.rs:1022 +#: crates/pdfs-gui/src/app/pages/devices.rs:1032 +#: crates/pdfs-gui/src/app/pages/devices.rs:1044 msgid "Couldn't rename the computer" msgstr "Não foi possível renomear o computador" -#: crates/pdfs-gui/src/app/pages/devices.rs:1011 +#: crates/pdfs-gui/src/app/pages/devices.rs:1033 msgid "A name is required." msgstr "Um nome é obrigatório." -#: crates/pdfs-gui/src/app/pages/devices.rs:1021 +#: crates/pdfs-gui/src/app/pages/devices.rs:1043 msgid "Computer renamed" msgstr "Computador renomeado" #. Translators: {name} is the computer's name, which the user must type. -#: crates/pdfs-gui/src/app/pages/devices.rs:1034 +#: crates/pdfs-gui/src/app/pages/devices.rs:1056 #, rust-format msgid "Type “{name}” to confirm" msgstr "Digite “{name}” para confirmar" -#: crates/pdfs-gui/src/app/pages/devices.rs:1039 +#: crates/pdfs-gui/src/app/pages/devices.rs:1061 msgid "Remove Computer?" msgstr "Remover computador?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1042 +#: crates/pdfs-gui/src/app/pages/devices.rs:1064 #, rust-format msgid "" "Remove “{name}” from this account?\n" @@ -2501,26 +2512,26 @@ msgstr "" "naquele próprio computador não são tocados — mas isso não pode ser desfeito " "daqui." -#: crates/pdfs-gui/src/app/pages/devices.rs:1048 +#: crates/pdfs-gui/src/app/pages/devices.rs:1070 #: crates/pdfs-gui/src/app/pages/shared.rs:1025 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:634 #: crates/pdfs-gui/src/app/widgets/share_dialog.rs:876 msgid "Remove" msgstr "Remover" -#: crates/pdfs-gui/src/app/pages/devices.rs:1065 +#: crates/pdfs-gui/src/app/pages/devices.rs:1087 msgid "Computer removed" msgstr "Computador removido" -#: crates/pdfs-gui/src/app/pages/devices.rs:1066 +#: crates/pdfs-gui/src/app/pages/devices.rs:1088 msgid "Couldn't remove the computer" msgstr "Não foi possível remover o computador" -#: crates/pdfs-gui/src/app/pages/devices.rs:1084 +#: crates/pdfs-gui/src/app/pages/devices.rs:1106 msgid "Continue This Backup Here?" msgstr "Continuar este backup aqui?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1087 +#: crates/pdfs-gui/src/app/pages/devices.rs:1109 #, rust-format msgid "" "This computer takes over the backup of “{name}”, for example after a " @@ -2539,25 +2550,25 @@ msgstr "" "movidas. Depois, use “Restaurar neste computador” para recuperar o que " "“{name}” sincronizava." -#: crates/pdfs-gui/src/app/pages/devices.rs:1092 +#: crates/pdfs-gui/src/app/pages/devices.rs:1114 msgid "Continue Here" msgstr "Continuar aqui" #. Translators: {name} is the name of the computer whose backup this one took over. -#: crates/pdfs-gui/src/app/pages/devices.rs:1099 +#: crates/pdfs-gui/src/app/pages/devices.rs:1121 #, rust-format msgid "Now backing up as “{name}”" msgstr "Agora fazendo backup como “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1108 +#: crates/pdfs-gui/src/app/pages/devices.rs:1130 msgid "Couldn't continue that backup here" msgstr "Não foi possível continuar esse backup aqui" -#: crates/pdfs-gui/src/app/pages/devices.rs:1124 +#: crates/pdfs-gui/src/app/pages/devices.rs:1146 msgid "Sync With This Computer?" msgstr "Sincronizar com este computador?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1127 +#: crates/pdfs-gui/src/app/pages/devices.rs:1149 #, rust-format msgid "" "This computer and “{name}” keep the same folders in step. A change or a " @@ -2574,25 +2585,25 @@ msgstr "" "Drive. As pastas já sincronizadas aqui ficam onde estão. Em seguida, você " "escolhe quais pastas dele sincronizar aqui." -#: crates/pdfs-gui/src/app/pages/devices.rs:1132 +#: crates/pdfs-gui/src/app/pages/devices.rs:1154 msgid "Sync Here" msgstr "Sincronizar aqui" #. Translators: {name} is the name of the other computer this one now syncs with. -#: crates/pdfs-gui/src/app/pages/devices.rs:1139 +#: crates/pdfs-gui/src/app/pages/devices.rs:1161 #, rust-format msgid "Now syncing with “{name}”" msgstr "Agora sincronizando com “{name}”" -#: crates/pdfs-gui/src/app/pages/devices.rs:1155 +#: crates/pdfs-gui/src/app/pages/devices.rs:1177 msgid "Couldn't sync with that computer" msgstr "Não foi possível sincronizar com esse computador" -#: crates/pdfs-gui/src/app/pages/devices.rs:1187 +#: crates/pdfs-gui/src/app/pages/devices.rs:1209 msgid "Move Backup to This Computer?" msgstr "Mover o backup para este computador?" -#: crates/pdfs-gui/src/app/pages/devices.rs:1190 +#: crates/pdfs-gui/src/app/pages/devices.rs:1212 #, rust-format msgid "" "The folders backed up by “{name}” move into this computer's backup in Proton " @@ -2609,12 +2620,12 @@ msgstr "" "pastas sumirem." #. Translators: {name} is the name of the computer whose folders moved to this one. -#: crates/pdfs-gui/src/app/pages/devices.rs:1202 +#: crates/pdfs-gui/src/app/pages/devices.rs:1224 #, rust-format msgid "Moved the backup of “{name}”" msgstr "Backup de “{name}” movido" -#: crates/pdfs-gui/src/app/pages/devices.rs:1216 +#: crates/pdfs-gui/src/app/pages/devices.rs:1238 msgid "Couldn't move that backup" msgstr "Não foi possível mover esse backup" @@ -3351,7 +3362,7 @@ msgid "paused" msgstr "pausada" #. Translators: a folder's files can't be opened right now. -#: crates/pdfs-gui/src/app/pages/locations.rs:1742 +#: crates/pdfs-gui/src/app/pages/locations.rs:1745 msgid "not available" msgstr "indisponível"