- npm name: trailhead-path-bookmarker (package.json + lockfile)
- electron-builder appId: com.dbeuttel.trailhead-path-bookmarker
- AppUserModelId in main.js matches the new appId
- README title updated; userData path now %APPDATA%\Trailhead Path Bookmarker
Icon generator now emits both sizes:
- assets/tray-icon.png (32x32) for the system tray
- assets/app-icon.png (256x256) for electron-builder's win.icon, which
rejects PNGs smaller than 256
- Popup header: tray icon + "Trailhead Path Bookmarker" title
- HTML <title>, electron-builder productName, and tray tooltip all match
- Popup width budget now also factors in the header's intrinsic width
(icon + title + actions), so the brand never gets ellipsized — measured
via h1 scrollWidth so overflow:hidden doesn't lie about content size
The previous icon was a bare mountain silhouette that didn't read as a
bookmark app at first glance. The new design uses the universal bookmark
ribbon glyph (vertical rectangle with a V-cut at the bottom) as the
primary silhouette and embeds the mountain peak inside it as a contrast
fill. The ribbon shape carries the *function* signal; the inner peak ties
to the Trailhead theme.
- Tray tooltip: "Trailhead Path Bookmarker"
- Popup header: "Trailhead"
- electron-builder productName: "Trailhead"
- New tray icon: orange mountain peak with pennant flag (replaces folder
pictogram). Tuned to 2px-min strokes so it survives downscaling to the
16-24px Windows tray
- Hide scrollbars across all scroll surfaces (popup, columns row, tab
strip) while keeping scroll behavior intact
The tab strip used flex: 1, which stretched it to fill the popup width.
scrollWidth then equaled clientWidth, so each ResizeObserver pass set the
popup wider, which stretched the strip wider, and so on until the screen
clamp. Switching to flex: 0 1 auto + min-width: 0 lets scrollWidth report
intrinsic content width while still allowing the strip to shrink and
scroll horizontally if the popup is forced narrower than its tabs.