From c031b36198add10c77ecc5a4efb7da614dad7394 Mon Sep 17 00:00:00 2001 From: George Mamadashvili Date: Tue, 18 Feb 2025 11:58:17 +0800 Subject: [PATCH] Editor: Avoid a 'flash' when rendering in 'template-locked' mode (#69173) * Editor: Avoid a 'flash' when rendering in 'template-locked' mode * Relocate some checks Co-authored-by: Mamaduka Co-authored-by: fabiankaegy Co-authored-by: Mayank-Tripathi32 --- packages/editor/src/components/provider/index.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/editor/src/components/provider/index.js b/packages/editor/src/components/provider/index.js index dfeaf19a5bd21..0e653228fee62 100644 --- a/packages/editor/src/components/provider/index.js +++ b/packages/editor/src/components/provider/index.js @@ -203,14 +203,17 @@ export const ExperimentalEditorProvider = withRegistryProvider( : undefined; const hasDefaultMode = RENDERING_MODES.includes( _defaultMode ); + // Wait for template resolution when rendering in a `template-locked` mode. + const hasResolvedMode = + hasLoadedPostObject && _defaultMode === 'template-locked' + ? hasTemplate + : true; + return { editorSettings: getEditorSettings(), - isReady: __unstableIsEditorReady() && hasLoadedPostObject, + isReady: __unstableIsEditorReady() && hasResolvedMode, mode: getRenderingMode(), - defaultMode: - hasTemplate && hasDefaultMode - ? _defaultMode - : 'post-only', + defaultMode: hasDefaultMode ? _defaultMode : 'post-only', selection: getEditorSelection(), postTypeEntities: post.type === 'wp_template'