Skip to content

fix(tabs): render local favicons in color - #248

Closed
zorahrel wants to merge 1 commit into
the-ora:mainfrom
zorahrel:fix/favicon-grayscale
Closed

zorahrel wants to merge 1 commit into
the-ora:mainfrom
zorahrel:fix/favicon-grayscale

Conversation

@zorahrel

Copy link
Copy Markdown
Contributor

Problem

LocalFavIcon applies .grayscale(1.0) to every favicon loaded from disk:

Image(nsImage: image)
    .frame(width: 16, height: 16)
    .cornerRadius(4)
    .grayscale(1.0)   // <-

The AsyncImage path used for remote favicons has no such modifier, so the same site renders in color when fetched from the network and desaturated when restored from the local cache. Since cached icons are what you see on launch and for pinned/favorite tabs, the sidebar ends up mostly gray.

Change

Removes the modifier so both code paths render consistently.

Testing

Built Release on macOS 26.2 and verified favicons in the sidebar keep their colors both on first load and after restart.

LocalFavIcon applies .grayscale(1.0) to every favicon loaded from disk,
so cached favicons always render desaturated while remote ones
(AsyncImage path) keep their colors. The result is inconsistent: the
same site shows a colored icon when loaded from network and a gray one
when restored from cache.

Removing the modifier makes both paths consistent.
@greptile-apps

greptile-apps Bot commented Sep 15, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge with no actionable correctness, security, or repository-rule issues identified.

Summary

This PR makes locally cached favicons render consistently with remotely loaded favicons.

  • Removes forced grayscale rendering from LocalFavIcon.
  • Preserves existing sizing, scaling, corner radius, and fallback-symbol styling.

Reviews (1) · Last reviewed commit: "fix(tabs): render local favicons in colo..."

@zorahrel zorahrel closed this Sep 22, 2026
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.

1 participant