Skip to content

Post-merge polish: row upvote, tappable usernames, URL-above-title, reader links, feed header collapse#18

Open
gingerbeardman wants to merge 6 commits into
DatanoiseTV:mainfrom
gingerbeardman:feature/post-merge-polish
Open

Post-merge polish: row upvote, tappable usernames, URL-above-title, reader links, feed header collapse#18
gingerbeardman wants to merge 6 commits into
DatanoiseTV:mainfrom
gingerbeardman:feature/post-merge-polish

Conversation

@gingerbeardman

@gingerbeardman gingerbeardman commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Follow-up tidy-up after the account-support merge (#13). Six self-contained commits:

  • Add one-tap upvote to story rows; hide it on your own posts. Points become a tappable upvote when signed in, with an optimistic count bump and a web fallback if rejected. HN renders no vote arrow on your own posts, so the affordance is hidden there (rows, discussion header, comments) instead of failing into the web view — fixing a "upvoting my own post opens the web view" bug.
  • Make usernames tappable to open author profiles from feed, saved, and search rows (plain Button so the row still opens the story). Meta row drops the bullet separator; host becomes a shortcut to the article.
  • Add a "Show URL Above Title" display option — classic HN layout, surfaced in Settings and on the onboarding "Tuned for you" step (live preview reflects it).
  • Honour reader mode for inline comment/text links, and rename the setting to "Open Links in Reader Mode".
  • Collapse the feed header as you scroll — wordmark fades/lifts, picker eases up at half rate, nav bar collapses to reclaim the space.
  • Update the app icon.

Story rows now show the points as a tappable upvote when signed in,
with an optimistic count bump persisted via VoteStore and a web-view
fallback if the native vote is rejected. HN renders no vote arrow on
your own posts, so the affordance is hidden there (in feed rows and in
the discussion header/comments) rather than failing into the web view.
Story rows take an optional onSelectUser closure: feed, saved, and
search pass one that pushes the author's profile, so tapping the
username opens it while the rest of the row still opens the story. The
meta row drops the bullet separator so author and time read like the
other meta items, and the host becomes a shortcut to the article.
New opt-in setting that places the source host above the headline
(classic HN layout) instead of beneath it, shrinking the rank to match
and sharing the first line. Surfaced in Settings and on the onboarding
"Tuned for you" step, where the live preview reflects it too.
Inline comment/text links now open in Safari Reader when the Reader
Mode setting is on, matching how story articles already open. Renames
the setting to "Open Links in Reader Mode" to reflect that it covers
every in-app link, not only those Reader happens to support.
The Ember wordmark fades and lifts while the feed picker eases up at
half rate; once the wordmark is gone the nav bar collapses to reclaim
its space, deriving the real bar height from the scroll-view inset so
the list doesn't jump on first use. A wide hide/show gap prevents the
toggle from flapping at the threshold.
@gingerbeardman
gingerbeardman force-pushed the feature/post-merge-polish branch from 3b5c4d6 to 6647d27 Compare June 23, 2026 12:05
@DatanoiseTV

Copy link
Copy Markdown
Owner

Automated triage notes (maintainer will do the formal review):

  • No tests in the diff. Consider adding unit tests for the upvote action (StoryRow) or the SettingsStore additions, or note in the PR body what you tested manually on device.

@DatanoiseTV

Copy link
Copy Markdown
Owner

Lets see what we do about the logo. It really looks tinderish.

@gingerbeardman

Copy link
Copy Markdown
Contributor Author

I'll have a think on the logo.

I'm using my fork of this daily and is yet to let me down.

I've added several more features in my fork (comment skip, refresh stale, more UI tweaks)

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.

2 participants