aboutsummaryrefslogtreecommitdiffstats
path: root/core/src/jquery/ocdialog.js
diff options
context:
space:
mode:
authorChristopher Ng <chrng8@gmail.com>2022-05-27 00:37:27 +0000
committerChristopher Ng <chrng8@gmail.com>2022-06-08 23:58:28 +0000
commit229c65b0d76e0856c8eac45ec2ba53fddfaf8ffd (patch)
tree624c0ee0b63e08867ab907edfe8238bb5e673cf0 /core/src/jquery/ocdialog.js
parentb7089c20ee4dd0f4b8bc805068aadbaf89a6a081 (diff)
downloadnextcloud-server-229c65b0d76e0856c8eac45ec2ba53fddfaf8ffd.tar.gz
nextcloud-server-229c65b0d76e0856c8eac45ec2ba53fddfaf8ffd.zip
Handle keyboard navigation in the file picker
Signed-off-by: Christopher Ng <chrng8@gmail.com>
Diffstat (limited to 'core/src/jquery/ocdialog.js')
-rw-r--r--core/src/jquery/ocdialog.js10
1 files changed, 6 insertions, 4 deletions
diff --git a/core/src/jquery/ocdialog.js b/core/src/jquery/ocdialog.js
index 51a1c479e99..4579f420625 100644
--- a/core/src/jquery/ocdialog.js
+++ b/core/src/jquery/ocdialog.js
@@ -171,11 +171,13 @@ $.widget('oc.ocdialog', {
break
case 'closeButton':
if (value) {
- const $closeButton = $('<a class="oc-dialog-close"></a>')
+ const $closeButton = $('<a class="oc-dialog-close" tabindex="0"></a>')
this.$dialog.prepend($closeButton)
- $closeButton.on('click', function() {
- self.options.closeCallback && self.options.closeCallback()
- self.close()
+ $closeButton.on('click keydown', function(event) {
+ if (event.type === 'click' || (event.type === 'keydown' && event.key === 'Enter')) {
+ self.options.closeCallback && self.options.closeCallback()
+ self.close()
+ }
})
} else {
this.$dialog.find('.oc-dialog-close').remove()