Skip to content

fix: multiple file selection on tab navigation - #62482

Open
kristian-zendato wants to merge 1 commit into
masterfrom
fix/multiple-file-selection-by-keyboard
Open

fix: multiple file selection on tab navigation#62482
kristian-zendato wants to merge 1 commit into
masterfrom
fix/multiple-file-selection-by-keyboard

Conversation

@kristian-zendato

@kristian-zendato kristian-zendato commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Keyboard-only multi-select in the files list was broken: after selecting a file, focus was trapped between the “select all” checkbox and the batch actions overlay, so Tab/Shift+Tab could not reach file rows again (regression from #58457).

This removes the custom Tab/focusout focus trapping between the select-all checkbox and the first batch action button in FilesListTableHeader.vue and FilesListTableHeaderActions.vue, so focus follows the normal document order and keyboard multi-select works again.

This replaces the table header with Table Header Actions when any file is select to ensure the right tab sequence.

Checklist

AI (if applicable)

  • The content of this PR was partly or fully generated using AI

@kristian-zendato
kristian-zendato requested review from a team and skjnldsv as code owners July 24, 2026 12:23
@kristian-zendato
kristian-zendato requested review from nfebe and sorbaugh and removed request for a team July 24, 2026 12:23
@kristian-zendato
kristian-zendato force-pushed the fix/multiple-file-selection-by-keyboard branch 3 times, most recently from 38556bb to b102334 Compare July 24, 2026 13:18
@susnux susnux added bug 3. to review Waiting for reviews labels Aug 3, 2026
@susnux susnux added this to the Nextcloud 35 milestone Aug 3, 2026
<FilesListTableHeaderActions
:current-view="currentView"
:selected-nodes="selectedNodes" />
</th>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not correct, this is not the table header - the table is still in DOM, so:

  1. the headers do not match the table cells anymore (2 headers but 5 columns)
  2. the table header is not correct it labels the "name" row with invalid content

There are two options to fix it:

  1. Keep this approach but do not remove the proper headers but make them "hidden" and add this "batch" content to the th of the select-all checkbox.
  2. Keep previous overlay approach but allow properly tab outside of the actions

@kristian-zendato
kristian-zendato force-pushed the fix/multiple-file-selection-by-keyboard branch from b102334 to bb70a03 Compare August 4, 2026 04:28
@kristian-zendato
kristian-zendato requested a review from susnux August 4, 2026 04:49
<!-- eslint-disable-next-line vue/singleline-html-element-content-newline -- no space allowed as otherwise `:empty` css selector does not trigger! -->
<template #filters><FileListFilterToSearch /><FileListFilterChips /></template>

<template v-if="!isNoneSelected" #header-overlay>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the header-overlay slot then still used? Otherwise please remove the slot definition as well to prevent dead code piling up :)

Signed-off-by: Kristian Zendato <kristian.zendato@nextcloud.com>
@kristian-zendato
kristian-zendato force-pushed the fix/multiple-file-selection-by-keyboard branch from bb70a03 to 0d309ff Compare August 4, 2026 11:57
@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Hello there,
Thank you so much for taking the time and effort to create a pull request to our Nextcloud project.

We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process.

Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6

Thank you for contributing to Nextcloud and we hope to hear from you soon!

(If you believe you should not receive this message, you can add yourself to the blocklist.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[accessibility] files: cannot select multiple files with keyboard only

2 participants