Skip to content

Add Google Reader theme#601

Merged
akirk merged 26 commits intomainfrom
theme-google-reader
Mar 24, 2026
Merged

Add Google Reader theme#601
akirk merged 26 commits intomainfrom
theme-google-reader

Conversation

@akirk
Copy link
Copy Markdown
Owner

@akirk akirk commented Mar 24, 2026

This adds a Google Reader-inspired theme to the Friends page theme selector. It's a standalone CSS theme that doesn't depend on the Spectre framework — it provides its own styles for all the structural classes used by the templates.

Screenshot 2026-03-24 at 13-59-26 Friends Screenshot 2026-03-24 at 13-59-17 Friends Screenshot 2026-03-24 at 14-01-33 Friends Screenshot 2026-03-24 at 14 01 53

The theme uses light-dark() for all colors so dark mode works automatically via color-scheme: light dark without a separate media query block.

Posts start collapsed in a compact list view (author + title + teaser on one line). Clicking or pressing j/k expands items in an accordion style — only one item is open at a time.

Keyboard shortcuts (press ? to see them)

Key Action
j / k Next / previous item (expands)
n / p Next / previous without opening
space / shift-space Page down / up
o / enter Toggle open / close
s Toggle ⭐ reaction
v Open original in new tab
u Toggle sidebar
? Show shortcuts help

Other changes

  • Extracted the default theme's collapse/expand JS from friends.js into friends-default-theme.js so themes don't compete for click handlers
  • Google Reader theme has its own accordion JS in google-reader.js
  • Click on collapsed post-meta links expands instead of navigating
  • Follow button on boosted posts hidden by default, shown on hover

akirk added 22 commits March 24, 2026 13:35
A nostalgic theme inspired by the classic Google Reader interface:

- Clean, list-based layout with minimal chrome
- Blue header bar with tag-style chips
- Red "Friends" branding in sidebar
- Simple typography (Arial, 13px base)
- Compact post items with hover highlights
- Inline reaction buttons and action links
- Blue comment threading indicator
- Dark mode support via prefers-color-scheme
- Overrides content templates for the list-item style

Select under Friends > Settings > Theme.
- Posts start collapsed showing author + title on one line
- Clicking a post expands it (shows content, footer, reactions)
- Expanded post gets a subtle background highlight
- Override index template to always use collapsed mode
- CSS uses existing collapsed/uncollapsed class mechanism from JS
j/k     - navigate next/previous item
o/Enter - expand/collapse current item
s       - star current item (navigates to author page)
v       - open original link in new tab
r       - refresh feeds

Current item gets a blue outline highlight. Click also sets current.
- j/k now expands the focused item and collapses the previous one
- Remove visited link color distinction (Google Reader didn't have it)
- Make all chips the same color in both light and dark mode
- Better contrast for dark mode chips (light gray instead of blue)
- Replace all hardcoded color values with light-dark() CSS function
- Remove redundant @media (prefers-color-scheme: dark) section
- Fix j/k navigation to directly toggle uncollapsed class instead
  of simulating clicks (which didn't work for collapsing)
- Consistent chip colors (no more blue/purple mix)
- No visited link color distinction
Clicking a post in Google Reader mode now collapses all other
expanded posts and only expands the clicked one, matching the
j/k keyboard navigation behavior.
Move the collapse/expand, toggle-compact, and double-click handlers
from friends.js into friends-default-theme.js, enqueued only for
the default theme. Google Reader theme has its own accordion behavior
in google-reader.js (collapse all others on click/navigate).

This prevents the two themes' click handlers from competing.
- j/k: next/previous item (expands)
- n/p: next/previous item (without expanding)
- space/shift-space: page down/up, or next item at bottom
- o/enter: toggle open/close current item
- s: navigate to author page (star)
- v: open original in new tab
- u: toggle sidebar visibility
- ?: show keyboard shortcuts help overlay
@github-actions
Copy link
Copy Markdown
Contributor

Test this PR in WordPress Playground

You can test this pull request directly in WordPress Playground:

Launch WordPress Playground

This will install and activate the plugin with the changes from this PR.

akirk added 4 commits March 24, 2026 13:40
Friends > Theme shows a fly-out submenu listing all available themes
with a checkmark on the current one. Clicking switches via GET
parameter and saves the preference. Uses add_group as child of the
Theme node so WordPress renders the ab-sub-wrapper for the fly-out.
@akirk akirk merged commit e6cd0e5 into main Mar 24, 2026
25 checks passed
@akirk akirk deleted the theme-google-reader branch March 24, 2026 13:04
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