diff --git a/packages/block-library/src/navigation/edit/index.js b/packages/block-library/src/navigation/edit/index.js index 2633d342b9ca56..e0f4da63c6e44e 100644 --- a/packages/block-library/src/navigation/edit/index.js +++ b/packages/block-library/src/navigation/edit/index.js @@ -725,8 +725,6 @@ function Navigation( { diff --git a/packages/block-library/src/navigation/edit/unsaved-inner-blocks.js b/packages/block-library/src/navigation/edit/unsaved-inner-blocks.js index 1017b6594fb4a2..ec91f7aa68fa4e 100644 --- a/packages/block-library/src/navigation/edit/unsaved-inner-blocks.js +++ b/packages/block-library/src/navigation/edit/unsaved-inner-blocks.js @@ -39,7 +39,6 @@ const ALLOWED_BLOCKS = [ export default function UnsavedInnerBlocks( { blocks, createNavigationMenu, - hasSelection, } ) { const originalBlocks = useRef(); @@ -91,37 +90,34 @@ export default function UnsavedInnerBlocks( { } ); - const { isSaving, draftNavigationMenus, hasResolvedDraftNavigationMenus } = - useSelect( - ( select ) => { - if ( isDisabled ) { - return EMPTY_OBJECT; - } - - const { - getEntityRecords, - hasFinishedResolution, - isSavingEntityRecord, - } = select( coreStore ); - - return { - isSaving: isSavingEntityRecord( - 'postType', - 'wp_navigation' - ), - draftNavigationMenus: getEntityRecords( - ...DRAFT_MENU_PARAMS - ), - hasResolvedDraftNavigationMenus: hasFinishedResolution( - 'getEntityRecords', - DRAFT_MENU_PARAMS - ), - }; - }, - [ isDisabled ] - ); - - const { hasResolvedNavigationMenus, navigationMenus } = useNavigationMenu(); + const { isSaving, hasResolvedDraftNavigationMenus } = useSelect( + ( select ) => { + if ( isDisabled ) { + return EMPTY_OBJECT; + } + + const { + getEntityRecords, + hasFinishedResolution, + isSavingEntityRecord, + } = select( coreStore ); + + return { + isSaving: isSavingEntityRecord( 'postType', 'wp_navigation' ), + draftNavigationMenus: getEntityRecords( + // This is needed so that hasResolvedDraftNavigationMenus gives the correct status. + ...DRAFT_MENU_PARAMS + ), + hasResolvedDraftNavigationMenus: hasFinishedResolution( + 'getEntityRecords', + DRAFT_MENU_PARAMS + ), + }; + }, + [ isDisabled ] + ); + + const { hasResolvedNavigationMenus } = useNavigationMenu(); // Automatically save the uncontrolled blocks. useEffect( () => { @@ -154,11 +150,8 @@ export default function UnsavedInnerBlocks( { isSaving, hasResolvedDraftNavigationMenus, hasResolvedNavigationMenus, - draftNavigationMenus, - navigationMenus, + innerBlocksAreDirty, hasSelection, - createNavigationMenu, - blocks, ] ); const Wrapper = isSaving ? Disabled : 'div';