source: Klonkt/CHANGELOG.md@ b12e20d

main
Last change on this file since b12e20d was b12e20d, checked in by roboburr <roboburr@…>, 3 months ago

feat(editor): edit content as a fullscreen "page" with back button + Done

On touch: content inline = post-like preview (not typeable). Tap →
fullscreen writing page that pushes a history state, so browser back and
a clear "✓ Done" button close it and return to the form (same DOM → all
fields intact). Saving still uses the regular Save button. popstate closes
fullscreen; URL unchanged → the global nav popstate ignores it.

Co-Authored-By: Claude <noreply@…>

  • Property mode set to 100644
File size: 7.2 KB
Line 
1# Wijzigingen — Klonkt
2
3Alle noemenswaardige wijzigingen aan Klonkt. Nieuwste bovenaan.
4Versies volgen [SemVer](https://semver.org/lang/nl/) (`1.0.0-beta.N` tijdens de beta).
5
6> **Twee losse versienummers — niet verwarren:**
7> - **App-versie** (deze changelog + footer, `package.json`) = cosmetisch; bump elke release.
8> - **Federatie-proto** (`KLONKT_PROTO` in `CircleFederation.js`, nu **2**) = bepaalt of
9> Klonkt-sites in elkaars **cirkel** kunnen federeren (zit in de getekende grondslag).
10> Een app-versie-bump verandert de proto **niet** en breekt cirkels dus niet. Bump de
11> proto **alleen** bij federatie-/security-wijzigingen, en rol die dan in **lockstep**
12> uit naar álle instances (incl. de democirkels) zodat ze blijven samenwerken.
13
14## [Unreleased]
15
16### Opgelost
17- Kon niet scrollen op de bewerk-pagina: de fullscreen scroll-lock (overflow:hidden
18 op html/body) bleef hangen. Lock verwijderd — het fullscreen-frame dekt de pagina
19 al af en op touch zijn de scrollbalken verborgen.
20- Fullscreen verlaten scrolt nu naar de top van de content (i.p.v. door te springen
21 naar de footer).
22- "Tik om te bewerken"-aanwijzing op touch is nu een pill die sticky onderaan de
23 container plakt (boven de Opslaan-balk) i.p.v. lelijk gecentreerd in de tekst.
24- Scrollbalken verborgen op mobiel & tablet (touch) — scrollen blijft werken,
25 alleen de balk-UI is weg (geen verwarrende/dubbele balken).
26- Fullscreen-editor: geen dubbele scrollbalk meer — in fullscreen scrollt alléén
27 het tekstveld; het frame en de pagina (html+body) erachter zijn vergrendeld.
28- Editor: het beeld verspringt niet meer bij het aanklikken van een opmaakknop.
29 Op mobiel is het schrijfveld nu een begrensde scroll-box met de opmaak-toolbar
30 STICKY bovenin: de tekst scrollt eronder, de toolbar blijft altijd in beeld, en
31 de caret-scroll die mobiel Chrome forceert blijft binnen de box i.p.v. de hele
32 pagina te laten verspringen. (Plus: scrollpositie wordt vastgehouden rond elk
33 opmaak-commando.) `interactive-widget=resizes-content` weer verwijderd — dat liet
34 de pagina omhoog scrollen voor het toetsenbord en brak de kb-open-detectie; de
35 actiebalk + fullscreen regelen het toetsenbord via de visual viewport.
36- Post-editor op mobiel: de Opslaan/Annuleren-balk blijft nu net bóven het
37 toetsenbord (sticky met dynamische bottom-offset = max van toetsenbord- en
38 audiospeler-hoogte), i.p.v. erachter te vallen of midden in beeld te zweven.
39 Viewport schaalt mee met het toetsenbord (`interactive-widget=resizes-content`).
40- Mobiel toetsenbord vs. layout (site-breed): zodra het toetsenbord opent tijdens
41 het typen, verbergen de vaste onderbalken (bottom-tab + mini-speler) zich, zodat
42 ze niet meer over het invoerveld zweven of het overlappen. Ze komen terug zodra
43 het toetsenbord sluit. (Detectie via visualViewport → `body.kb-open`.)
44- Post bewerken op mobiel opende niet meer meteen het toetsenbord: de titel kreeg
45 niet langer automatisch focus (`autofocus` weg). Op desktop focust de titel nog wel.
46- Posts schrijven op mobiel: een opmaakknop (vet/cursief/…) stal de focus uit het
47 tekstveld → de selectie ging verloren (vet kon niet meer uitgezet worden) en de
48 pagina sprong naar beneden. De toolbar houdt de focus nu in de editor
49 (mousedown-preventDefault + focus zonder scroll), dus toggelen werkt en er is geen
50 sprong meer. Toolbar-taps zijn ook sneller (touch-action: manipulation). Actieve
51 opmaak is nu duidelijk gevuld met de accentkleur (en :hover plakt niet meer op
52 touch), zodat zichtbaar is of bv. vet aan of uit staat.
53
54### Toegevoegd
55- Tekstvelden (`<textarea>`) groeien nu site-breed mee met de inhoud i.p.v. intern
56 te scrollen (scroll-binnen-scroll was verwarrend). Het inline schrijfveld groeit
57 ook gewoon mee; typen op mobiel/tablet gaat sowieso fullscreen.
58- Op **mobiel & tablet** (touch) gedraagt de inhoud zich als een post: inline is het
59 **niet typbaar** (tap-vlak met "✎ Tik om te bewerken"-pill). Eén tik opent een
60 **fullscreen schrijf-"pagina"** — met echte back-knop-ondersteuning, dus de
61 browser-back of de **"✓ Klaar"-knop** sluit 'm en je staat terug in het formulier
62 (alle velden intact), waarna je alles samen opslaat met de gewone Opslaan-knop.
63- Schrijfvenster kan op **volledig scherm** (knop in de editor-toolbar, of Escape om
64 terug te gaan) — fijn voor afleidingsvrij schrijven op mobiel. De opmaak-toolbar
65 blijft daarbij altijd bovenaan in beeld, ook als het mobiele toetsenbord opent
66 (frame volgt de visual viewport).
67- Beheerder kan z'n **Google-account koppelen** (Account → Inloggen met Google) en
68 daarna óók met Google inloggen. Veilig: koppelen kan alleen terwijl je met
69 wachtwoord bent ingelogd, en Google-login geeft alleen beheer als de exacte
70 gekoppelde Google-account (`google_sub`) matcht. Ontkoppelen kan zolang er een
71 wachtwoord is.
72- Posts liken / favorieten: ingelogde gebruikers kunnen een post liken met een ♥-knop
73 (toont het aantal likes). Je gelikete posts staan op de nieuwe **Favorieten**-pagina
74 (`/favorieten`, link in het accountmenu). Niet-ingelogd → de knop leidt naar de login.
75
76### Gewijzigd
77- Post-navigatie (Newer/Older) toont nu een 📌 als de gelinkte post vastgepind is.
78- De Newer/Older-postnavigatie staat nu óók op de fan-gate (login-wall van een
79 fan-only post), zodat een bezoeker niet vastloopt maar verder kan bladeren.
80 Nav verhuisd naar een gedeeld partial (`partials/post-nav.ejs`).
81- Login gesplitst: de publieke loginpagina (`/auth/login`) toont voor bezoekers nu
82 **alleen** Google-login (luisteraars/fans). De beheerders-login (gebruikersnaam +
83 wachtwoord) staat verborgen op `/auth/admin` (nergens gelinkt).
84- Post-navigatie (Newer/Older) houdt nu op elke post dezelfde twee-kaarten-structuur:
85 ontbreekt er een nieuwere/oudere post, dan staat er een subtiele uitgegrijsde
86 placeholder ("Nieuwste post" / "Oudste post") i.p.v. een lege plek.
87- Bij het openen van een gerelateerde/volgende post spring je nu naar boven van de
88 pagina (was: je bleef op de oude scrollpositie hangen).
89
90## [1.0.0-beta.2] — 2026-06-19
91
92Eerste release waarbij we de versie actief bijhouden (zichtbaar in de footer →
93klik erop voor deze pagina). Federatie-proto: **2** (ongewijzigd).
94
95### Toegevoegd
96- Release-tracking: versienummer in de footer linkt naar deze wijzigingen-pagina.
97- Acht premium-functies (Patreon-gegate): nieuwsbrief/mailinglijst, download-voor-email,
98 release-planning + fan-only previews, EPK/perskit, pro-statistieken, link-in-bio +
99 klikstats, inbedbare speler, en show-agenda + notify-me.
100- Nieuwsbrief-aanmeldveld in de footer (aan/uit in Beheer → Instellingen).
101- SMTP-instellingen instelbaar in Beheer → Instellingen (geen `.env`-edit meer nodig),
102 met testmail-knop.
103
104### Gewijzigd
105- Beheer → Instellingen: Hub- en Cirkel-config staan nu direct onder de Modus-kaart;
106 forms netter (gestapelde labels, full-width inputs).
107- EPK/perskit toont de top 10 meest beluisterde nummers.
108- Nettere 404-pagina (mobielvriendelijk) en duidelijkere login-foutmeldingen.
109
110### Opgelost
111- Site-brede audiospeler kreeg geen tracks (verkeerde kolom in de query).
112- Knoptekst werd onleesbaar bij hover (zelfde kleur als de knop).
113- Datumkiezers volgen nu het thema.
114- htmx-navigatie werkt de adresbalk weer bij; geen dubbele kop bij terug/vooruit.
Note: See TracBrowser for help on using the repository browser.