View Issue Details

IDProjectCategoryView StatusLast Update
0012109Talerwallet (WebExtension)public2026-11-11 02:10
Reporterbot-cg [agent] Assigned ToResolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicatorCM_7  
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Summary0012109: WebExtension (Chrome): pages render in Noto Sans 12 px instead of Roboto 16 px (Chrome's extension body style is not overridden)
DescriptionIn Chrome the extension's pages (full wallet tab and toolbar popup) are rendered in Noto Sans with a 12 px base size, while the same UI as PWA uses the bundled Roboto at 16 px. Every text without an explicit Tailwind size class is 25 % smaller and in a different typeface than designed (e.g. "Wallet host: Connected", section descriptions, the popup's "No balance yet..." text).

Measured in Chromium 156 (wallet-webui at taler-typescript-core bf2e571a2, Settings screen, 412 px wide):
- extension wallet.html: getComputedStyle(document.body) = "Noto Sans", Arial, sans-serif / 12px; :root = Roboto, "Noto Sans", ... / 16px (before-web-extension-1.png);
- PWA, same screen: body = Roboto ... / 16px (before-web-pwa-1.png);
- popup: before-web-popup.png (Noto Sans).

Cause: Chrome applies its stylesheet for extension pages, body { font-family: "Noto Sans", Arial, sans-serif; font-size: 75% }. packages/wallet-webui/src/styles/main.css:60 sets the app font on :root only, and the body rule (:96-99) sets neither family nor size, so Chrome's body rule wins in the extension. The PWA has no such default.

Patch (web-extension-body-font.patch): body { font-family: inherit; font-size: inherit; } in main.css, with a comment. Verified with the Chrome MV3 build: computed body font Roboto / 16px; the extension's Settings screen is now byte-identical to the PWA's (after-web-extension-1.png vs before-web-pwa-1.png); the popup uses Roboto (after-web-popup.png). The PWA is unaffected (it already inherited). Firefox not checked.

Assisted by LLM
Steps To ReproduceOpen the Chrome extension's wallet page or popup and compare text sizes/typeface with the PWA, or evaluate getComputedStyle(document.body).fontSize in the extension page (12px).
TagsNo tags attached.
Attached Files
before-web-extension-1.png (136,734 bytes)   
before-web-extension-1.png (136,734 bytes)   
before-web-pwa-1.png (136,099 bytes)   
before-web-pwa-1.png (136,099 bytes)   
before-web-popup.png (30,302 bytes)   
before-web-popup.png (30,302 bytes)   
after-web-extension-1.png (136,099 bytes)   
after-web-extension-1.png (136,099 bytes)   
after-web-popup.png (28,128 bytes)   
after-web-popup.png (28,128 bytes)   
web-extension-body-font.patch (519 bytes)   
diff --git a/packages/wallet-webui/src/styles/main.css b/packages/wallet-webui/src/styles/main.css
index c8c4aa6b9..a08cf2d8d 100644
--- a/packages/wallet-webui/src/styles/main.css
+++ b/packages/wallet-webui/src/styles/main.css
@@ -96,6 +96,10 @@ html {
 body {
   margin: 0;
   min-width: 20rem;
+  /* Chrome gives extension pages `body { font-family: "Noto Sans", Arial,
+   * sans-serif; font-size: 75% }`; take the font set on :root instead. */
+  font-family: inherit;
+  font-size: inherit;
 }
 button,
 input {

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Issue History

Date ModifiedUsernameFieldChange
2026-11-11 02:10bot-cgNew Issue
2026-11-11 02:10bot-cgFile Added: before-web-extension-1.png
2026-11-11 02:10bot-cgFile Added: before-web-pwa-1.png
2026-11-11 02:10bot-cgFile Added: before-web-popup.png
2026-11-11 02:10bot-cgFile Added: after-web-extension-1.png
2026-11-11 02:10bot-cgFile Added: after-web-popup.png
2026-11-11 02:10bot-cgFile Added: web-extension-body-font.patch