fix(presentatie): editor volgt de presenter naar de eind-dia (#1111) #1116
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1116
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/present-exit-restore-slide-1111"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Wat
Na het verlaten van een presentatie (Escape) sprong de editor terug naar de dia
waar de presentatie startte, niet naar de dia die op dat moment in beeld was.
Wie tijdens het presenteren op een bepaalde dia stopt, doet dat meestal met een
reden (daar iets nakijken of aanpassen) en wil op díe dia verder. De editor
selecteert nu de dia waar je stopte.
Closes #1111.
Hoe
lib/widgets/presentation/fullscreen_presenter.dart—present/show/showDualScreengeven nuFuture<String?>terug: het bron-dia-id van dedia die bij het afsluiten in beeld was.
_exit()popt de route met dat id.Via het id en niet de rauwe render-index, want een lange bevinding klapt uit
tot meerdere render-pagina's met hetzelfde id (
expandFindingsForRender) —render-index ≠ bron-dia-index.
lib/widgets/presentation/parts/presenter_navigation.dart— de eind-id-berekening staat top-level (
_exitSlideId) i.p.v. in de state-klasse, zodat_FullscreenPresenterStateniet onder zijn klasseplafond (3311) uit groeit.lib/widgets/shell/shell_actions_present.dart— de launcher leest het id uitpresenting.then(...)en mapt het terug op de bron-dia (select). Een leegdeck of een tijdens het presenteren verwijderde dia (id niet meer te vinden)
laat de selectie ongemoeid.
Toetsen
Drie regressietests in
test/shell_present_and_close_test.dart, alle drie eerstrood tegen de ónherstelde code (
+0 -3), daarna groen:presentatie, dus render-index 1 = bron-index 2; de id-mapping hoort naar de
bron-dia te wijzen, niet naar de overgeslagen dia.
pagina's; stoppen op pagina twee mapt terug op de éne bron-bevinding.
Bewaker
Bewust overgeslagen: deze wijziging raakt het bestandsformaat, de opslag, een
afhankelijkheid, uitgaand verkeer noch een sleutel. De eindpositie is een
vluchtige UI-selectie — er komt niets extra in de
.md. De docs-aanpassingbeschrijft alleen het herstelde gedrag, geen nieuwe belofte die de gebruiker
vastzet.
Poort
make check-fullgroen op de rebasede tak (op verseorigin/main): format,analyze (
--fatal-infos), conventies (bestands- en klasseplafonds binnen deceilings), 8000+ tests met coverage boven de vloer, gitleaks + trufflehog
(secrets) en semgrep (SAST). DAST/ZAP niet gedraaid (niet ingericht in deze
repo; de wijziging raakt geen geserveerd oppervlak).