fix(shell): app-brede sneltoets vuurt niet meer door een dialoog heen (#1927) #1933
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!1933
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/single-open-dialog-guard"
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?
Samenvatting
Twee keer snel
Ctrl/Cmd+Oopende twee gestapelde "Presentatie openen"-dialogen; de onderste moest apart weggeklikt worden (#1927).showDialogduwt zijn route synchroon, maar de focusboom verwerkt die wissel pas in de volgende frame — een tweede aanslag binnen dezelfde frame komt dus nog bij de app-brede binding aan. Op macOS telt daar een tweede ingang bij op: de native menubalk draagt dezelfdeCmd-sneltoets.De navigatiegeschiedenis weet meteen wat er bovenop ligt. Alle app-brede bindingen lopen daarom nu langs
_onlyWhenShellIsOnTop: staat er iets boven de shell (een dialoog, de documentatielezer, het presentatiescherm), dan doet de sneltoets niets. Dat geldt voor elke app-brede sneltoets — opslaan, sluiten, zoeken — en niet alleen voor openen, want het is dezelfde frame-race.Gewijzigde bestanden
lib/widgets/app_shell.dart—_onlyWhenShellIsOnTop+ de bindingen naar_appWideShortcuts()(build()liep anders 2 regels over de methodelengte-ratchet)lib/widgets/shell/shell_actions.dart/shell_actions_export.dart— het doccommentaar boven_openWithSearchbeschreef de pakketexport; het bleef achter toen_exportPackageverhuisde, en staat nu weer bij die functiedocs/SHORTCUTS.md— de app-bredeCtrl/Cmd+Wstond er niet in (sinds 0.5.0 gebonden, alleen bij de presentator vermeld), en er stond niets over sneltoetsen met een dialoog ervoorCHANGELOG.md— Unreleased → Fixedtest/bug_1927_double_open_dialog_test.dart— regressietestTestplan
findsOneWidgetmislukte met "Found 2 widgets"make checkgroen (7175 tests, dekkingsvloeren, goldens) — daarna gerebaseerd op verse main enmake check-static+ de shell-tests opnieuw groenmake check-secrets— 0 leaks (gitleaks + trufflehog)make sast— 0 findings (semgrep, lokale regels)Bewaker
Overgeslagen, expliciet: deze wijziging raakt het bestandsformaat niet, de opslag niet, geen afhankelijkheid, geen uitgaand verkeer en geen nieuwe publieke belofte. De documentatiewijziging haalt een bestaande belofte juist in overeenstemming met de code.
🤖 Generated with Claude Code
d93f38864dd07bd3cda4