Skip to content

I18n ptbr windows - #1

Merged
KauaDc merged 11 commits into
mainfrom
i18n-ptbr-windows
Oct 5, 2026
Merged

KauaDc merged 11 commits into
mainfrom
i18n-ptbr-windows

Conversation

@KauaDc

@KauaDc KauaDc commented Oct 5, 2026

Copy link
Copy Markdown
Owner

No description provided.

KauaDc and others added 11 commits October 2, 2026 09:31
Any Portuguese Windows UI language shows the interface in pt-BR, everything
else stays in English. The webview reads navigator.languages; Rust reads
GetUserDefaultUILanguage for the tray menu, the Settings window title and the
error messages that reach the UI. Strings live in src/i18n (en.ts is the
reference, pt-BR.ts must define the same keys). The Claude Code step labels,
previously in French, now come from the same dictionaries.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Settings → Chat now picks the provider (Claude or Gemini), with its own key
and model each. The shared chat logic moves to chat.rs; claude.rs and the
new gemini.rs only know how to call their API. Switching provider starts a
new conversation, since the two history formats do not mix.

When Google Search grounding runs out of quota (429), the Gemini request is
retried once without it, search stays off until restart, and the system
prompt says so.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Settings → General → Island lives on lists each connected display next to
"Main display" and "Display under the cursor". A pinned display that is
unplugged stays selected while the island falls back to the main one, and
the island moves back when it returns. In cursor mode, a wake strip on every
other display lets the top of any screen bring the island out.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A Discloud card lists your apps — online or offline, CPU and RAM — plays an
alert when one goes down or comes back, shows its recent logs, and has Start,
Stop and Restart buttons. Stop and Restart ask for a second click, and nothing
is sent without one. The API token lives in the Credential Manager.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e a file from the chat

Files dragged from the classic Explorer folder view (Downloads, Documents...)
got the "no drop" cursor: the island's innermost windows belong to
msedgewebview2.exe and those drags never reached wry's drop target. Only the
WinUI views (Home, Recent) got through. The island now lets WebView2 take the
drop, as Edge does, and reads the real paths back through
postMessageWithAdditionalObjects (webview_drop.rs).

Cancel on the dropped-file card never received the click: the hidden view and
#content sat above the canvas buttons. It now also forgets the file, so the
chat no longer picks it up, and a copy finishing late cannot bring it back.

The file chip in the chat gets an x to remove the file; once the conversation
has started it starts over, since the model already has the file.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… s timeout

AskUserQuestion used to land on the Allow / Deny card. It now gets its own
card: one click for a single choice, several for a multi-select, up to four
questions in a row with Back, free text under "Other…", and "In the terminal"
to leave it to Claude Code. The relay keeps the original questions untouched
and answers with the documented updatedInput { questions, answers }.

Approvals and questions no longer expire after 110 s. Claude Code shows the
same prompt in the terminal while the hook waits, so nothing blocks; the card
is released when the relay hangs up, or when the session moves on (the tool
finishes, the turn ends, a new prompt), since Claude Code does not kill the
relay when the terminal answers first. The PermissionRequest hook timeout
becomes a day, and Settings flags hooks written by older versions.

Checked against Claude Code 2.1.287 with the real coucou-hook.exe.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Discloud, Gemini in the chat, Brazilian Portuguese, the island on any
display and answering Claude Code's questions from the island.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in upstream's platform/ split (Windows + Linux from one crate),
coucou_agent routing, the MSI target and the iPhone/macOS work.

- wake_strips and webview_drop stay Windows-only (#[cfg(windows)]) so the
  Linux build is unaffected.
- platform::unblock_webview_drops only touches the settings window: the
  island takes drops through WebView2's own target (webview_drop.rs).
- wait_for_decision takes any Relay, not just a named pipe.
- hooks.ts keeps agent routing with the t() strings; hooks.rs keeps
  write_like with the translated error.
- Docs: Windows entries move to a new Unreleased section; Discloud and
  Windows Gemini notes re-added on top of upstream's pages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 5, 2026 13:33

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@KauaDc
KauaDc merged commit 4325dc1 into main Oct 5, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants