Skip to main content

max / balanced_breakfast

bookmarks: replace pushpin emoji pin with geometric star glyphs The reading-list pin control used the pushpin emoji (no-emoji brand violation) and rendered the identical glyph whether pinned or not (state read only from color). Now uses the filled/hollow star glyphs items.js already uses: filled = pinned, hollow = unpinned. Matches the .star-btn vocabulary the button carries, differentiates state by shape, and drops the emoji. aria-label now reflects state ("Pin to top" / "Unpin from top"). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-12 18:30 UTC
Commit: 0bc62d02e754b9b8b591d07deb86433256b777a8
Parent: d521de6
1 file changed, +4 insertions, -2 deletions
@@ -58,8 +58,10 @@
58 58 controls.className = 'article-controls';
59 59 const pin = document.createElement('button');
60 60 pin.className = 'star-btn' + (bm.isPinned ? ' starred' : '');
61 - pin.setAttribute('aria-label', 'Toggle pin');
62 - pin.textContent = '\u{1F4CC}';
61 + pin.setAttribute('aria-label', bm.isPinned ? 'Unpin from top' : 'Pin to top');
62 + // Geometric star glyphs (not emoji): filled = pinned, hollow = not.
63 + // Matches the .star-btn vocabulary; no-emoji brand rule.
64 + pin.textContent = bm.isPinned ? '★' : '☆';
63 65 pin.onclick = (e) => { e.stopPropagation(); togglePin(bm.id, bm.isPinned); };
64 66 controls.appendChild(pin);
65 67