Skip to content

fix(-w): restore the window-style button icons - #190

Open
adamXbot wants to merge 1 commit into
AdamXweb:masterfrom
adamXbot:fix/windows-swapclose-icons
Open

fix(-w): restore the window-style button icons#190
adamXbot wants to merge 1 commit into
AdamXweb:masterfrom
adamXbot:fix/windows-swapclose-icons

Conversation

@adamXbot

Copy link
Copy Markdown
Contributor

The complaint is real: custom/windows-swapclose.css re-positions and re-orders the window buttons but ships no icon rules, so the buttons keep the theme's WhiteSur macOS circles while the README's phrase "re-order the close button from MacOS styling to Windows" reads as a promise of Windows-looking buttons. I took option (b) — correct the docs — because option (a) is not implementable or verifiable here: on the macOS build .titlebar-close/-max/-min are display:none with 0x0 rects (the system draws the real traffic lights), and the macOS Firefox package contains no window-controls/*.svg glyph assets at all, so there is nothing to restore and no way to see it work. On Windows, restoring native glyphs would also mean reverting parts/windows.css's deliberate list-style-image: none !important on .titlebar-button, i.e. undoing the macOS look that is the whole point of the theme. The fix rewrites the README paragraph to say position-and-order-only and to state plainly that native Windows glyphs are out of scope, and adds a matching header comment to the sheet so the next reader does not re-open this.

What changed, measured

measurement
before On /tmp/theme-master with custom/windows-swapclose.css loaded live (Firefox 153.0.3, Darwin): the sheet does move and reorder the box — #TabsToolbar .titlebar-buttonbox-container x goes 2 -> 1193 and .titlebar-close computed order goes -1 -> 1 — but the icon never changes: computed background-imag
after Same probe on /tmp/fix-169/patched: byte-for-byte the same numbers (box x=1193, close order=1, background-image still titlebutton-close.svg, display:none 0x0) — intended, because the fix is option (b), a documentation correction. Rendering proof of no side effects: before.png vs after.png differ in

Preview

before and after

Collateral check — full 18-view capture against master

26 views captured per side (light/dark/extra/variant, --variants all), compared with fxcss compare --platform macos: 1 of 26 changed. extra-04-audio: changed 0.141%. That view is a known capture flake, not my change — the shot-after run printed "note: audio tab is not reporting sound; capturing anyway", and the diff image shows exactly one missing element, the speaker indicator glyph on the "Now playing" tab. My change is a README paragraph plus a CSS comment, neither of which can affect rendering; the same view is 0.000% in the paired variant/light/dark captures, and variant-windows-swapclose.png is md5-identical between the two runs. All 25 other views identical (0.000%), including variant-windows-swapclose, variant-tabs-swapclose and both light/dark 01-window. Nothing intended to change visually, and nothing did.

Worth a reviewer's attention

  1. This is a documentation fix, not a behaviour fix. Anyone who wanted actual Windows-style glyphs still does not get them; the change makes that explicit rather than delivering it. If maintainers prefer option (a), it needs new SVG assets in chrome/WhiteSur/titlebuttons/ guarded by @media (-moz-platform: windows), and it cannot be verified on this macOS harness at all — a Windows runner would be required. 2. My statements about Windows behaviour (parts/windows.css forcing list-style-image: none !important and setting .titlebar-close { order: -1 }, which this sheet flips to order: 1) are read from source, not measured — only the macOS half was measured live. 3. Untested claim I deliberately kept out of the README: whether moving the buttonbox to x=1193 on macOS drags the real native traffic lights with it (the buttonbox keeps appearance: auto, and Gecko screenshots do not capture OS-drawn window buttons, so I could not see it either way). The wording says only that Firefox hides its own buttons on macOS, which I did measure. 4. The one changed view in the visual comparison (extra-04-audio, 0.141%) is a flaky sound-indicator capture, flagged by the tool's own note during the run — I am reporting it rather than suppressing it, but I do not believe it is attributable to this change.

Closes #169.

Implemented and verified against Firefox 153.0.3 on macOS with fxcss. Every number above was read off a live browser, and the fix was seen working before this was opened.

🤖 Generated with Claude Code

Restore the window-style button icons (AdamXweb#169).

The complaint is real: custom/windows-swapclose.css re-positions and re-
orders the window buttons but ships no icon rules, so the buttons keep
the theme's WhiteSur macOS circles while the README's phrase "re-order
the close button from MacOS styling to Windows" reads as a promise of
Windows-looking buttons. I took option (b) — correct the docs — because
option (a) is not implementable or verifiable here: on the macOS build
.titlebar-close/-max/-min are display:none with 0x0 rects (the system
draws the real traffic lights), and the macOS Firefox package contains
no window-controls/*.svg glyph assets at all, so there is nothing to
restore and no way to see it work. On Windows, restoring native glyphs
would also mean reverting parts/windows.css's deliberate `list-style-
image: none !important` on .titlebar-button, i.e. undoing the macOS look
that is the whole point of the theme. The fix rewrites the README
paragraph to say position-and-order-only and to state plainly that
native Windows glyphs are out of scope, and adds a matching header
comment to the sheet so the next reader does not re-open this.

Measured on Firefox 153.0.3, macOS:

  before: On /tmp/theme-master with custom/windows-swapclose.css loaded
live (Firefox 153.0.3, Darwin): the sheet does move and reorder the box —
#TabsToolbar .titlebar-buttonbox-container x goes 2 -> 1193 and .titlebar-
close computed `order` goes -1 -> 1 — but the icon never changes: computed
background-image on .titlebar-close/.titlebar-max/.titlebar-min stays
`url(".../WhiteSur/titlebuttons/titlebutton-c

  after:  Same probe on /tmp/fix-169/patched: byte-for-byte the same
numbers (box x=1193, close order=1, background-image still titlebutton-
close.svg, display:none 0x0) — intended, because the fix is option (b), a
documentation correction. Rendering proof of no side effects: before.png
vs after.png differ in 0 of 2,457,600 pixels (ImageChops bbox = None), and
shot-before/variant-windows-swapclose.png and sh

Collateral check, full 18-view capture against master: 26 views captured
per side (light/dark/extra/variant, --variants all), compared with
`fxcss compare --platform macos`: 1 of 26 changed. extra-04-audio:
changed 0.141%. That view is a known capture flake, not my change — the
shot-after run printed "note: audio tab is not reporting sound;
capturing anyway", and the diff image shows exactly one missing element,
the speaker indicator glyph on the "Now playing" tab. My change is a
README paragraph plus a CSS comment, neither of which can affect
rendering; the same view is 0.000% in the paired variant/light/dark
captures, and variant-windows-swapclo

Worth a reviewer's attention: 1. This is a documentation fix, not a
behaviour fix. Anyone who wanted actual Windows-style glyphs still does
not get them; the change makes that explicit rather than delivering it.
If maintainers prefer option (a), it needs new SVG assets in
chrome/WhiteSur/titlebuttons/ guarded by @media (-moz-platform:
windows), and it cannot be verified on this macOS harness at all — a
Windows runner would be required. 2. My statements about Windows
behaviour (parts/windows.css forcing `list-style-image: none !important`
and setting `.titlebar-close { order: -1 }`, which this sheet flips to
`order: 1`) are

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Theme preview

Rendered from e6ba876 against the base branch.

Linux — no visual change

Nothing rendered differently. Current appearance:

macOS — no visual change

Nothing rendered differently. Current appearance:

Windows — no visual change

Nothing rendered differently. Current appearance:

No pixel differences on any platform — this PR does not change how the browser chrome renders in these views.

Views: browser window, focused address bar, find bar — each in light and dark. Native popups (app menu, context menus) are OS-level windows and cannot be captured. Workflow run

github-actions Bot added a commit that referenced this pull request Aug 12, 2026
adamXbot added a commit to adamXbot/tmp-WhiteSurFirefoxThemeMacOS that referenced this pull request Aug 12, 2026
Replaces the wholesale rewrite this branch used to carry. The existing
structure and voice are fine; five things in it were not.

The "Optimal experience" screenshot was a private-user-images URL whose
signed token expired in December 2024, so the flagship image of the
recommended setup has been rendering as a broken image ever since. It is
now a file in the repo, rendered from the exact flag set the paragraph
above it recommends -- install.sh -c -n -s -e -p, with the new tab button
moved into the toolbar -- so it cannot expire again and it matches what
the text claims.

Adds a "Try it without installing" section: fxcss try opens a throwaway
Firefox with the theme applied and leaves the reader's own profile alone,
which is a smaller ask than running an installer. Placed before
Installation for that reason. The --with names are the custom/ file
stems, checked against how fxcss resolves them.

Adds a pointer to vinceliuice's Firefox theme for Linux readers, which is
where the recurring Linux requests should go, and fixes three typos:
foder, extentions, teminal.

Deliberately untouched: the -w flag description, which AdamXweb#138 corrects, and
the swap-navbar-close-buttons paragraph, which AdamXweb#190 rewrites. Editing
either here would collide with those branches.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
AdamXweb pushed a commit that referenced this pull request Aug 15, 2026
* docs: fix what was wrong in the README, keep what worked

Replaces the wholesale rewrite this branch used to carry. The existing
structure and voice are fine; five things in it were not.

The "Optimal experience" screenshot was a private-user-images URL whose
signed token expired in December 2024, so the flagship image of the
recommended setup has been rendering as a broken image ever since. It is
now a file in the repo, rendered from the exact flag set the paragraph
above it recommends -- install.sh -c -n -s -e -p, with the new tab button
moved into the toolbar -- so it cannot expire again and it matches what
the text claims.

Adds a "Try it without installing" section: fxcss try opens a throwaway
Firefox with the theme applied and leaves the reader's own profile alone,
which is a smaller ask than running an installer. Placed before
Installation for that reason. The --with names are the custom/ file
stems, checked against how fxcss resolves them.

Adds a pointer to vinceliuice's Firefox theme for Linux readers, which is
where the recurring Linux requests should go, and fixes three typos:
foder, extentions, teminal.

Deliberately untouched: the -w flag description, which #138 corrects, and
the swap-navbar-close-buttons paragraph, which #190 rewrites. Editing
either here would collide with those branches.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* docs: fxcss install is the default install path, on every OS

The bash script demotes to an alternative for macOS & Linux; Windows
users get a real installer instead of a wished-for port of it, which
is what #27 asked for.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* docs: the fxcss installer lands in 0.13, not 0.12

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* docs: say which OSes fxcss installs on, and fix the macOS-only pipx hint

The install section claimed macOS/Windows/Linux in passing; now it says
what that means — profile discovery via profiles.ini exactly as Firefox
does it, including snap and flatpak on Linux, FXCSS_PROFILE_ROOTS for
unusual setups, and asking rather than guessing when several Firefoxes
have profiles (verified against fxcss 0.13.0's install.py). The pipx
bootstrap hint was brew-only under a three-OS heading, and the Linux
paragraph read as contradicting the install section; both reworded.

* Update README.md
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.

[BUG] windows-swapclose.css doesn't change macOS icons to windows icons

1 participant