Skip to content

No way to clear a selection: no Esc, no clear button, no select-all; Upload stays hidden #403

Closed

Description

@BeSovereign

Where: web/src/itemActions.ts:77-96 (onActionKey: Ctrl+A selects all, nothing clears), the selection bar in web/src/components/FolderPane.vue (~820-960: count + actions only), web/src/components/FileList.vue:173-178 (header select cell is a visually hidden label, no checkbox), web/src/styles/app.css:665 (.toolbar-actions { display: none } while a selection exists).

What happens: In a folder of 30 files, press Ctrl+A and the bar shows "30 selected". None of these change it: Esc, Ctrl+A again, a click on the empty area under the list, a click beside the title. Upload, New folder and Upload folder stay hidden. The only ways out are unticking all 30 rows one by one or leaving the folder. "New folder" also selects the folder it creates (FolderPane.vue:401), so right after creating a folder the Upload button is gone until the member unticks the new row. Verified with Playwright at desktop 1280x800, en: after each step .selection-count is "30 selected" and .toolbar-actions is not visible; thead input[type=checkbox] count is 0; there is no clear button in .selection-bar.

Expected: One step clears the selection:

  • Esc on a row or the list, when no menu or dialog is open.
  • A visible "Clear selection" control in the selection bar: a borderless icon button with an aria-label, on the desktop bar and on the phone sheet.
  • The keyboard shortcuts dialog lists "Esc: clear selection".

Fix:

  • In onActionKey, handle Escape with emit.select([]) when the selection is not empty. Menus and dialogs already stop propagation, so they keep working.
  • Add a "Clear selection" button after the count in the selection bar that sets selected.value = [].
  • Add i18n keys in en, de-du and de-sie.

Test (Playwright, e2e/selection-bar.spec.ts, both projects): In a folder with 3 files, Ctrl+A shows "3 selected". Press Escape: the bar is gone and the Upload control is visible again. Select again and click the bar's "Clear selection": the bar is gone. Fails today, because the bar stays at "3 selected".


Found by the automatic review round (claude-opus-5-5, b739414); per CLAUDE.md the fix starts with a failing behaviour test.

Activity

  1. added
    rebuildPart of the ground-up rebuild (spec 2026-10-14)
    qaFound by exploratory QA (dogfooding)
    on Oct 20, 2026
  2. added a commit that references this issue on Oct 20, 2026
  3. BeSovereign commented on Oct 20, 2026

    @BeSovereign
    ContributorAuthor

    Fixed: PR #412 squash-merged into main after green CI (one commit; git revert it to undo).

    • Suites: typecheck: 1 passed, 0 failed | lint: 1 passed, 0 failed | unit: 1187 passed, 0 failed | e2e: 605 passed, 0 failed
    • Declared tests fail without the production change and pass with it (output in the PR).
  4. added a commit that references this issue on Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    qaFound by exploratory QA (dogfooding)rebuildPart of the ground-up rebuild (spec 2026-10-14)

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions