mirror of
https://github.com/root-fr/jmap-webmail.git
synced 2026-09-23 00:01:13 +00:00
- Delete app/favicon.ico so Next.js renders a single <link rel="icon"> for icon.svg. With two icon links in the DOM, browsers disagreed on which to use: Chrome and Firefox on Linux both picked the *first* one, making the dynamically-appended badge link invisible. - Mutate href on the existing <link> instead of injecting a second one. Firefox only updates the tab icon when the href of the element it already tracks changes — adding new <link> nodes dynamically is ignored. - Simplify image loading: replace fetch → blob → FileReader → Image chain with new Image() + crossOrigin="anonymous". - Fix badge border in Safari 15 fallback: use strokeRect instead of stroke() after fillRect (fillRect does not add to the canvas path).