From e00ccc8fd6fd91e54223e9b6273f280a9569e3aa Mon Sep 17 00:00:00 2001 From: Dhananjay Kuber Date: Tue, 21 Jan 2025 17:11:36 +0530 Subject: [PATCH 1/2] feat: Add prop to show icon labels in Heading Level Dropdown --- .../block-heading-level-dropdown/index.js | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/block-editor/src/components/block-heading-level-dropdown/index.js b/packages/block-editor/src/components/block-heading-level-dropdown/index.js index 6b9bad09978a5..163c03217c81d 100644 --- a/packages/block-editor/src/components/block-heading-level-dropdown/index.js +++ b/packages/block-editor/src/components/block-heading-level-dropdown/index.js @@ -39,6 +39,7 @@ export default function HeadingLevelDropdown( { options = HEADING_LEVELS, value, onChange, + showIconLabels = false, } ) { const validOptions = options .filter( @@ -53,16 +54,18 @@ export default function HeadingLevelDropdown( { label={ __( 'Change level' ) } controls={ validOptions.map( ( targetLevel ) => { const isActive = targetLevel === value; + const title = + targetLevel === 0 + ? __( 'Paragraph' ) + : sprintf( + // translators: %d: heading level e.g: "1", "2", "3" + __( 'Heading %d' ), + targetLevel + ); + return { icon: , - title: - targetLevel === 0 - ? __( 'Paragraph' ) - : sprintf( - // translators: %d: heading level e.g: "1", "2", "3" - __( 'Heading %d' ), - targetLevel - ), + title: showIconLabels ? title : undefined, isActive, onClick() { onChange( targetLevel ); From 93140d4402dbb87277c178639e90542bd5c09d4b Mon Sep 17 00:00:00 2001 From: Dhananjay Kuber Date: Tue, 21 Jan 2025 17:19:19 +0530 Subject: [PATCH 2/2] feat: Use preferences store to dynamically show icon labels in Heading Level Dropdown --- .../src/components/block-heading-level-dropdown/index.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/block-editor/src/components/block-heading-level-dropdown/index.js b/packages/block-editor/src/components/block-heading-level-dropdown/index.js index 163c03217c81d..a1dc9122ad2ea 100644 --- a/packages/block-editor/src/components/block-heading-level-dropdown/index.js +++ b/packages/block-editor/src/components/block-heading-level-dropdown/index.js @@ -3,6 +3,8 @@ */ import { ToolbarDropdownMenu } from '@wordpress/components'; import { __, sprintf } from '@wordpress/i18n'; +import { store as preferencesStore } from '@wordpress/preferences'; +import { useSelect } from '@wordpress/data'; /** * Internal dependencies @@ -39,7 +41,6 @@ export default function HeadingLevelDropdown( { options = HEADING_LEVELS, value, onChange, - showIconLabels = false, } ) { const validOptions = options .filter( @@ -47,6 +48,12 @@ export default function HeadingLevelDropdown( { ) .sort( ( a, b ) => a - b ); // Sorts numerically in ascending order; + const showIconLabels = useSelect( + ( select ) => + select( preferencesStore ).get( 'core', 'showIconLabels' ), + [] + ); + return (