diff --git a/src/components/views/elements/AccessibleButton.tsx b/src/components/views/elements/AccessibleButton.tsx index 1eb03792b8..8513b69eae 100644 --- a/src/components/views/elements/AccessibleButton.tsx +++ b/src/components/views/elements/AccessibleButton.tsx @@ -86,6 +86,10 @@ type Props = DynamicHtmlElementProps & * Event handler for button activation. Should be implemented exactly like a normal `onClick` handler. */ onClick: ((e: ButtonEvent) => void | Promise) | null; + /** + * Disable keyboard overrides for this button. Defaults to false. + */ + disableKeyboardOverrides?: boolean; }; /** @@ -116,6 +120,7 @@ const AccessibleButton = forwardRef(function , ref: Ref, @@ -138,8 +143,9 @@ const AccessibleButton = forwardRef(function { - const action = getKeyBindingsManager().getAccessibilityAction(e); + if (disableKeyboardOverrides) return onKeyDown?.(e); + const action = getKeyBindingsManager().getAccessibilityAction(e); switch (action) { case KeyBindingAction.Enter: e.stopPropagation(); @@ -154,6 +160,8 @@ const AccessibleButton = forwardRef(function { + if (disableKeyboardOverrides) return onKeyUp?.(e); + const action = getKeyBindingsManager().getAccessibilityAction(e); switch (action) { diff --git a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx index 13478c8c5b..4c0d43a108 100644 --- a/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx +++ b/src/components/views/spaces/threads-activity-centre/ThreadsActivityCentreButton.tsx @@ -51,6 +51,8 @@ export const ThreadsActivityCentreButton = forwardRef