feat(settings): allow resizing the columns of the accounts list - #62066
feat(settings): allow resizing the columns of the accounts list#62066Fantu wants to merge 2 commits into
Conversation
The accounts list columns have a fixed width: long values (display names, emails, LDAP account names, translated quota strings, storage paths) are ellipsised with no way to see or copy them from the list. This is a usability regression from the Nextcloud 28 table rework (nextcloud#39050): until then the columns were fluid and grew with the available space. Add a resize handle to each column header: drag to resize, arrow keys as keyboard alternative, double click to reset. Widths are clamped to sane bounds, applied through per-column CSS variables on the list container so header, rows and footer stay aligned, and persisted in localStorage. Closes nextcloud#43777 Assisted-by: ClaudeCode:claude-fable-5 Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
|
@CarlSchwan thanks for the review. |
Convert the component from Options API (Vue.extend) to script setup, as requested in review. No behavior change: props, emitted events, rendered markup and styles stay the same, and the existing unit tests pass unmodified. The cell width is now read through a template ref on the handle instead of this.$el. Add short JSDoc comments to the extracted functions: the jsdoc/require-jsdoc eslint rule applies to top-level functions in script setup, while it did not to Options API methods. Assisted-by: ClaudeCode:claude-fable-5 Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
|
Hello there, 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.) |
Summary
The accounts list columns have a fixed width since the Nextcloud 28 table rework (#39050): before that the columns were fluid and grew with the available space, since then long values (display names, emails, LDAP account names, translated quota strings, storage paths) are always ellipsised, with no way to see or copy them from the list. As an admin of an LDAP-backed server this bites me regularly: the internal account names are UUIDs and I cannot see or copy them (see also #54072).
This PR adds a resize handle to each column header:
role="separator"with anaria-label)Screenshots
How to test
Notes for reviewers (draft)
/compile) once the approach is settled./settings/users/preferences/*, ConfigLexicon), or is localStorage fine here given that pixel widths are display dependent (a width that fits an external monitor may not fit a laptop)?aria-valuenowon the separator)?TODO
Checklist
3. to review, feature component)stable32)AI (if applicable)