From b64eec7b536e83b72b24c776a8181889f96a9abd Mon Sep 17 00:00:00 2001 From: Andrea Fercia Date: Thu, 11 Jan 2024 15:17:15 +0100 Subject: [PATCH] Fix Widgets page Undo and Redo accessibility and keyboard interaction (#57677) * Fix styling and focus style. * Fix Widgets toolbar Undo and Redo buttons keyboard interaction. --- .../src/components/header/document-tools/index.js | 5 +++-- .../edit-widgets/src/components/header/style.scss | 3 +-- .../src/components/header/undo-redo/redo.js | 11 ++++++++--- .../src/components/header/undo-redo/undo.js | 11 ++++++++--- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/packages/edit-widgets/src/components/header/document-tools/index.js b/packages/edit-widgets/src/components/header/document-tools/index.js index a9799ac993f9ab..4391ece0b89e26 100644 --- a/packages/edit-widgets/src/components/header/document-tools/index.js +++ b/packages/edit-widgets/src/components/header/document-tools/index.js @@ -83,6 +83,7 @@ function DocumentTools() { className="edit-widgets-header-toolbar" aria-label={ __( 'Document tools' ) } shouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused } + variant="unstyled" > { isMediumViewport && ( <> - - + + ); } + +export default forwardRef( RedoButton ); diff --git a/packages/edit-widgets/src/components/header/undo-redo/undo.js b/packages/edit-widgets/src/components/header/undo-redo/undo.js index 827ed1a415d74b..271c73a452d9ea 100644 --- a/packages/edit-widgets/src/components/header/undo-redo/undo.js +++ b/packages/edit-widgets/src/components/header/undo-redo/undo.js @@ -2,20 +2,23 @@ * WordPress dependencies */ import { __, isRTL } from '@wordpress/i18n'; -import { ToolbarButton } from '@wordpress/components'; +import { Button } from '@wordpress/components'; import { useSelect, useDispatch } from '@wordpress/data'; import { undo as undoIcon, redo as redoIcon } from '@wordpress/icons'; import { displayShortcut } from '@wordpress/keycodes'; import { store as coreStore } from '@wordpress/core-data'; +import { forwardRef } from '@wordpress/element'; -export default function UndoButton() { +function UndoButton( props, ref ) { const hasUndo = useSelect( ( select ) => select( coreStore ).hasUndo(), [] ); const { undo } = useDispatch( coreStore ); return ( - ); } + +export default forwardRef( UndoButton );