Repository navigation
refactor(i18n): show what the window says about undelivered input through Fluent - #959
Merged
Merged
Conversation
…ough Fluent
Part of Phase 2 of docs/i18n.md. The main window's status line, flashes,
and notices for input it could not deliver now come from window-input.ftl:
typed keys and held input, the mouse, pastes, dropped files, images, the
file copy to an SSH device and its card, tab drags, link handlers, and
resizes. Errors there use localize() instead of to_string().
Hand-built plurals become selectors (held inputs discarded, files
copying), the copy card's sizes and progress are messages with a unit
selector, and the image kind ("Image" or "Paste") picks a whole sentence.
The inline tests of window/images.rs move to images/tests.rs.
The status line now builds these lines from messages, so the tests that compared them verbatim strip the marks Fluent puts around each placeable, through a shared i18n::leak_tests::unmarked.
✅ Deploy Preview for herdr-ui canceled.
|
Collaborator
Author
|
|
[Medium impact] The PR appears safe to merge; no actionable issue was found. SummaryMoves undelivered-input feedback and the SSH copy card into Fluent messages.
No actionable issues were found. The previous-review merge-base check failed, so the full PR was reviewed. Reviews (2) · Last reviewed commit: "Merge remote-tracking branch 'origin/mai..." · Reviewed by Greptile |
This was referenced Nov 1, 2026
# Conflicts: # docs/i18n.md
Collaborator
Author
|
@greptileai review |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Part of Phase 2 of
docs/i18n.md, following #880, #926/#928, and #941. This PR covers what the main window says about input it could not deliver: typed keys and held input, the mouse, pastes, dropped files, images, and the file copy to an SSH device. Find, copy mode, and annotation follow in their own PR.window-input.ftl.// i18n: migrated:pending_input,input,mouse,accessibility(including the terminal's screen-reader name),file_drop,wsl_drop,transfers,images,image_source,clipboard,tab_drag,links, andlifecycle. Test-only shell scripts inclipboard.rs, aDebugname, macOS'sTemporaryItemsfolder, and a storage log's context are tagged// i18n: data.{error}these lines show useslocalize()instead ofDisplay/to_string(), including the copy's own errors andclipboard::Error::Busy.kindselector.local_transfer_noticestill passes title and body throughNotice::local_feedback'ssafe_text, because callers outside this scope give it daemon and SSH text. Those toasts loseen-XB's direction marks, as before.window/images.rsmoves its inline tests toimages/tests.rs.i18n::leak_tests::unmarked.en-XAleak tests:window/tests/en_xa_input.rs: the disconnected flash, a paste and a drop refused by an open menu, and a drop on nothing.transfers/tests/en_xa.rs: the copy card while copying, finishing, and cancelling.images/tests/en_xa.rs: a discarded image's and paste's status line and notice, with the error's own message inside.docs/i18n.mdis left as onmain, because every open i18n PR edits its "What is left" list. One PR updates the list after they all merge.No visible change in English.
Screenshots
None. Every surface here needs input the window refuses: a key typed while disconnected, a paste or drop with a menu open, or a file dropped on an SSH pane. On this machine that would mean synthetic keyboard and drag events on a display the user shares, which they've asked not to do without asking first. The en-XA leak tests draw each of these surfaces headless, and the manual checks below cover them natively.
QA
just formatjust cion5296b3691(macOS arm64, after mergingmain): passed, 16,404 tests, 0 failedjust lint-linuxandjust lint-windowson5296b3691: passed (file_drop's cloud gate andclipboard's Linux tests changed)en-XA: the copy card's title, progress ("… KiB / … MiB (…%)"), and Cancel read in en-XA, and the completion notice tooen-XA: the status line and the "Image discarded" notice read in en-XA