diff --git a/lib/block-supports/layout.php b/lib/block-supports/layout.php index 554a88b4eeec3f..0f2873c46b2571 100644 --- a/lib/block-supports/layout.php +++ b/lib/block-supports/layout.php @@ -710,7 +710,8 @@ function gutenberg_render_layout_support_flag( $block_content, $block ) { if ( empty( $fallback_layout ) ) { $fallback_layout = $block_type->supports['__experimentalLayout']['default'] ?? array(); } - $used_layout = $block['attrs']['layout'] ?? $fallback_layout; + $used_layout = $block['attrs']['layout'] ?? $fallback_layout; + $used_alignment = $block['attrs']['align'] ?? array(); $class_names = array(); $layout_definitions = gutenberg_get_layout_definitions(); @@ -732,7 +733,7 @@ function gutenberg_render_layout_support_flag( $block_content, $block ) { $root_padding_aware_alignments = $global_settings['useRootPaddingAwareAlignments'] ?? false; - if ( $root_padding_aware_alignments && isset( $used_layout['type'] ) && 'constrained' === $used_layout['type'] ) { + if ( $root_padding_aware_alignments && isset( $used_layout['type'] ) || 'full' === $used_alignment ) { $class_names[] = 'has-global-padding'; } diff --git a/packages/block-editor/src/hooks/layout.js b/packages/block-editor/src/hooks/layout.js index 5f07c9e843f4bf..716bb3cfd2904a 100644 --- a/packages/block-editor/src/hooks/layout.js +++ b/packages/block-editor/src/hooks/layout.js @@ -77,12 +77,18 @@ export function useLayoutClasses( blockAttributes = {}, blockName = '' ) { return ( ( usedLayout?.inherit || usedLayout?.contentSize || - usedLayout?.type === 'constrained' ) && + usedLayout?.type === 'constrained' || + blockAttributes?.align === 'full' ) && select( blockEditorStore ).getSettings().__experimentalFeatures ?.useRootPaddingAwareAlignments ); }, - [ usedLayout?.contentSize, usedLayout?.inherit, usedLayout?.type ] + [ + usedLayout?.contentSize, + usedLayout?.inherit, + usedLayout?.type, + blockAttributes?.align, + ] ); if ( hasGlobalPadding ) {