source: Klonkt/CHANGELOG.md@ 859bace0

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

fix(editor): mobile writing field as bounded box with internal scroll

The field grew with the text → the whole page scrolled to the caret on a
formatting command. On mobile now min-height 240 / max-height 62vh +
overflow auto: caret scroll stays within the box, the page does not jump,
and the toolbar sits sticky above it. Fullscreen resets max-height to none
(fills the page).

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

  • Property mode set to 100644
File size: 5.5 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- Editor: het beeld verspringt niet meer bij het aanklikken van een opmaakknop.
18 Op mobiel heeft het schrijfveld nu een begrensde hoogte met eigen interne scroll
19 (een "box"), zodat de caret-scroll die mobiel Chrome forceert binnen de box blijft
20 i.p.v. de hele pagina te laten verspringen. De toolbar staat sticky erboven.
21 (Plus: scrollpositie wordt vastgehouden rond elk opmaak-commando.)
22- Post-editor op mobiel: de Opslaan/Annuleren-balk blijft nu net bóven het
23 toetsenbord (sticky met dynamische bottom-offset = max van toetsenbord- en
24 audiospeler-hoogte), i.p.v. erachter te vallen of midden in beeld te zweven.
25 Viewport schaalt mee met het toetsenbord (`interactive-widget=resizes-content`).
26- Mobiel toetsenbord vs. layout (site-breed): zodra het toetsenbord opent tijdens
27 het typen, verbergen de vaste onderbalken (bottom-tab + mini-speler) zich, zodat
28 ze niet meer over het invoerveld zweven of het overlappen. Ze komen terug zodra
29 het toetsenbord sluit. (Detectie via visualViewport → `body.kb-open`.)
30- Post bewerken op mobiel opende niet meer meteen het toetsenbord: de titel kreeg
31 niet langer automatisch focus (`autofocus` weg). Op desktop focust de titel nog wel.
32- Posts schrijven op mobiel: een opmaakknop (vet/cursief/…) stal de focus uit het
33 tekstveld → de selectie ging verloren (vet kon niet meer uitgezet worden) en de
34 pagina sprong naar beneden. De toolbar houdt de focus nu in de editor
35 (mousedown-preventDefault + focus zonder scroll), dus toggelen werkt en er is geen
36 sprong meer. Toolbar-taps zijn ook sneller (touch-action: manipulation). Actieve
37 opmaak is nu duidelijk gevuld met de accentkleur (en :hover plakt niet meer op
38 touch), zodat zichtbaar is of bv. vet aan of uit staat.
39
40### Toegevoegd
41- Schrijfvenster kan op **volledig scherm** (knop in de editor-toolbar, of Escape om
42 terug te gaan) — fijn voor afleidingsvrij schrijven op mobiel. De opmaak-toolbar
43 blijft daarbij altijd bovenaan in beeld, ook als het mobiele toetsenbord opent
44 (frame volgt de visual viewport).
45- Beheerder kan z'n **Google-account koppelen** (Account → Inloggen met Google) en
46 daarna óók met Google inloggen. Veilig: koppelen kan alleen terwijl je met
47 wachtwoord bent ingelogd, en Google-login geeft alleen beheer als de exacte
48 gekoppelde Google-account (`google_sub`) matcht. Ontkoppelen kan zolang er een
49 wachtwoord is.
50- Posts liken / favorieten: ingelogde gebruikers kunnen een post liken met een ♥-knop
51 (toont het aantal likes). Je gelikete posts staan op de nieuwe **Favorieten**-pagina
52 (`/favorieten`, link in het accountmenu). Niet-ingelogd → de knop leidt naar de login.
53
54### Gewijzigd
55- Post-navigatie (Newer/Older) toont nu een 📌 als de gelinkte post vastgepind is.
56- De Newer/Older-postnavigatie staat nu óók op de fan-gate (login-wall van een
57 fan-only post), zodat een bezoeker niet vastloopt maar verder kan bladeren.
58 Nav verhuisd naar een gedeeld partial (`partials/post-nav.ejs`).
59- Login gesplitst: de publieke loginpagina (`/auth/login`) toont voor bezoekers nu
60 **alleen** Google-login (luisteraars/fans). De beheerders-login (gebruikersnaam +
61 wachtwoord) staat verborgen op `/auth/admin` (nergens gelinkt).
62- Post-navigatie (Newer/Older) houdt nu op elke post dezelfde twee-kaarten-structuur:
63 ontbreekt er een nieuwere/oudere post, dan staat er een subtiele uitgegrijsde
64 placeholder ("Nieuwste post" / "Oudste post") i.p.v. een lege plek.
65- Bij het openen van een gerelateerde/volgende post spring je nu naar boven van de
66 pagina (was: je bleef op de oude scrollpositie hangen).
67
68## [1.0.0-beta.2] — 2026-06-19
69
70Eerste release waarbij we de versie actief bijhouden (zichtbaar in de footer →
71klik erop voor deze pagina). Federatie-proto: **2** (ongewijzigd).
72
73### Toegevoegd
74- Release-tracking: versienummer in de footer linkt naar deze wijzigingen-pagina.
75- Acht premium-functies (Patreon-gegate): nieuwsbrief/mailinglijst, download-voor-email,
76 release-planning + fan-only previews, EPK/perskit, pro-statistieken, link-in-bio +
77 klikstats, inbedbare speler, en show-agenda + notify-me.
78- Nieuwsbrief-aanmeldveld in de footer (aan/uit in Beheer → Instellingen).
79- SMTP-instellingen instelbaar in Beheer → Instellingen (geen `.env`-edit meer nodig),
80 met testmail-knop.
81
82### Gewijzigd
83- Beheer → Instellingen: Hub- en Cirkel-config staan nu direct onder de Modus-kaart;
84 forms netter (gestapelde labels, full-width inputs).
85- EPK/perskit toont de top 10 meest beluisterde nummers.
86- Nettere 404-pagina (mobielvriendelijk) en duidelijkere login-foutmeldingen.
87
88### Opgelost
89- Site-brede audiospeler kreeg geen tracks (verkeerde kolom in de query).
90- Knoptekst werd onleesbaar bij hover (zelfde kleur als de knop).
91- Datumkiezers volgen nu het thema.
92- htmx-navigatie werkt de adresbalk weer bij; geen dubbele kop bij terug/vooruit.
Note: See TracBrowser for help on using the repository browser.