diff --git a/packages/edit-post/src/index.js b/packages/edit-post/src/index.js
index 10f4a9838c8da..51abac654da29 100644
--- a/packages/edit-post/src/index.js
+++ b/packages/edit-post/src/index.js
@@ -73,6 +73,13 @@ export function initializeEditor(
isPublishSidebarEnabled: true,
} );
+ if ( window.__experimentalMediaProcessing ) {
+ dispatch( preferencesStore ).setDefaults( 'core/media', {
+ requireApproval: true,
+ optimizeOnUpload: true,
+ } );
+ }
+
dispatch( blocksStore ).reapplyBlockTypeFilters();
// Check if the block list view should be open by default.
diff --git a/packages/edit-site/src/index.js b/packages/edit-site/src/index.js
index 9face28c1bfe1..4ed5b96e3844d 100644
--- a/packages/edit-site/src/index.js
+++ b/packages/edit-site/src/index.js
@@ -81,6 +81,13 @@ export function initializeEditor( id, settings ) {
showListViewByDefault: false,
} );
+ if ( window.__experimentalMediaProcessing ) {
+ dispatch( preferencesStore ).setDefaults( 'core/media', {
+ requireApproval: true,
+ optimizeOnUpload: true,
+ } );
+ }
+
dispatch( editSiteStore ).updateSettings( settings );
// Keep the defaultTemplateTypes in the core/editor settings too,
diff --git a/packages/editor/src/components/preferences-modal/index.js b/packages/editor/src/components/preferences-modal/index.js
index f3378d76d994b..e7cc637dd0aed 100644
--- a/packages/editor/src/components/preferences-modal/index.js
+++ b/packages/editor/src/components/preferences-modal/index.js
@@ -59,212 +59,254 @@ export default function EditorPreferencesModal( { extraSections = {} } ) {
const { set: setPreference } = useDispatch( preferencesStore );
const sections = useMemo(
- () => [
- {
- name: 'general',
- tabLabel: __( 'General' ),
- content: (
- <>
-
-
- { showBlockBreadcrumbsOption && (
+ () =>
+ [
+ {
+ name: 'general',
+ tabLabel: __( 'General' ),
+ content: (
+ <>
+
- ) }
-
-
-
-
- (
-
) }
- />
-
-
-
-
-
-
-
-
-
-
-
-
-
- { isLargeViewport && (
+
-
+ (
+
) }
- label={ __( 'Enable pre-publish checks' ) }
/>
+
+
+
+
+
+
+
+
+
+
+
+
- ) }
- { extraSections?.general }
- >
- ),
- },
- {
- name: 'appearance',
- tabLabel: __( 'Appearance' ),
- content: (
-
-
- setPreference(
- 'core',
- 'distractionFree',
- false
- )
- }
- help={ __(
- 'Access all block and document tools in a single place.'
- ) }
- label={ __( 'Top toolbar' ) }
- />
- {
- setPreference( 'core', 'fixedToolbar', true );
- setIsInserterOpened( false );
- setIsListViewOpened( false );
- } }
- help={ __(
- 'Reduce visual distractions by hiding the toolbar and other elements to focus on writing.'
- ) }
- label={ __( 'Distraction free' ) }
- />
-
+
+
) }
- label={ __( 'Spotlight mode' ) }
- />
- { extraSections?.appearance }
-
- ),
- },
- {
- name: 'accessibility',
- tabLabel: __( 'Accessibility' ),
- content: (
- <>
+ { extraSections?.general }
+ >
+ ),
+ },
+ {
+ name: 'appearance',
+ tabLabel: __( 'Appearance' ),
+ content: (
+ setPreference(
+ 'core',
+ 'distractionFree',
+ false
+ )
+ }
help={ __(
- 'Keeps the text cursor within the block boundaries, aiding users with screen readers by preventing unintentional cursor movement outside the block.'
- ) }
- label={ __(
- 'Contain text cursor inside block'
+ 'Access all block and document tools in a single place.'
) }
+ label={ __( 'Top toolbar' ) }
/>
-
-
{
+ setPreference(
+ 'core',
+ 'fixedToolbar',
+ true
+ );
+ setIsInserterOpened( false );
+ setIsListViewOpened( false );
+ } }
help={ __(
- 'Show text instead of icons on buttons across the interface.'
+ 'Reduce visual distractions by hiding the toolbar and other elements to focus on writing.'
) }
+ label={ __( 'Distraction free' ) }
/>
-
- >
- ),
- },
- {
- name: 'blocks',
- tabLabel: __( 'Blocks' ),
- content: (
- <>
-
+ { extraSections?.appearance }
-
-
-
- >
- ),
- },
- ],
+ ),
+ },
+ {
+ name: 'accessibility',
+ tabLabel: __( 'Accessibility' ),
+ content: (
+ <>
+
+
+
+
+
+
+ >
+ ),
+ },
+ {
+ name: 'blocks',
+ tabLabel: __( 'Blocks' ),
+ content: (
+ <>
+
+
+
+
+
+
+ >
+ ),
+ },
+ window.__experimentalMediaProcessing && {
+ name: 'media',
+ tabLabel: __( 'Media' ),
+ content: (
+ <>
+
+
+
+
+ >
+ ),
+ },
+ ].filter( Boolean ),
[
showBlockBreadcrumbsOption,
extraSections,