diff --git a/packages/editor/CHANGELOG.md b/packages/editor/CHANGELOG.md index 444db48bdd0b63..ba0eb1c38bbf78 100644 --- a/packages/editor/CHANGELOG.md +++ b/packages/editor/CHANGELOG.md @@ -9,6 +9,7 @@ ### Bug Fixes - `mediaFinalize` now returns the post-finalize attachment (transformed from the REST response), so the upload-media queue can refresh the in-flight attachment URL. Required for the front-end `srcset` to render on client-side-media uploads that exceeded the big-image threshold. +- Template actions panel: Fix the keyboard activation of the "Change template" preview so it only opens the swap modal on Enter / Space ([#78641](https://github.com/WordPress/gutenberg/pull/78641)). ## 14.46.0 (2026-05-14) diff --git a/packages/editor/src/components/template-actions-panel/block-theme-content.js b/packages/editor/src/components/template-actions-panel/block-theme-content.js index 40d711a36ec98d..8d3806528e737e 100644 --- a/packages/editor/src/components/template-actions-panel/block-theme-content.js +++ b/packages/editor/src/components/template-actions-panel/block-theme-content.js @@ -17,6 +17,7 @@ import { import { useState } from '@wordpress/element'; import { __, sprintf } from '@wordpress/i18n'; import { decodeEntities } from '@wordpress/html-entities'; +import { ENTER, SPACE } from '@wordpress/keycodes'; import { store as noticesStore } from '@wordpress/notices'; import { store as preferencesStore } from '@wordpress/preferences'; // eslint-disable-next-line @wordpress/use-recommended-components -- `Tooltip` is not yet on the recommended `@wordpress/ui` allow-list; landing as a migration step ahead of the wider rollout. @@ -127,7 +128,15 @@ export default function TemplateActionsPanelContent() { tabIndex={ 0 } aria-label={ tooltipText } onClick={ () => setIsSwapModalOpen( true ) } - onKeyPress={ () => setIsSwapModalOpen( true ) } + onKeyDown={ ( event ) => { + if ( + event.keyCode === ENTER || + event.keyCode === SPACE + ) { + event.preventDefault(); + setIsSwapModalOpen( true ); + } + } } > { previewContent }