Skip to content

3.4.8

Latest

Choose a tag to compare

@Firnschnee Firnschnee released this 24 Jul 19:58

FoxOne makes everything square. That is the point of it, and it stays the default - but on stock Windows 11, where every elevated surface is rounded, it is also the one thing that reads as out of place rather than as deliberate. So the corners are now a toggle. What took three failed attempts (#37) was not the toggle, it was the popups: a panel is its own OS window, and every earlier approach tried to round it by taking the window's shape away from the system. Reading the CSS Firefox actually ships, instead of inferring it, settled it in one pass - the Windows 11 Mica branch is a single rule that matches context menus only, and FoxOne's popups were already on a drawing path where an ordinary CSS radius renders as an ordinary antialiased corner.

Added

  • --uc-rounded in the config block. 0 keeps FoxOne square (default, unchanged); 1 gives every surface FoxOne squares the --uc-border-radius it already carries, and the rows inside those surfaces half of it. That covers arrow panels, context menus and their rows, the URL field and its breakout box, tabs, find bar, status panel and split-view footer.
  • The 8px / 4px pair this produces is not invented for the occasion: it is what Firefox ships in its own design tokens for panels and panel rows, so the result reads like stock Firefox rather than like one radius painted over everything.

Fixed

  • The URL field's painted box hung a pixel below the toolbar row in the resting state. Present since the Nova megabar fix in 3.x and invisible while everything was square and toolbar-coloured, obvious the moment the box has a corner radius. The pull that causes it is now scoped to the breakout state, where it belongs, and derived from the field height instead of hand-tuned per UI density - which also retires the separate touch-density rule.
  • userContent.css was still stamped 3.4.6 and is back in sync with userChrome.css.

Notes

  • The square default is byte-identical, by construction: the radius is calc(var(--uc-rounded) * var(--uc-border-radius)), and at 0 that resolves to 0px. Nothing is gated, so nothing can half-apply.
  • Layout stays square in both modes. The content area and the frames around toolbox, sidebar and browser keep their edges: Firefox only rounds those because it insets them by 4px first, and FoxOne is edge-to-edge, where the same radius would cut notches into the page and beside the sidebar. That is a layout change, not a corner, and it stays a separate decision.
  • Popups keep FoxOne's own drawing path in both modes, which is what keeps them Gruvbox instead of system-tinted. Handing them to the Windows 11 backdrop would round the context menu, leave the hamburger panel square, and paint an opaque square fill over the rounded backdrop anyway.
  • Change the radius itself with --uc-border-radius; --uc-rounded only decides whether it is applied or zeroed.
  • As always, this applies to the supported browser.nova.enabled=true configuration.

I really should start writing shorter release notes...