fix(instellingen): app-thema's aanmaken en verwijderen luisteren naar Annuleren (#760) #762

Merged
brenno merged 1 commit from fix/appthema-annuleren-760 into main 2026-07-23 16:17:34 +00:00
Owner

Closes #760, route A.

De + en de prullenbak naast de themakiezer schreven rechtstreeks naar de provider en naar schijf, terwijl alles eronder pas bij Opslaan telt — één rij, twee soorten gedrag, en een Annuleren-knop die maar de helft terugdraaide. Verwijderen was in één klik definitief, en de terugval was de hardgecodeerde 'Europa' terwijl de dialoog 'Basic' koos (bevinding 3).

  • Beide knoppen bewerken nu de werkkopie (_appearanceProfiles in de dialoogstatus) en landen in één keer via de nieuwe setAppAppearanceProfiles; de vier losse schrijfwegen (create/save/delete/select) zijn verwijderd.
  • Verwijderen valt terug op het thema dat actief was toen het venster openging; wisselen en kopiëren vouwen de lopende bewerking eerst terug in de werkkopie (_syncAppearanceEdits), zodat er onderweg niets stil verloren gaat.
  • De provider blijft de laatste poort: ingebouwde thema's komen altijd uit de eigen staat, namen worden bij het landen nog eens uniek gemaakt, en een onbekende selectie valt terug op een bestaand thema.
  • Zes regressietests (settings_appearance_profiles_test.dart); de vier die de fout dragen zijn eerst rood gezien tegen de oude code, de twee andere zijn de tegenproef. De providertests zijn omgezet naar de nieuwe API.

Bewaker overgeslagen — geen bestandsformaat, opslagcontract, afhankelijkheid, uitgaand verkeer of publieke belofte geraakt; dit is het bestaande Opslaan/Annuleren-contract dat wordt nagekomen.

Poort: make check groen, check-secrets en sast schoon.

🤖 Generated with Claude Code

Closes #760, route A. De + en de prullenbak naast de themakiezer schreven rechtstreeks naar de provider en naar schijf, terwijl alles eronder pas bij Opslaan telt — één rij, twee soorten gedrag, en een Annuleren-knop die maar de helft terugdraaide. Verwijderen was in één klik definitief, en de terugval was de hardgecodeerde 'Europa' terwijl de dialoog 'Basic' koos (bevinding 3). - Beide knoppen bewerken nu de werkkopie (_appearanceProfiles in de dialoogstatus) en landen in één keer via de nieuwe setAppAppearanceProfiles; de vier losse schrijfwegen (create/save/delete/select) zijn verwijderd. - Verwijderen valt terug op het thema dat actief was toen het venster openging; wisselen en kopiëren vouwen de lopende bewerking eerst terug in de werkkopie (_syncAppearanceEdits), zodat er onderweg niets stil verloren gaat. - De provider blijft de laatste poort: ingebouwde thema's komen altijd uit de eigen staat, namen worden bij het landen nog eens uniek gemaakt, en een onbekende selectie valt terug op een bestaand thema. - Zes regressietests (settings_appearance_profiles_test.dart); de vier die de fout dragen zijn eerst rood gezien tegen de oude code, de twee andere zijn de tegenproef. De providertests zijn omgezet naar de nieuwe API. Bewaker overgeslagen — geen bestandsformaat, opslagcontract, afhankelijkheid, uitgaand verkeer of publieke belofte geraakt; dit is het bestaande Opslaan/Annuleren-contract dat wordt nagekomen. Poort: make check groen, check-secrets en sast schoon. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Route A uit het issue. De + en de prullenbak schreven rechtstreeks naar
de provider en naar schijf, terwijl de acht kleurvelden eronder het
Opslaan/Annuleren-contract volgen — één rij, twee soorten gedrag, en
verwijderen was in één klik definitief. Beide knoppen bewerken nu de
werkkopie (_appearanceProfiles) en landen in één keer via
setAppAppearanceProfiles; de vier losse schrijfwegen zijn weg.

Verwijderen valt terug op het thema dat actief was toen het venster
openging in plaats van de hardgecodeerde 'Europa' die niet klopte met de
'Basic' die de dialoog koos (bevinding 3). Wisselen en kopiëren vouwen
de lopende bewerking eerst terug in de werkkopie, zodat er onderweg
niets stil verloren gaat.

Zes regressietests; de vier die de fout dragen eerst rood gezien.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
brenno merged commit 5a737742cd into main 2026-07-23 16:17:34 +00:00
Sign in to join this conversation.
No description provided.