Page translation
Translate any page
Open a website in a foreign language and Swiftin translates the entire page. Translation only by default — original gets replaced with the translation. Bilingual mode shows both side by side.

Four ways to start
Floating button
A Swiftin button appears on the right of the page — click it to translate.
Translate button in the extension
Click the Swiftin icon in your extensions toolbar, then click Translate.
Hotkey
Press Alt+S anywhere on the page. Press it again to revert to original.
Right-click menu
Right-click anywhere on the page → Translate this page.
Two display modes
Translation only (default)
Original text is replaced with the translation. Best for quick reading when you don't need the source.
Bilingual
Original text and translation appear side by side. Best for reading articles, learning the language, or verifying nuance.
Switch modes either from the Translate button in the extension or directly from the floating button on the page.
Common issues
Page translation runs in every tab so it's the most likely place to hit edge cases. Each row covers a real failure mode.
LAYOUT_BREAKSSite's layout breaks after translation
Some sites depend on the exact original text for CSS or JS. Switch to bilingual mode (keeps the original DOM intact) or add the host to your excluded list.
AUTO_NOT_FIRINGAuto-translate doesn't kick in on a saved site
Auto-translate needs an exact host match. If you saved "example.com" the rule won't match "www.example.com". Re-add the host as you see it in the address bar.
WIDGETS_UNTRANSLATEDEmbedded chat / help widget stays in original language
Chat widgets (Intercom, Zendesk, etc.) often live in cross-origin iframes or Shadow DOM. Swiftin translates the main page but custom widget DOMs may need a per-site rule. Report the site so we can ship a rule.
PARTIAL_TRANSLATIONOnly part of the page is translated
Sites that lazy-load content (infinite-scroll feeds, tabs) get translated as it loads — the extension watches the DOM and picks up new nodes. If some content still stays in the original (heavy Shadow DOM, virtualization), press Alt+S twice (revert + re-translate) to force a fresh pass over the now-fuller DOM.
WRONG_LANGTranslated into the wrong language
Per-feature target language: Page Translate has its own setting separate from Selection and Input. Open Options → Page Translate to fix.
NO_REVERTCan't get the original back
Press Alt+S again on the same page — it toggles. The floating S button on the page does the same thing: when the page is translated, one click reverts it. If the page reloaded, the translation is gone anyway.