From eb61916e23ca9bd92fefd1cc88b62426050752f9 Mon Sep 17 00:00:00 2001 From: Joffrey JAFFEUX Date: Mon, 3 Aug 2020 10:37:30 +0200 Subject: [PATCH] UX: allows to navigate widget dropdown with tab and enter (#10356) --- .../discourse/app/widgets/widget-dropdown.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js b/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js index 0f0548fccc9..363356048a0 100644 --- a/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js +++ b/app/assets/javascripts/discourse/app/widgets/widget-dropdown.js @@ -114,7 +114,10 @@ export const WidgetDropdownItemClass = { }, buildAttributes(attrs) { - return { "data-id": attrs.item.id }; + return { + "data-id": attrs.item.id, + tabindex: attrs.item === "separator" ? -1 : 0 + }; }, buildClasses(attrs) { @@ -124,6 +127,13 @@ export const WidgetDropdownItemClass = { ].join(" "); }, + keyDown(event) { + if (event.key === "Enter") { + event.preventDefault(); + this.sendWidgetAction("_onChange", this.attrs.item); + } + }, + click(event) { event.preventDefault();