diff --git a/packages/block-editor/src/components/inserter/hooks/use-insertion-point.js b/packages/block-editor/src/components/inserter/hooks/use-insertion-point.js index 345493cbcf3c95..97a6bb4fb74abe 100644 --- a/packages/block-editor/src/components/inserter/hooks/use-insertion-point.js +++ b/packages/block-editor/src/components/inserter/hooks/use-insertion-point.js @@ -80,6 +80,7 @@ function useInsertionPoint( { getBlockIndex, getBlockOrder, getSectionRootClientId, + __unstableGetEditorMode, } = unlock( select( blockEditorStore ) ); const selectedBlockClientId = getSelectedBlockClientId(); @@ -95,7 +96,13 @@ function useInsertionPoint( { } else if ( ! isAppender && selectedBlockClientId ) { const sectionRootClientId = getSectionRootClientId(); - if ( sectionRootClientId === selectedBlockClientId ) { + // Avoids empty inserter when the selected block is acting + // as the "root". + // See https://github.com/WordPress/gutenberg/pull/66214. + if ( + __unstableGetEditorMode() === 'zoom-out' && + sectionRootClientId === selectedBlockClientId + ) { _destinationRootClientId = sectionRootClientId; _destinationIndex = getBlockOrder( _destinationRootClientId