Django internet radio player
Find a file
marwin d3c435dd59
All checks were successful
Build and push Docker image / build (push) Successful in 15s
Test / test (push) Successful in 15s
Reader: Notizen auf Mobile schnell setzbar statt über Randspalte (SW v32)
Auf schmalen Screens saß der Marker-Modus-Button bisher nur in der 150px-
Randspalte — man musste sie erst öffnen (und damit den ohnehin knappen
Lesebereich verkleinern), um überhaupt markieren zu können. Jetzt zusätzlich
ein Marker-Button direkt im Haupt-Header (nur <=600px sichtbar, Desktop
bleibt bei der bisherigen Anordnung in der Notes-Leiste).

Im Marker-Modus legt ein einfacher Tap auf reinen Lesetext (ohne Auswahl)
jetzt direkt eine freie Notiz an der Wortposition an — man muss nicht mehr
den exakten Klick-Punkt in der Randspalte treffen. Das Bearbeiten der
Notiz läuft auf schmalen Viewports über ein neues Bottom-Sheet (volle
Breite) statt über das Inline-Textfeld in der 150px-Spalte, das auf dem
Handy-Keyboard unangenehm zu bedienen ist.

Notiz-Objekte werden jetzt erst bei tatsächlich eingegebenem Text angelegt
und gespeichert (vorher: sofort beim Setzen des Ankers) — verhindert, dass
ein abgebrochener/leerer Tap eine Ghost-Notiz in currentHighlights
hinterlässt. Gilt für alle Eingabewege (Bottom-Sheet UND die bestehende
Inline-Randspalten-Bearbeitung), per Playwright verifiziert inkl. Escape-
Cancel auf Desktop.

Priorität laut Nutzer: Notizen-Erfassung muss auf Mobile gut funktionieren;
dass bestehende Notizen dort weniger prominent sichtbar sind, ist explizit
in Ordnung — die vertiefte Auseinandersetzung mit Notizen bleibt eine
Desktop-Aufgabe.

Verifiziert per Playwright (390×844 mobil + 1280×900 Desktop-Regression):
Marker-Button-Sichtbarkeit, Bottom-Sheet-Flow (Erstellen/Abbrechen/Speichern,
kein Ghost-Eintrag), reale Text-Selektion + Highlight+Notiz weiterhin
funktionsfähig auf Mobile, Desktop-Workflow (Randspalte, Inline-Editor,
Escape-Cancel, Blur-Commit) unverändert.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-04 20:13:55 +02:00
.forgejo/workflows Show build time in bottom-right corner 2026-03-19 21:35:41 +01:00
accounts Accounts: fix password change key migration 2026-05-25 16:46:03 +02:00
books Books: Notizen-Sidebar auto-öffnen, Notizen-Download + Gelesen-Status in Übersicht (SW v29) 2026-08-04 18:10:33 +02:00
diora Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
e2e Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
gpodder Fix gpodder: add update_urls to episode actions POST response 2026-03-28 19:08:46 +01:00
podcasts Centralize remaining magic numbers in settings.py 2026-04-04 21:10:14 +02:00
radio Centralize remaining magic numbers in settings.py 2026-04-04 21:10:14 +02:00
static Reader: Notizen auf Mobile schnell setzbar statt über Randspalte (SW v32) 2026-08-04 20:13:55 +02:00
templates Reader: Notizen auf Mobile schnell setzbar statt über Randspalte (SW v32) 2026-08-04 20:13:55 +02:00
.env.example Initial commit 2026-03-16 19:19:22 +01:00
.gitignore Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
docker-compose.yml Add podcast feature with feed management, Docker cron, and ebook reader assets 2026-03-19 13:39:59 +01:00
Dockerfile Show build time in bottom-right corner 2026-03-19 21:35:41 +01:00
Dockerfile.cron Fix cron container: switch dcron→cron, export env vars for cron jobs 2026-03-20 09:16:29 +01:00
manage.py Initial commit 2026-03-16 19:19:22 +01:00
package-lock.json Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
package.json Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
playwright.config.js Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
requirements.txt Use gevent workers in gunicorn to fix SSE blocking 2026-03-19 19:15:01 +01:00