Skip to content

Feed source tabs: quote what lands on the tab you are not reading - #1667

Merged
wintermeyer merged 1 commit into
mainfrom
feed-tab-ticker
Aug 24, 2026
Merged

Feed source tabs: quote what lands on the tab you are not reading#1667
wintermeyer merged 1 commit into
mainfrom
feed-tab-ticker

Conversation

@wintermeyer

Copy link
Copy Markdown
Owner

Symptom A post landing on the source tab you are not on marked it with a coral dot and nothing else — not enough to decide whether switching is worth it.

What changed On /feed, the tab bar now quotes the arrival for eight seconds beside its tab: author plus first words, truncated by the bar's width. The tab and the quote share one warm tint for that window, because the tab in question is often not the one next to the quote. On a narrow bar the other tabs fold their labels to zero width so the quote gets the room. Clicking the quote switches to that tab.

The clock runs in the browser (FeedTicker, assets/js/app.js), not on the server: a server-side window would include the trip back, and a lost hide message on a dead line would leave the quote standing. From the second arrival inside a window the quote becomes a count, without restarting the clock. Vutuv.Posts.feed_source_since?/3 became newest_source_entry/3 — same query, it hands the entry back so it can be quoted.

Entry points /feed (VutuvWeb.PostLive.Feed), the shared bar VutuvWeb.PostComponents.post_filter_tabs/1, and /settings/preferencesFeed tabs, where two new preferences (on/off, 4–20 seconds, defaults on/8) sit with an example you can play.

To decide Eight seconds and the five offered lengths are a guess; the settings card exists so members can disagree. The fold rules had to go into the unlayered block in app.css — a tab wears its padding as px-3, which a layered rule cannot take off.

An AI agent wrote this text in my name. I know that is problematic.

https://claude.ai/code/session_01Wj8RsXvfN4iEk8o5buYmk5

Ein Punkt am anderen Quellen-Reiter sagte bisher nur, dass dort etwas
liegt — zu wenig, um zu entscheiden, ob sich ein Wechsel lohnt. Jetzt
reißt die Leiste den Neuzugang acht Sekunden lang an (Absender plus
erste Wörter) und faltet auf schmalen Bildschirmen die übrigen Reiter
weg, damit der Anriss die Breite bekommt; Reiter und Anriss teilen
dabei eine warme Fläche, denn der gemeinte Reiter steht oft nicht
daneben.

Die Uhr läuft im Browser, nicht auf dem Server: eine serverseitige
Uhr zählt die Laufzeit der Nachricht mit, und ein Ausblendbefehl auf
einer toten Leitung ließe den Anriss für immer stehen. Ab dem zweiten
Beitrag im Fenster wird aus dem Zitat eine Zahl, ohne die Uhr neu zu
stellen, sonst gehört die Leiste einer regen Quelle dauerhaft.

Zwei Einstellungen pro Mitglied (an/aus, 4 bis 20 Sekunden) mit einem
abspielbaren Beispiel in der Karte, weil die Wirkung sonst nur auf
einer anderen Seite und sekundenweise zu sehen wäre.

Diesen Text hat ein KI-Agent in meinem Namen geschrieben. Ich weiß,
dass das problematisch ist.
@wintermeyer
wintermeyer merged commit eb5fbb4 into main Aug 24, 2026
1 check passed
@wintermeyer
wintermeyer deleted the feed-tab-ticker branch August 24, 2026 19:37
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