From 8ab28e8649fb52685e31945d56ec1c07847cf504 Mon Sep 17 00:00:00 2001 From: Andrew Serong <14988353+andrewserong@users.noreply.github.com> Date: Wed, 27 Aug 2025 12:18:04 +1000 Subject: [PATCH 1/2] Audio and Video: Hide caption and text tracks controls in contentOnly mode --- packages/block-library/src/audio/edit.js | 7 ++++++- packages/block-library/src/video/edit.js | 25 +++++++++++++++--------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/packages/block-library/src/audio/edit.js b/packages/block-library/src/audio/edit.js index 5b2737873fce44..2c36f2272571b6 100644 --- a/packages/block-library/src/audio/edit.js +++ b/packages/block-library/src/audio/edit.js @@ -22,6 +22,7 @@ import { MediaPlaceholder, MediaReplaceFlow, useBlockProps, + useBlockEditingMode, } from '@wordpress/block-editor'; import { __, _x } from '@wordpress/i18n'; import { useDispatch } from '@wordpress/data'; @@ -51,6 +52,8 @@ function AudioEdit( { } ) { const { id, autoplay, loop, preload, src } = attributes; const [ temporaryURL, setTemporaryURL ] = useState( attributes.blob ); + const blockEditingMode = useBlockEditingMode(); + const hasNonContentControls = blockEditingMode === 'default'; useUploadMediaFromBlobURL( { url: temporaryURL, @@ -264,7 +267,9 @@ function AudioEdit( { isSelected={ isSingleSelected } insertBlocksAfter={ insertBlocksAfter } label={ __( 'Audio caption text' ) } - showToolbarButton={ isSingleSelected } + showToolbarButton={ + isSingleSelected && hasNonContentControls + } /> diff --git a/packages/block-library/src/video/edit.js b/packages/block-library/src/video/edit.js index fbd724b2160a09..89a61efed1b464 100644 --- a/packages/block-library/src/video/edit.js +++ b/packages/block-library/src/video/edit.js @@ -20,6 +20,7 @@ import { MediaPlaceholder, MediaReplaceFlow, useBlockProps, + useBlockEditingMode, } from '@wordpress/block-editor'; import { useRef, useEffect, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; @@ -55,6 +56,8 @@ function VideoEdit( { const { id, controls, poster, src, tracks } = attributes; const [ temporaryURL, setTemporaryURL ] = useState( attributes.blob ); const dropdownMenuProps = useToolsPanelDropdownMenuProps(); + const blockEditingMode = useBlockEditingMode(); + const hasNonContentControls = blockEditingMode === 'default'; useUploadMediaFromBlobURL( { url: temporaryURL, @@ -176,14 +179,16 @@ function VideoEdit( { <> { isSingleSelected && ( <> - - { - setAttributes( { tracks: newTracks } ); - } } - /> - + { hasNonContentControls && ( + + { + setAttributes( { tracks: newTracks } ); + } } + /> + + ) } From bd675b582aab88c5242474457c92df6efa99c139 Mon Sep 17 00:00:00 2001 From: Andrew Serong <14988353+andrewserong@users.noreply.github.com> Date: Wed, 27 Aug 2025 14:09:48 +1000 Subject: [PATCH 2/2] Reinstate Text tracks control --- packages/block-library/src/video/edit.js | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/packages/block-library/src/video/edit.js b/packages/block-library/src/video/edit.js index 89a61efed1b464..125b2cbc78741e 100644 --- a/packages/block-library/src/video/edit.js +++ b/packages/block-library/src/video/edit.js @@ -179,16 +179,14 @@ function VideoEdit( { <> { isSingleSelected && ( <> - { hasNonContentControls && ( - - { - setAttributes( { tracks: newTracks } ); - } } - /> - - ) } + + { + setAttributes( { tracks: newTracks } ); + } } + /> +