Skip to content

[Bug]: Built-in browser is pinned to en-US, so web pages get US date inputs and navigator.language regardless of OS language #23719

Open

Description

@hadjedjvincent

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/desktop

Steps to reproduce

  1. Use macOS with French as the only system language (AppleLanguages = ("fr-FR"), AppleLocale = fr_FR).

  2. Launch the packaged desktop app and open any page with an <input type="date"> in the built-in browser.

  3. Type a date the way a French user would: 03/04/2026 (3 April 2026).

  4. Optionally, evaluate this in the page:

    ({ navLang: navigator.language, navLangs: navigator.languages,
       intl: Intl.DateTimeFormat().resolvedOptions().locale,
       sample: new Date(2026, 3, 3).toLocaleDateString() })

Expected behavior

The built-in browser follows the OS language and region, like Chrome or Safari on the same machine:

  • <input type="date"> uses the French dd/mm/yyyy order;
  • navigator.language and the default Intl locale are fr-FR;
  • sites receive French as their primary language.

Actual behavior

Web content in the built-in browser always runs with an en-US application locale:

{
  navLang:  "en-US",
  navLangs: ["en-US", "fr-FR"],
  intl:     "en-US",
  sample:   "4/3/2026",          // en-US formatting
  tz:       "Europe/Paris"       // time zone is correct, only the locale is wrong
}

The date input displays and parses mm/dd/yyyy. Typing 03/04/2026 is silently stored as 2026-03-04, which is 4 March instead of 3 April. Nothing on the input indicates that it expects US order on a French system, so for non-US users dates typed in dd/mm order are silently stored with day and month swapped.

The root cause seems to be the same as in #6178. The packaged app ships only the en-US Chromium locale (DESKTOP_ELECTRON_LANGUAGES = ["en-US"]). The installed bundle confirms it:

$ ls "/Applications/T3 Code (Nightly).app/Contents/Resources/" | grep lproj
en.lproj
$ ls "/Applications/T3 Code (Nightly).app/Contents/Frameworks/Electron Framework.framework/Resources/"*.lproj
locale.pak

Chromium resolves its application locale from the locale paks that are available. With only en-US present, every page loaded in the built-in browser gets en-US, whatever the OS language. #6178 (closed) covered timestamps in T3's own UI; web pages in the built-in browser are still affected on this build. Users can't work around it: there is no language setting, and --lang=fr-FR cannot help because fr.pak is not shipped.

Possible fixes:

  • ship more Chromium locale paks in the desktop build, at least the most common ones, or all of them for a few MB;
  • or add a language setting for the built-in browser, which would require the matching paks too.

Impact

Minor bug or occasional failure

Version or commit

0.1.2-nightly.20261021.3486

Environment

macOS 26.7.1 (Apple Silicon), T3 Code Nightly 0.1.2-nightly.20261021.3486, Electron 44.9.3, Chrome 152.0.7977.167, system language fr-FR

Logs or stack traces

Screenshots, recordings, or supporting files

No response

Workaround

  • Pick dates from the calendar popup instead of typing them, or type them in US order (mm/dd/yyyy).
  • Use an external browser for forms that ask for dates.

Activity

  1. added
    bugSomething is broken or behaving incorrectly.
    needs-triageIssue needs maintainer review and initial categorization.
    on Oct 22, 2026
  2. added a commit that references this issue on Oct 25, 2026
    724b800
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions