close
Skip to content

Image Editor: focus return after closing image crop modal#78711

Merged
ramonjd merged 3 commits into
trunkfrom
fix/crop-icon-focus-after-modal-close
May 28, 2026
Merged

Image Editor: focus return after closing image crop modal#78711
ramonjd merged 3 commits into
trunkfrom
fix/crop-icon-focus-after-modal-close

Conversation

@ramonjd

@ramonjd ramonjd commented May 27, 2026

Copy link
Copy Markdown
Member

What?

Restores focus to the Crop toolbar button after closing the media editor modal launched from:

  • the Image block (including from within a Gallery)
  • the Site Logo block

Why?

When the cropper is opened from the block toolbar via keyboard, closing the modal currently leaves focus lost instead of returning it to the control that opened the dialog.

The expected modal behavior is to return focus to the launcher when it still exists.

How?

  • Adds an optional onClose callback to the media editor modal open payload.
  • Calls that callback when the media editor modal closes, including after save.
  • Passes a simple focus-return callback from Image and Site Logo:
    () => cropButtonRef.current?.focus()

Testing Instructions

  1. Add an Image block with an image.
  2. Select the Image block.
  3. Use keyboard navigation to focus the Crop button in the block toolbar.
  4. Press Enter or Space to open the media editor modal.
  5. Close the modal with Cancel, Escape, or Save.
  6. Confirm focus returns to the Image block Crop toolbar button.
  7. Repeat with a Site Logo and Gallery blocks
2026-05-27.15.48.36.mp4

@ramonjd ramonjd self-assigned this May 27, 2026
@github-actions

github-actions Bot commented May 27, 2026

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: ramonjd <ramonopoly@git.wordpress.org>
Co-authored-by: andrewserong <andrewserong@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@github-actions github-actions Bot added [Package] Editor /packages/editor [Package] Block library /packages/block-library labels May 27, 2026
@ramonjd ramonjd requested a review from andrewserong May 27, 2026 05:52
@ramonjd ramonjd added [Type] Enhancement A suggestion for improvement. [Focus] Accessibility (a11y) Changes that impact accessibility and need corresponding review (e.g. markup changes). labels May 27, 2026
@github-actions

github-actions Bot commented May 27, 2026

Copy link
Copy Markdown

Size Change: +55 B (0%)

Total Size: 8.18 MB

📦 View Changed
Filename Size Change
build/scripts/block-editor/index.min.js 379 kB -41 B (-0.01%)
build/scripts/block-library/index.min.js 323 kB +55 B (+0.02%)
build/scripts/editor/index.min.js 463 kB +41 B (+0.01%)
ℹ️ View Unchanged
Filename Size
build/modules/a11y/index.min.js 355 B
build/modules/abilities/index.min.js 42.3 kB
build/modules/block-editor/utils/fit-text-frontend.min.js 617 B
build/modules/block-library/accordion/view.min.js 595 B
build/modules/block-library/file/view.min.js 346 B
build/modules/block-library/form/view.min.js 528 B
build/modules/block-library/image/view.min.js 2.64 kB
build/modules/block-library/navigation/view.min.js 1.14 kB
build/modules/block-library/playlist/view.min.js 10.9 kB
build/modules/block-library/query/view.min.js 518 B
build/modules/block-library/search/view.min.js 498 B
build/modules/block-library/tabs/view.min.js 946 B
build/modules/boot/index.min.js 19.4 kB
build/modules/connectors/index.min.js 2.05 kB
build/modules/content-types/index.min.js 156 kB
build/modules/core-abilities/index.min.js 926 B
build/modules/edit-site-init/index.min.js 1.4 kB
build/modules/interactivity-router/full-page.min.js 451 B
build/modules/interactivity-router/index.min.js 11.6 kB
build/modules/interactivity/index.min.js 15.3 kB
build/modules/latex-to-mathml/index.min.js 56.5 kB
build/modules/latex-to-mathml/loader.min.js 131 B
build/modules/lazy-editor/index.min.js 14.2 kB
build/modules/route/index.min.js 25.2 kB
build/modules/vips/loader.min.js 127 B
build/modules/vips/worker.min.js 4.56 MB
build/modules/workflow/index.min.js 19.9 kB
build/scripts/a11y/index.min.js 1.1 kB
build/scripts/annotations/index.min.js 2.53 kB
build/scripts/api-fetch/index.min.js 3.34 kB
build/scripts/autop/index.min.js 2.21 kB
build/scripts/base-styles/index.min.js 146 B
build/scripts/blob/index.min.js 665 B
build/scripts/block-directory/index.min.js 43 kB
build/scripts/block-serialization-default-parser/index.min.js 1.2 kB
build/scripts/block-serialization-spec-parser/index.min.js 3.12 kB
build/scripts/blocks/index.min.js 57 kB
build/scripts/commands/index.min.js 21 kB
build/scripts/components/index.min.js 263 kB
build/scripts/compose/index.min.js 11.7 kB
build/scripts/core-commands/index.min.js 4.37 kB
build/scripts/core-data/index.min.js 31.4 kB
build/scripts/customize-widgets/index.min.js 14.6 kB
build/scripts/data-controls/index.min.js 832 B
build/scripts/data/index.min.js 9.74 kB
build/scripts/date/index.min.js 23.7 kB
build/scripts/deprecated/index.min.js 784 B
build/scripts/dom-ready/index.min.js 502 B
build/scripts/dom/index.min.js 5.04 kB
build/scripts/edit-post/index.min.js 52 kB
build/scripts/edit-site/index.min.js 295 kB
build/scripts/edit-widgets/index.min.js 22.2 kB
build/scripts/element/index.min.js 5.63 kB
build/scripts/escape-html/index.min.js 622 B
build/scripts/format-library/index.min.js 13.1 kB
build/scripts/hooks/index.min.js 1.86 kB
build/scripts/html-entities/index.min.js 529 B
build/scripts/i18n/index.min.js 2.5 kB
build/scripts/is-shallow-equal/index.min.js 607 B
build/scripts/keyboard-shortcuts/index.min.js 1.65 kB
build/scripts/keycodes/index.min.js 1.6 kB
build/scripts/list-reusable-blocks/index.min.js 2.53 kB
build/scripts/media-utils/index.min.js 112 kB
build/scripts/notices/index.min.js 1.72 kB
build/scripts/nux/index.min.js 1.92 kB
build/scripts/patterns/index.min.js 8 kB
build/scripts/plugins/index.min.js 2.18 kB
build/scripts/preferences-persistence/index.min.js 2.19 kB
build/scripts/preferences/index.min.js 3.33 kB
build/scripts/primitives/index.min.js 1.05 kB
build/scripts/priority-queue/index.min.js 1.65 kB
build/scripts/private-apis/index.min.js 1.15 kB
build/scripts/react-i18n/index.min.js 868 B
build/scripts/redux-routine/index.min.js 3.4 kB
build/scripts/reusable-blocks/index.min.js 3.14 kB
build/scripts/rich-text/index.min.js 14.1 kB
build/scripts/router/index.min.js 5.99 kB
build/scripts/server-side-render/index.min.js 1.94 kB
build/scripts/shortcode/index.min.js 1.62 kB
build/scripts/style-engine/index.min.js 2.45 kB
build/scripts/sync/index.min.js 39.6 kB
build/scripts/theme/index.min.js 22 kB
build/scripts/token-list/index.min.js 767 B
build/scripts/undo-manager/index.min.js 954 B
build/scripts/upload-media/index.min.js 11.5 kB
build/scripts/url/index.min.js 4.02 kB
build/scripts/vendors/react-dom.min.js 57.7 kB
build/scripts/vendors/react-jsx-runtime.min.js 513 B
build/scripts/vendors/react.min.js 3.1 kB
build/scripts/viewport/index.min.js 1.25 kB
build/scripts/warning/index.min.js 482 B
build/scripts/widgets/index.min.js 7.84 kB
build/scripts/wordcount/index.min.js 1.07 kB
build/styles/base-styles/admin-schemes-rtl.css 1.71 kB
build/styles/base-styles/admin-schemes-rtl.min.css 775 B
build/styles/base-styles/admin-schemes.css 1.71 kB
build/styles/base-styles/admin-schemes.min.css 775 B
build/styles/block-directory/style-rtl.css 1.97 kB
build/styles/block-directory/style-rtl.min.css 1.06 kB
build/styles/block-directory/style.css 1.98 kB
build/styles/block-directory/style.min.css 1.06 kB
build/styles/block-editor/content-rtl.css 5.51 kB
build/styles/block-editor/content-rtl.min.css 4.08 kB
build/styles/block-editor/content.css 5.52 kB
build/styles/block-editor/content.min.css 4.07 kB
build/styles/block-editor/default-editor-styles-rtl.css 697 B
build/styles/block-editor/default-editor-styles-rtl.min.css 224 B
build/styles/block-editor/default-editor-styles.css 697 B
build/styles/block-editor/default-editor-styles.min.css 224 B
build/styles/block-editor/style-rtl.css 18.7 kB
build/styles/block-editor/style-rtl.min.css 15.9 kB
build/styles/block-editor/style.css 18.7 kB
build/styles/block-editor/style.min.css 15.9 kB
build/styles/block-library/accordion-heading/style-rtl.css 346 B
build/styles/block-library/accordion-heading/style-rtl.min.css 325 B
build/styles/block-library/accordion-heading/style.css 346 B
build/styles/block-library/accordion-heading/style.min.css 325 B
build/styles/block-library/accordion-item/style-rtl.css 239 B
build/styles/block-library/accordion-item/style-rtl.min.css 180 B
build/styles/block-library/accordion-item/style.css 238 B
build/styles/block-library/accordion-item/style.min.css 180 B
build/styles/block-library/accordion-panel/style-rtl.css 110 B
build/styles/block-library/accordion-panel/style-rtl.min.css 99 B
build/styles/block-library/accordion-panel/style.css 110 B
build/styles/block-library/accordion-panel/style.min.css 99 B
build/styles/block-library/accordion/style-rtl.css 69 B
build/styles/block-library/accordion/style-rtl.min.css 62 B
build/styles/block-library/accordion/style.css 69 B
build/styles/block-library/accordion/style.min.css 62 B
build/styles/block-library/archives/style-rtl.css 101 B
build/styles/block-library/archives/style-rtl.min.css 90 B
build/styles/block-library/archives/style.css 101 B
build/styles/block-library/archives/style.min.css 90 B
build/styles/block-library/audio/editor-rtl.css 166 B
build/styles/block-library/audio/editor-rtl.min.css 149 B
build/styles/block-library/audio/editor.css 166 B
build/styles/block-library/audio/editor.min.css 151 B
build/styles/block-library/audio/style-rtl.css 945 B
build/styles/block-library/audio/style-rtl.min.css 132 B
build/styles/block-library/audio/style.css 945 B
build/styles/block-library/audio/style.min.css 132 B
build/styles/block-library/audio/theme-rtl.css 967 B
build/styles/block-library/audio/theme-rtl.min.css 134 B
build/styles/block-library/audio/theme.css 967 B
build/styles/block-library/audio/theme.min.css 134 B
build/styles/block-library/avatar/editor-rtl.css 127 B
build/styles/block-library/avatar/editor-rtl.min.css 115 B
build/styles/block-library/avatar/editor.css 127 B
build/styles/block-library/avatar/editor.min.css 115 B
build/styles/block-library/avatar/style-rtl.css 117 B
build/styles/block-library/avatar/style-rtl.min.css 104 B
build/styles/block-library/avatar/style.css 117 B
build/styles/block-library/avatar/style.min.css 104 B
build/styles/block-library/breadcrumbs/style-rtl.css 236 B
build/styles/block-library/breadcrumbs/style-rtl.min.css 206 B
build/styles/block-library/breadcrumbs/style.css 236 B
build/styles/block-library/breadcrumbs/style.min.css 206 B
build/styles/block-library/button/editor-rtl.css 306 B
build/styles/block-library/button/editor-rtl.min.css 265 B
build/styles/block-library/button/editor.css 317 B
build/styles/block-library/button/editor.min.css 265 B
build/styles/block-library/button/style-rtl.css 651 B
build/styles/block-library/button/style-rtl.min.css 596 B
build/styles/block-library/button/style.css 662 B
build/styles/block-library/button/style.min.css 596 B
build/styles/block-library/buttons/editor-rtl.css 391 B
build/styles/block-library/buttons/editor-rtl.min.css 291 B
build/styles/block-library/buttons/editor.css 391 B
build/styles/block-library/buttons/editor.min.css 291 B
build/styles/block-library/buttons/style-rtl.css 452 B
build/styles/block-library/buttons/style-rtl.min.css 349 B
build/styles/block-library/buttons/style.css 453 B
build/styles/block-library/buttons/style.min.css 349 B
build/styles/block-library/calendar/style-rtl.css 271 B
build/styles/block-library/calendar/style-rtl.min.css 239 B
build/styles/block-library/calendar/style.css 271 B
build/styles/block-library/calendar/style.min.css 239 B
build/styles/block-library/categories/editor-rtl.css 171 B
build/styles/block-library/categories/editor-rtl.min.css 132 B
build/styles/block-library/categories/editor.css 170 B
build/styles/block-library/categories/editor.min.css 131 B
build/styles/block-library/categories/style-rtl.css 226 B
build/styles/block-library/categories/style-rtl.min.css 169 B
build/styles/block-library/categories/style.css 235 B
build/styles/block-library/categories/style.min.css 169 B
build/styles/block-library/classic-rtl.css 402 B
build/styles/block-library/classic-rtl.min.css 358 B
build/styles/block-library/classic.css 402 B
build/styles/block-library/classic.min.css 358 B
build/styles/block-library/code/editor-rtl.css 59 B
build/styles/block-library/code/editor-rtl.min.css 53 B
build/styles/block-library/code/editor.css 59 B
build/styles/block-library/code/editor.min.css 53 B
build/styles/block-library/code/style-rtl.css 158 B
build/styles/block-library/code/style-rtl.min.css 140 B
build/styles/block-library/code/style.css 178 B
build/styles/block-library/code/style.min.css 140 B
build/styles/block-library/code/theme-rtl.css 135 B
build/styles/block-library/code/theme-rtl.min.css 122 B
build/styles/block-library/code/theme.css 135 B
build/styles/block-library/code/theme.min.css 122 B
build/styles/block-library/columns/editor-rtl.css 119 B
build/styles/block-library/columns/editor-rtl.min.css 108 B
build/styles/block-library/columns/editor.css 119 B
build/styles/block-library/columns/editor.min.css 108 B
build/styles/block-library/columns/style-rtl.css 1.3 kB
build/styles/block-library/columns/style-rtl.min.css 421 B
build/styles/block-library/columns/style.css 1.3 kB
build/styles/block-library/columns/style.min.css 421 B
build/styles/block-library/comment-author-avatar/editor-rtl.css 136 B
build/styles/block-library/comment-author-avatar/editor-rtl.min.css 124 B
build/styles/block-library/comment-author-avatar/editor.css 136 B
build/styles/block-library/comment-author-avatar/editor.min.css 124 B
build/styles/block-library/comment-author-name/style-rtl.css 79 B
build/styles/block-library/comment-author-name/style-rtl.min.css 72 B
build/styles/block-library/comment-author-name/style.css 79 B
build/styles/block-library/comment-author-name/style.min.css 72 B
build/styles/block-library/comment-content/style-rtl.css 137 B
build/styles/block-library/comment-content/style-rtl.min.css 120 B
build/styles/block-library/comment-content/style.css 137 B
build/styles/block-library/comment-content/style.min.css 120 B
build/styles/block-library/comment-date/style-rtl.css 72 B
build/styles/block-library/comment-date/style-rtl.min.css 65 B
build/styles/block-library/comment-date/style.css 72 B
build/styles/block-library/comment-date/style.min.css 65 B
build/styles/block-library/comment-edit-link/style-rtl.css 77 B
build/styles/block-library/comment-edit-link/style-rtl.min.css 70 B
build/styles/block-library/comment-edit-link/style.css 77 B
build/styles/block-library/comment-edit-link/style.min.css 70 B
build/styles/block-library/comment-reply-link/style-rtl.css 78 B
build/styles/block-library/comment-reply-link/style-rtl.min.css 71 B
build/styles/block-library/comment-reply-link/style.css 78 B
build/styles/block-library/comment-reply-link/style.min.css 71 B
build/styles/block-library/comment-template/style-rtl.css 213 B
build/styles/block-library/comment-template/style-rtl.min.css 191 B
build/styles/block-library/comment-template/style.css 213 B
build/styles/block-library/comment-template/style.min.css 191 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.css 135 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.min.css 122 B
build/styles/block-library/comments-pagination-numbers/editor.css 144 B
build/styles/block-library/comments-pagination-numbers/editor.min.css 121 B
build/styles/block-library/comments-pagination/editor-rtl.css 184 B
build/styles/block-library/comments-pagination/editor-rtl.min.css 168 B
build/styles/block-library/comments-pagination/editor.css 184 B
build/styles/block-library/comments-pagination/editor.min.css 168 B
build/styles/block-library/comments-pagination/style-rtl.css 224 B
build/styles/block-library/comments-pagination/style-rtl.min.css 201 B
build/styles/block-library/comments-pagination/style.css 236 B
build/styles/block-library/comments-pagination/style.min.css 201 B
build/styles/block-library/comments-title/editor-rtl.css 83 B
build/styles/block-library/comments-title/editor-rtl.min.css 75 B
build/styles/block-library/comments-title/editor.css 83 B
build/styles/block-library/comments-title/editor.min.css 75 B
build/styles/block-library/comments/editor-rtl.css 968 B
build/styles/block-library/comments/editor-rtl.min.css 842 B
build/styles/block-library/comments/editor.css 968 B
build/styles/block-library/comments/editor.min.css 842 B
build/styles/block-library/comments/style-rtl.css 754 B
build/styles/block-library/comments/style-rtl.min.css 637 B
build/styles/block-library/comments/style.css 752 B
build/styles/block-library/comments/style.min.css 637 B
build/styles/block-library/common-rtl.css 2.57 kB
build/styles/block-library/common-rtl.min.css 1.21 kB
build/styles/block-library/common.css 2.59 kB
build/styles/block-library/common.min.css 1.2 kB
build/styles/block-library/cover/editor-rtl.css 1.05 kB
build/styles/block-library/cover/editor-rtl.min.css 631 B
build/styles/block-library/cover/editor.css 1.05 kB
build/styles/block-library/cover/editor.min.css 631 B
build/styles/block-library/cover/style-rtl.css 2.5 kB
build/styles/block-library/cover/style-rtl.min.css 1.82 kB
build/styles/block-library/cover/style.css 2.51 kB
build/styles/block-library/cover/style.min.css 1.81 kB
build/styles/block-library/details/editor-rtl.css 72 B
build/styles/block-library/details/editor-rtl.min.css 65 B
build/styles/block-library/details/editor.css 72 B
build/styles/block-library/details/editor.min.css 65 B
build/styles/block-library/details/style-rtl.css 97 B
build/styles/block-library/details/style-rtl.min.css 86 B
build/styles/block-library/details/style.css 97 B
build/styles/block-library/details/style.min.css 86 B
build/styles/block-library/editor-elements-rtl.css 117 B
build/styles/block-library/editor-elements-rtl.min.css 75 B
build/styles/block-library/editor-elements.css 117 B
build/styles/block-library/editor-elements.min.css 75 B
build/styles/block-library/editor-rtl.css 12.5 kB
build/styles/block-library/editor-rtl.min.css 10.3 kB
build/styles/block-library/editor.css 12.5 kB
build/styles/block-library/editor.min.css 10.3 kB
build/styles/block-library/elements-rtl.css 84 B
build/styles/block-library/elements-rtl.min.css 54 B
build/styles/block-library/elements.css 84 B
build/styles/block-library/elements.min.css 54 B
build/styles/block-library/embed/editor-rtl.css 391 B
build/styles/block-library/embed/editor-rtl.min.css 331 B
build/styles/block-library/embed/editor.css 390 B
build/styles/block-library/embed/editor.min.css 331 B
build/styles/block-library/embed/style-rtl.css 1.29 kB
build/styles/block-library/embed/style-rtl.min.css 448 B
build/styles/block-library/embed/style.css 1.29 kB
build/styles/block-library/embed/style.min.css 448 B
build/styles/block-library/embed/theme-rtl.css 967 B
build/styles/block-library/embed/theme-rtl.min.css 133 B
build/styles/block-library/embed/theme.css 967 B
build/styles/block-library/embed/theme.min.css 133 B
build/styles/block-library/file/editor-rtl.css 352 B
build/styles/block-library/file/editor-rtl.min.css 324 B
build/styles/block-library/file/editor.css 353 B
build/styles/block-library/file/editor.min.css 324 B
build/styles/block-library/file/style-rtl.css 318 B
build/styles/block-library/file/style-rtl.min.css 278 B
build/styles/block-library/file/style.css 331 B
build/styles/block-library/file/style.min.css 278 B
build/styles/block-library/footnotes/style-rtl.css 220 B
build/styles/block-library/footnotes/style-rtl.min.css 198 B
build/styles/block-library/footnotes/style.css 219 B
build/styles/block-library/footnotes/style.min.css 197 B
build/styles/block-library/form-input/editor-rtl.css 286 B
build/styles/block-library/form-input/editor-rtl.min.css 265 B
build/styles/block-library/form-input/editor.css 285 B
build/styles/block-library/form-input/editor.min.css 264 B
build/styles/block-library/form-input/style-rtl.css 467 B
build/styles/block-library/form-input/style-rtl.min.css 366 B
build/styles/block-library/form-input/style.css 467 B
build/styles/block-library/form-input/style.min.css 366 B
build/styles/block-library/form-submission-notification/editor-rtl.css 368 B
build/styles/block-library/form-submission-notification/editor-rtl.min.css 344 B
build/styles/block-library/form-submission-notification/editor.css 368 B
build/styles/block-library/form-submission-notification/editor.min.css 341 B
build/styles/block-library/form-submit-button/style-rtl.css 77 B
build/styles/block-library/form-submit-button/style-rtl.min.css 69 B
build/styles/block-library/form-submit-button/style.css 77 B
build/styles/block-library/form-submit-button/style.min.css 69 B
build/styles/block-library/freeform/editor-rtl.css 1.12 kB
build/styles/block-library/freeform/editor-rtl.min.css 288 B
build/styles/block-library/freeform/editor.css 1.12 kB
build/styles/block-library/freeform/editor.min.css 288 B
build/styles/block-library/gallery/editor-rtl.css 1.46 kB
build/styles/block-library/gallery/editor-rtl.min.css 561 B
build/styles/block-library/gallery/editor.css 1.46 kB
build/styles/block-library/gallery/editor.min.css 564 B
build/styles/block-library/gallery/style-rtl.css 2.84 kB
build/styles/block-library/gallery/style-rtl.min.css 1.84 kB
build/styles/block-library/gallery/style.css 2.84 kB
build/styles/block-library/gallery/style.min.css 1.84 kB
build/styles/block-library/gallery/theme-rtl.css 941 B
build/styles/block-library/gallery/theme-rtl.min.css 108 B
build/styles/block-library/gallery/theme.css 941 B
build/styles/block-library/gallery/theme.min.css 108 B
build/styles/block-library/group/editor-rtl.css 772 B
build/styles/block-library/group/editor-rtl.min.css 335 B
build/styles/block-library/group/editor.css 772 B
build/styles/block-library/group/editor.min.css 335 B
build/styles/block-library/group/style-rtl.css 120 B
build/styles/block-library/group/style-rtl.min.css 103 B
build/styles/block-library/group/style.css 120 B
build/styles/block-library/group/style.min.css 103 B
build/styles/block-library/group/theme-rtl.css 468 B
build/styles/block-library/group/theme-rtl.min.css 79 B
build/styles/block-library/group/theme.css 468 B
build/styles/block-library/group/theme.min.css 79 B
build/styles/block-library/heading/style-rtl.css 604 B
build/styles/block-library/heading/style-rtl.min.css 205 B
build/styles/block-library/heading/style.css 604 B
build/styles/block-library/heading/style.min.css 205 B
build/styles/block-library/html/editor-rtl.css 1.29 kB
build/styles/block-library/html/editor-rtl.min.css 464 B
build/styles/block-library/html/editor.css 1.3 kB
build/styles/block-library/html/editor.min.css 464 B
build/styles/block-library/icon/editor-rtl.css 776 B
build/styles/block-library/icon/editor-rtl.min.css 377 B
build/styles/block-library/icon/editor.css 776 B
build/styles/block-library/icon/editor.min.css 377 B
build/styles/block-library/icon/style-rtl.css 218 B
build/styles/block-library/icon/style-rtl.min.css 154 B
build/styles/block-library/icon/style.css 218 B
build/styles/block-library/icon/style.min.css 154 B
build/styles/block-library/image/editor-rtl.css 1.64 kB
build/styles/block-library/image/editor-rtl.min.css 782 B
build/styles/block-library/image/editor.css 1.64 kB
build/styles/block-library/image/editor.min.css 780 B
build/styles/block-library/image/style-rtl.css 2.92 kB
build/styles/block-library/image/style-rtl.min.css 1.86 kB
build/styles/block-library/image/style.css 2.92 kB
build/styles/block-library/image/style.min.css 1.85 kB
build/styles/block-library/image/theme-rtl.css 971 B
build/styles/block-library/image/theme-rtl.min.css 137 B
build/styles/block-library/image/theme.css 971 B
build/styles/block-library/image/theme.min.css 137 B
build/styles/block-library/latest-comments/style-rtl.css 392 B
build/styles/block-library/latest-comments/style-rtl.min.css 352 B
build/styles/block-library/latest-comments/style.css 390 B
build/styles/block-library/latest-comments/style.min.css 352 B
build/styles/block-library/latest-posts/editor-rtl.css 154 B
build/styles/block-library/latest-posts/editor-rtl.min.css 139 B
build/styles/block-library/latest-posts/editor.css 153 B
build/styles/block-library/latest-posts/editor.min.css 138 B
build/styles/block-library/latest-posts/style-rtl.css 1.36 kB
build/styles/block-library/latest-posts/style-rtl.min.css 520 B
build/styles/block-library/latest-posts/style.css 1.37 kB
build/styles/block-library/latest-posts/style.min.css 520 B
build/styles/block-library/list/style-rtl.css 498 B
build/styles/block-library/list/style-rtl.min.css 107 B
build/styles/block-library/list/style.css 498 B
build/styles/block-library/list/style.min.css 107 B
build/styles/block-library/loginout/style-rtl.css 68 B
build/styles/block-library/loginout/style-rtl.min.css 61 B
build/styles/block-library/loginout/style.css 68 B
build/styles/block-library/loginout/style.min.css 61 B
build/styles/block-library/math/editor-rtl.css 491 B
build/styles/block-library/math/editor-rtl.min.css 105 B
build/styles/block-library/math/editor.css 502 B
build/styles/block-library/math/editor.min.css 105 B
build/styles/block-library/math/style-rtl.css 70 B
build/styles/block-library/math/style-rtl.min.css 61 B
build/styles/block-library/math/style.css 70 B
build/styles/block-library/math/style.min.css 61 B
build/styles/block-library/media-text/editor-rtl.css 389 B
build/styles/block-library/media-text/editor-rtl.min.css 321 B
build/styles/block-library/media-text/editor.css 389 B
build/styles/block-library/media-text/editor.min.css 320 B
build/styles/block-library/media-text/style-rtl.css 873 B
build/styles/block-library/media-text/style-rtl.min.css 552 B
build/styles/block-library/media-text/style.css 901 B
build/styles/block-library/media-text/style.min.css 550 B
build/styles/block-library/more/editor-rtl.css 796 B
build/styles/block-library/more/editor-rtl.min.css 393 B
build/styles/block-library/more/editor.css 798 B
build/styles/block-library/more/editor.min.css 393 B
build/styles/block-library/navigation-link/editor-rtl.css 1.28 kB
build/styles/block-library/navigation-link/editor-rtl.min.css 710 B
build/styles/block-library/navigation-link/editor.css 1.27 kB
build/styles/block-library/navigation-link/editor.min.css 713 B
build/styles/block-library/navigation-link/style-rtl.css 579 B
build/styles/block-library/navigation-link/style-rtl.min.css 190 B
build/styles/block-library/navigation-link/style.css 579 B
build/styles/block-library/navigation-link/style.min.css 188 B
build/styles/block-library/navigation-overlay-close/style-rtl.css 260 B
build/styles/block-library/navigation-overlay-close/style-rtl.min.css 237 B
build/styles/block-library/navigation-overlay-close/style.css 260 B
build/styles/block-library/navigation-overlay-close/style.min.css 237 B
build/styles/block-library/navigation-submenu/editor-rtl.css 1.12 kB
build/styles/block-library/navigation-submenu/editor-rtl.min.css 295 B
build/styles/block-library/navigation-submenu/editor.css 1.12 kB
build/styles/block-library/navigation-submenu/editor.min.css 294 B
build/styles/block-library/navigation/editor-rtl.css 3.28 kB
build/styles/block-library/navigation/editor-rtl.min.css 2.28 kB
build/styles/block-library/navigation/editor.css 3.29 kB
build/styles/block-library/navigation/editor.min.css 2.28 kB
build/styles/block-library/navigation/style-rtl.css 3.59 kB
build/styles/block-library/navigation/style-rtl.min.css 2.52 kB
build/styles/block-library/navigation/style.css 3.59 kB
build/styles/block-library/navigation/style.min.css 2.5 kB
build/styles/block-library/nextpage/editor-rtl.css 799 B
build/styles/block-library/nextpage/editor-rtl.min.css 392 B
build/styles/block-library/nextpage/editor.css 800 B
build/styles/block-library/nextpage/editor.min.css 392 B
build/styles/block-library/page-list/editor-rtl.css 1.18 kB
build/styles/block-library/page-list/editor-rtl.min.css 356 B
build/styles/block-library/page-list/editor.css 1.18 kB
build/styles/block-library/page-list/editor.min.css 356 B
build/styles/block-library/page-list/style-rtl.css 207 B
build/styles/block-library/page-list/style-rtl.min.css 192 B
build/styles/block-library/page-list/style.css 207 B
build/styles/block-library/page-list/style.min.css 192 B
build/styles/block-library/paragraph/editor-rtl.css 315 B
build/styles/block-library/paragraph/editor-rtl.min.css 292 B
build/styles/block-library/paragraph/editor.css 314 B
build/styles/block-library/paragraph/editor.min.css 292 B
build/styles/block-library/paragraph/style-rtl.css 746 B
build/styles/block-library/paragraph/style-rtl.min.css 341 B
build/styles/block-library/paragraph/style.css 752 B
build/styles/block-library/paragraph/style.min.css 340 B
build/styles/block-library/playlist-track/style-rtl.css 453 B
build/styles/block-library/playlist-track/style-rtl.min.css 420 B
build/styles/block-library/playlist-track/style.css 453 B
build/styles/block-library/playlist-track/style.min.css 420 B
build/styles/block-library/playlist/editor-rtl.css 120 B
build/styles/block-library/playlist/editor-rtl.min.css 112 B
build/styles/block-library/playlist/editor.css 120 B
build/styles/block-library/playlist/editor.min.css 112 B
build/styles/block-library/playlist/style-rtl.css 1.52 kB
build/styles/block-library/playlist/style-rtl.min.css 1.42 kB
build/styles/block-library/playlist/style.css 1.52 kB
build/styles/block-library/playlist/style.min.css 1.42 kB
build/styles/block-library/post-author-biography/style-rtl.css 96 B
build/styles/block-library/post-author-biography/style-rtl.min.css 86 B
build/styles/block-library/post-author-biography/style.css 96 B
build/styles/block-library/post-author-biography/style.min.css 86 B
build/styles/block-library/post-author-name/style-rtl.css 76 B
build/styles/block-library/post-author-name/style-rtl.min.css 69 B
build/styles/block-library/post-author-name/style.css 76 B
build/styles/block-library/post-author-name/style.min.css 69 B
build/styles/block-library/post-author/editor-rtl.css 490 B
build/styles/block-library/post-author/editor-rtl.min.css 104 B
build/styles/block-library/post-author/editor.css 490 B
build/styles/block-library/post-author/editor.min.css 104 B
build/styles/block-library/post-author/style-rtl.css 213 B
build/styles/block-library/post-author/style-rtl.min.css 188 B
build/styles/block-library/post-author/style.css 214 B
build/styles/block-library/post-author/style.min.css 189 B
build/styles/block-library/post-comments-count/style-rtl.css 79 B
build/styles/block-library/post-comments-count/style-rtl.min.css 72 B
build/styles/block-library/post-comments-count/style.css 79 B
build/styles/block-library/post-comments-count/style.min.css 72 B
build/styles/block-library/post-comments-form/editor-rtl.css 104 B
build/styles/block-library/post-comments-form/editor-rtl.min.css 96 B
build/styles/block-library/post-comments-form/editor.css 104 B
build/styles/block-library/post-comments-form/editor.min.css 96 B
build/styles/block-library/post-comments-form/style-rtl.css 585 B
build/styles/block-library/post-comments-form/style-rtl.min.css 525 B
build/styles/block-library/post-comments-form/style.css 584 B
build/styles/block-library/post-comments-form/style.min.css 525 B
build/styles/block-library/post-comments-link/style-rtl.css 78 B
build/styles/block-library/post-comments-link/style-rtl.min.css 71 B
build/styles/block-library/post-comments-link/style.css 78 B
build/styles/block-library/post-comments-link/style.min.css 71 B
build/styles/block-library/post-content/style-rtl.css 68 B
build/styles/block-library/post-content/style-rtl.min.css 61 B
build/styles/block-library/post-content/style.css 68 B
build/styles/block-library/post-content/style.min.css 61 B
build/styles/block-library/post-date/style-rtl.css 69 B
build/styles/block-library/post-date/style-rtl.min.css 62 B
build/styles/block-library/post-date/style.css 69 B
build/styles/block-library/post-date/style.min.css 62 B
build/styles/block-library/post-excerpt/editor-rtl.css 78 B
build/styles/block-library/post-excerpt/editor-rtl.min.css 71 B
build/styles/block-library/post-excerpt/editor.css 78 B
build/styles/block-library/post-excerpt/editor.min.css 71 B
build/styles/block-library/post-excerpt/style-rtl.css 171 B
build/styles/block-library/post-excerpt/style-rtl.min.css 155 B
build/styles/block-library/post-excerpt/style.css 171 B
build/styles/block-library/post-excerpt/style.min.css 155 B
build/styles/block-library/post-featured-image/editor-rtl.css 1.14 kB
build/styles/block-library/post-featured-image/editor-rtl.min.css 719 B
build/styles/block-library/post-featured-image/editor.css 1.14 kB
build/styles/block-library/post-featured-image/editor.min.css 717 B
build/styles/block-library/post-featured-image/style-rtl.css 392 B
build/styles/block-library/post-featured-image/style-rtl.min.css 347 B
build/styles/block-library/post-featured-image/style.css 392 B
build/styles/block-library/post-featured-image/style.min.css 347 B
build/styles/block-library/post-navigation-link/style-rtl.css 234 B
build/styles/block-library/post-navigation-link/style-rtl.min.css 215 B
build/styles/block-library/post-navigation-link/style.css 245 B
build/styles/block-library/post-navigation-link/style.min.css 214 B
build/styles/block-library/post-template/style-rtl.css 1.27 kB
build/styles/block-library/post-template/style-rtl.min.css 441 B
build/styles/block-library/post-template/style.css 1.27 kB
build/styles/block-library/post-template/style.min.css 441 B
build/styles/block-library/post-terms/style-rtl.css 108 B
build/styles/block-library/post-terms/style-rtl.min.css 96 B
build/styles/block-library/post-terms/style.css 108 B
build/styles/block-library/post-terms/style.min.css 96 B
build/styles/block-library/post-time-to-read/style-rtl.css 77 B
build/styles/block-library/post-time-to-read/style-rtl.min.css 70 B
build/styles/block-library/post-time-to-read/style.css 77 B
build/styles/block-library/post-time-to-read/style.min.css 70 B
build/styles/block-library/post-title/style-rtl.css 175 B
build/styles/block-library/post-title/style-rtl.min.css 162 B
build/styles/block-library/post-title/style.css 175 B
build/styles/block-library/post-title/style.min.css 162 B
build/styles/block-library/preformatted/style-rtl.css 511 B
build/styles/block-library/preformatted/style-rtl.min.css 125 B
build/styles/block-library/preformatted/style.css 511 B
build/styles/block-library/preformatted/style.min.css 125 B
build/styles/block-library/pullquote/editor-rtl.css 146 B
build/styles/block-library/pullquote/editor-rtl.min.css 133 B
build/styles/block-library/pullquote/editor.css 146 B
build/styles/block-library/pullquote/editor.min.css 133 B
build/styles/block-library/pullquote/style-rtl.css 765 B
build/styles/block-library/pullquote/style-rtl.min.css 365 B
build/styles/block-library/pullquote/style.css 764 B
build/styles/block-library/pullquote/style.min.css 365 B
build/styles/block-library/pullquote/theme-rtl.css 195 B
build/styles/block-library/pullquote/theme-rtl.min.css 176 B
build/styles/block-library/pullquote/theme.css 195 B
build/styles/block-library/pullquote/theme.min.css 176 B
build/styles/block-library/query-pagination-numbers/editor-rtl.css 134 B
build/styles/block-library/query-pagination-numbers/editor-rtl.min.css 121 B
build/styles/block-library/query-pagination-numbers/editor.css 144 B
build/styles/block-library/query-pagination-numbers/editor.min.css 118 B
build/styles/block-library/query-pagination/editor-rtl.css 168 B
build/styles/block-library/query-pagination/editor-rtl.min.css 154 B
build/styles/block-library/query-pagination/editor.css 168 B
build/styles/block-library/query-pagination/editor.min.css 154 B
build/styles/block-library/query-pagination/style-rtl.css 254 B
build/styles/block-library/query-pagination/style-rtl.min.css 237 B
build/styles/block-library/query-pagination/style.css 265 B
build/styles/block-library/query-pagination/style.min.css 237 B
build/styles/block-library/query-title/style-rtl.css 71 B
build/styles/block-library/query-title/style-rtl.min.css 64 B
build/styles/block-library/query-title/style.css 71 B
build/styles/block-library/query-title/style.min.css 64 B
build/styles/block-library/query-total/style-rtl.css 71 B
build/styles/block-library/query-total/style-rtl.min.css 64 B
build/styles/block-library/query-total/style.css 71 B
build/styles/block-library/query-total/style.min.css 64 B
build/styles/block-library/query/editor-rtl.css 1.28 kB
build/styles/block-library/query/editor-rtl.min.css 438 B
build/styles/block-library/query/editor.css 1.28 kB
build/styles/block-library/query/editor.min.css 438 B
build/styles/block-library/quote/style-rtl.css 255 B
build/styles/block-library/quote/style-rtl.min.css 238 B
build/styles/block-library/quote/style.css 256 B
build/styles/block-library/quote/style.min.css 238 B
build/styles/block-library/quote/theme-rtl.css 253 B
build/styles/block-library/quote/theme-rtl.min.css 233 B
build/styles/block-library/quote/theme.css 254 B
build/styles/block-library/quote/theme.min.css 236 B
build/styles/block-library/read-more/style-rtl.css 146 B
build/styles/block-library/read-more/style-rtl.min.css 131 B
build/styles/block-library/read-more/style.css 146 B
build/styles/block-library/read-more/style.min.css 131 B
build/styles/block-library/reset-rtl.css 936 B
build/styles/block-library/reset-rtl.min.css 467 B
build/styles/block-library/reset.css 936 B
build/styles/block-library/reset.min.css 467 B
build/styles/block-library/rss/editor-rtl.css 144 B
build/styles/block-library/rss/editor-rtl.min.css 126 B
build/styles/block-library/rss/editor.css 144 B
build/styles/block-library/rss/editor.min.css 126 B
build/styles/block-library/rss/style-rtl.css 1.11 kB
build/styles/block-library/rss/style-rtl.min.css 284 B
build/styles/block-library/rss/style.css 1.12 kB
build/styles/block-library/rss/style.min.css 283 B
build/styles/block-library/search/editor-rtl.css 217 B
build/styles/block-library/search/editor-rtl.min.css 199 B
build/styles/block-library/search/editor.css 217 B
build/styles/block-library/search/editor.min.css 199 B
build/styles/block-library/search/style-rtl.css 1.1 kB
build/styles/block-library/search/style-rtl.min.css 665 B
build/styles/block-library/search/style.css 1.1 kB
build/styles/block-library/search/style.min.css 666 B
build/styles/block-library/search/theme-rtl.css 130 B
build/styles/block-library/search/theme-rtl.min.css 113 B
build/styles/block-library/search/theme.css 130 B
build/styles/block-library/search/theme.min.css 113 B
build/styles/block-library/separator/editor-rtl.css 106 B
build/styles/block-library/separator/editor-rtl.min.css 100 B
build/styles/block-library/separator/editor.css 106 B
build/styles/block-library/separator/editor.min.css 100 B
build/styles/block-library/separator/style-rtl.css 284 B
build/styles/block-library/separator/style-rtl.min.css 248 B
build/styles/block-library/separator/style.css 297 B
build/styles/block-library/separator/style.min.css 248 B
build/styles/block-library/separator/theme-rtl.css 226 B
build/styles/block-library/separator/theme-rtl.min.css 195 B
build/styles/block-library/separator/theme.css 226 B
build/styles/block-library/separator/theme.min.css 195 B
build/styles/block-library/shortcode/editor-rtl.css 1.1 kB
build/styles/block-library/shortcode/editor-rtl.min.css 286 B
build/styles/block-library/shortcode/editor.css 1.1 kB
build/styles/block-library/shortcode/editor.min.css 286 B
build/styles/block-library/site-logo/editor-rtl.css 1.12 kB
build/styles/block-library/site-logo/editor-rtl.min.css 696 B
build/styles/block-library/site-logo/editor.css 1.12 kB
build/styles/block-library/site-logo/editor.min.css 692 B
build/styles/block-library/site-logo/style-rtl.css 239 B
build/styles/block-library/site-logo/style-rtl.min.css 218 B
build/styles/block-library/site-logo/style.css 238 B
build/styles/block-library/site-logo/style.min.css 218 B
build/styles/block-library/site-tagline/editor-rtl.css 94 B
build/styles/block-library/site-tagline/editor-rtl.min.css 87 B
build/styles/block-library/site-tagline/editor.css 94 B
build/styles/block-library/site-tagline/editor.min.css 87 B
build/styles/block-library/site-tagline/style-rtl.css 72 B
build/styles/block-library/site-tagline/style-rtl.min.css 65 B
build/styles/block-library/site-tagline/style.css 72 B
build/styles/block-library/site-tagline/style.min.css 65 B
build/styles/block-library/site-title/editor-rtl.css 93 B
build/styles/block-library/site-title/editor-rtl.min.css 85 B
build/styles/block-library/site-title/editor.css 93 B
build/styles/block-library/site-title/editor.min.css 85 B
build/styles/block-library/site-title/style-rtl.css 153 B
build/styles/block-library/site-title/style-rtl.min.css 143 B
build/styles/block-library/site-title/style.css 153 B
build/styles/block-library/site-title/style.min.css 143 B
build/styles/block-library/social-link/editor-rtl.css 346 B
build/styles/block-library/social-link/editor-rtl.min.css 314 B
build/styles/block-library/social-link/editor.css 348 B
build/styles/block-library/social-link/editor.min.css 314 B
build/styles/block-library/social-links/editor-rtl.css 737 B
build/styles/block-library/social-links/editor-rtl.min.css 339 B
build/styles/block-library/social-links/editor.css 738 B
build/styles/block-library/social-links/editor.min.css 338 B
build/styles/block-library/social-links/style-rtl.css 1.57 kB
build/styles/block-library/social-links/style-rtl.min.css 1.51 kB
build/styles/block-library/social-links/style.css 1.57 kB
build/styles/block-library/social-links/style.min.css 1.51 kB
build/styles/block-library/spacer/editor-rtl.css 774 B
build/styles/block-library/spacer/editor-rtl.min.css 346 B
build/styles/block-library/spacer/editor.css 774 B
build/styles/block-library/spacer/editor.min.css 346 B
build/styles/block-library/spacer/style-rtl.css 55 B
build/styles/block-library/spacer/style-rtl.min.css 48 B
build/styles/block-library/spacer/style.css 55 B
build/styles/block-library/spacer/style.min.css 48 B
build/styles/block-library/style-rtl.css 21.6 kB
build/styles/block-library/style-rtl.min.css 18.1 kB
build/styles/block-library/style.css 21.7 kB
build/styles/block-library/style.min.css 18 kB
build/styles/block-library/tab-list/editor-rtl.css 107 B
build/styles/block-library/tab-list/editor-rtl.min.css 97 B
build/styles/block-library/tab-list/editor.css 107 B
build/styles/block-library/tab-list/editor.min.css 97 B
build/styles/block-library/tab-panel/style-rtl.css 238 B
build/styles/block-library/tab-panel/style-rtl.min.css 215 B
build/styles/block-library/tab-panel/style.css 238 B
build/styles/block-library/tab-panel/style.min.css 215 B
build/styles/block-library/tab-panels/style-rtl.css 76 B
build/styles/block-library/tab-panels/style-rtl.min.css 65 B
build/styles/block-library/tab-panels/style.css 76 B
build/styles/block-library/tab-panels/style.min.css 65 B
build/styles/block-library/tab/editor-rtl.css 160 B
build/styles/block-library/tab/editor-rtl.min.css 148 B
build/styles/block-library/tab/editor.css 160 B
build/styles/block-library/tab/editor.min.css 148 B
build/styles/block-library/tab/style-rtl.css 397 B
build/styles/block-library/tab/style-rtl.min.css 352 B
build/styles/block-library/tab/style.css 398 B
build/styles/block-library/tab/style.min.css 356 B
build/styles/block-library/table-of-contents/style-rtl.css 89 B
build/styles/block-library/table-of-contents/style-rtl.min.css 83 B
build/styles/block-library/table-of-contents/style.css 89 B
build/styles/block-library/table-of-contents/style.min.css 83 B
build/styles/block-library/table/editor-rtl.css 1.25 kB
build/styles/block-library/table/editor-rtl.min.css 394 B
build/styles/block-library/table/editor.css 1.25 kB
build/styles/block-library/table/editor.min.css 394 B
build/styles/block-library/table/style-rtl.css 1.06 kB
build/styles/block-library/table/style-rtl.min.css 641 B
build/styles/block-library/table/style.css 1.06 kB
build/styles/block-library/table/style.min.css 640 B
build/styles/block-library/table/theme-rtl.css 985 B
build/styles/block-library/table/theme-rtl.min.css 152 B
build/styles/block-library/table/theme.css 985 B
build/styles/block-library/table/theme.min.css 152 B
build/styles/block-library/tabs/style-rtl.css 64 B
build/styles/block-library/tabs/style-rtl.min.css 57 B
build/styles/block-library/tabs/style.css 64 B
build/styles/block-library/tabs/style.min.css 57 B
build/styles/block-library/tag-cloud/style-rtl.css 283 B
build/styles/block-library/tag-cloud/style-rtl.min.css 248 B
build/styles/block-library/tag-cloud/style.css 283 B
build/styles/block-library/tag-cloud/style.min.css 248 B
build/styles/block-library/template-part/editor-rtl.css 1.2 kB
build/styles/block-library/template-part/editor-rtl.min.css 368 B
build/styles/block-library/template-part/editor.css 1.2 kB
build/styles/block-library/template-part/editor.min.css 368 B
build/styles/block-library/template-part/theme-rtl.css 492 B
build/styles/block-library/template-part/theme-rtl.min.css 113 B
build/styles/block-library/template-part/theme.css 492 B
build/styles/block-library/template-part/theme.min.css 113 B
build/styles/block-library/term-count/style-rtl.css 70 B
build/styles/block-library/term-count/style-rtl.min.css 63 B
build/styles/block-library/term-count/style.css 70 B
build/styles/block-library/term-count/style.min.css 63 B
build/styles/block-library/term-description/style-rtl.css 138 B
build/styles/block-library/term-description/style-rtl.min.css 126 B
build/styles/block-library/term-description/style.css 138 B
build/styles/block-library/term-description/style.min.css 126 B
build/styles/block-library/term-name/style-rtl.css 69 B
build/styles/block-library/term-name/style-rtl.min.css 62 B
build/styles/block-library/term-name/style.css 69 B
build/styles/block-library/term-name/style.min.css 62 B
build/styles/block-library/term-template/editor-rtl.css 267 B
build/styles/block-library/term-template/editor-rtl.min.css 225 B
build/styles/block-library/term-template/editor.css 267 B
build/styles/block-library/term-template/editor.min.css 225 B
build/styles/block-library/term-template/style-rtl.css 124 B
build/styles/block-library/term-template/style-rtl.min.css 114 B
build/styles/block-library/term-template/style.css 124 B
build/styles/block-library/term-template/style.min.css 114 B
build/styles/block-library/text-columns/editor-rtl.css 481 B
build/styles/block-library/text-columns/editor-rtl.min.css 95 B
build/styles/block-library/text-columns/editor.css 481 B
build/styles/block-library/text-columns/editor.min.css 95 B
build/styles/block-library/text-columns/style-rtl.css 177 B
build/styles/block-library/text-columns/style-rtl.min.css 165 B
build/styles/block-library/text-columns/style.css 177 B
build/styles/block-library/text-columns/style.min.css 165 B
build/styles/block-library/theme-rtl.css 1.59 kB
build/styles/block-library/theme-rtl.min.css 715 B
build/styles/block-library/theme.css 1.6 kB
build/styles/block-library/theme.min.css 719 B
build/styles/block-library/verse/style-rtl.css 155 B
build/styles/block-library/verse/style-rtl.min.css 137 B
build/styles/block-library/verse/style.css 155 B
build/styles/block-library/verse/style.min.css 137 B
build/styles/block-library/video/editor-rtl.css 839 B
build/styles/block-library/video/editor-rtl.min.css 428 B
build/styles/block-library/video/editor.css 840 B
build/styles/block-library/video/editor.min.css 428 B
build/styles/block-library/video/style-rtl.css 1.02 kB
build/styles/block-library/video/style-rtl.min.css 202 B
build/styles/block-library/video/style.css 1.02 kB
build/styles/block-library/video/style.min.css 202 B
build/styles/block-library/video/theme-rtl.css 967 B
build/styles/block-library/video/theme-rtl.min.css 134 B
build/styles/block-library/video/theme.css 967 B
build/styles/block-library/video/theme.min.css 134 B
build/styles/commands/style-rtl.css 2.07 kB
build/styles/commands/style-rtl.min.css 1.17 kB
build/styles/commands/style.css 2.06 kB
build/styles/commands/style.min.css 1.17 kB
build/styles/components/style-rtl.css 17.8 kB
build/styles/components/style-rtl.min.css 14.7 kB
build/styles/components/style.css 17.9 kB
build/styles/components/style.min.css 14.8 kB
build/styles/customize-widgets/style-rtl.css 2.35 kB
build/styles/customize-widgets/style-rtl.min.css 1.44 kB
build/styles/customize-widgets/style.css 2.35 kB
build/styles/customize-widgets/style.min.css 1.44 kB
build/styles/edit-post/classic-rtl.css 1.29 kB
build/styles/edit-post/classic-rtl.min.css 425 B
build/styles/edit-post/classic.css 1.31 kB
build/styles/edit-post/classic.min.css 428 B
build/styles/edit-post/experimental-admin-bar-in-editor-rtl.css 550 B
build/styles/edit-post/experimental-admin-bar-in-editor-rtl.min.css 513 B
build/styles/edit-post/experimental-admin-bar-in-editor.css 551 B
build/styles/edit-post/experimental-admin-bar-in-editor.min.css 514 B
build/styles/edit-post/style-rtl.css 3.8 kB
build/styles/edit-post/style-rtl.min.css 2.48 kB
build/styles/edit-post/style.css 3.81 kB
build/styles/edit-post/style.min.css 2.49 kB
build/styles/edit-site/experimental-admin-bar-in-editor-rtl.css 502 B
build/styles/edit-site/experimental-admin-bar-in-editor-rtl.min.css 474 B
build/styles/edit-site/experimental-admin-bar-in-editor.css 502 B
build/styles/edit-site/experimental-admin-bar-in-editor.min.css 474 B
build/styles/edit-site/style-rtl.css 21.3 kB
build/styles/edit-site/style-rtl.min.css 17.4 kB
build/styles/edit-site/style.css 21.3 kB
build/styles/edit-site/style.min.css 17.4 kB
build/styles/edit-widgets/style-rtl.css 4.85 kB
build/styles/edit-widgets/style-rtl.min.css 3.52 kB
build/styles/edit-widgets/style.css 4.85 kB
build/styles/edit-widgets/style.min.css 3.52 kB
build/styles/editor/style-rtl.css 29.5 kB
build/styles/editor/style-rtl.min.css 24.9 kB
build/styles/editor/style.css 29.5 kB
build/styles/editor/style.min.css 24.9 kB
build/styles/format-library/style-rtl.css 735 B
build/styles/format-library/style-rtl.min.css 326 B
build/styles/format-library/style.css 746 B
build/styles/format-library/style.min.css 326 B
build/styles/list-reusable-blocks/style-rtl.css 1.03 kB
build/styles/list-reusable-blocks/style-rtl.min.css 210 B
build/styles/list-reusable-blocks/style.css 1.03 kB
build/styles/list-reusable-blocks/style.min.css 211 B
build/styles/media-utils/style-rtl.css 2.12 kB
build/styles/media-utils/style-rtl.min.css 1.2 kB
build/styles/media-utils/style.css 2.11 kB
build/styles/media-utils/style.min.css 1.2 kB
build/styles/notices/style-rtl.css 121 B
build/styles/notices/style-rtl.min.css 106 B
build/styles/notices/style.css 121 B
build/styles/notices/style.min.css 106 B
build/styles/nux/style-rtl.css 1.48 kB
build/styles/nux/style-rtl.min.css 622 B
build/styles/nux/style.css 1.5 kB
build/styles/nux/style.min.css 618 B
build/styles/patterns/style-rtl.css 1.46 kB
build/styles/patterns/style-rtl.min.css 611 B
build/styles/patterns/style.css 1.46 kB
build/styles/patterns/style.min.css 611 B
build/styles/preferences/style-rtl.css 1.26 kB
build/styles/preferences/style-rtl.min.css 415 B
build/styles/preferences/style.css 1.26 kB
build/styles/preferences/style.min.css 415 B
build/styles/reusable-blocks/style-rtl.css 1.11 kB
build/styles/reusable-blocks/style-rtl.min.css 275 B
build/styles/reusable-blocks/style.css 1.11 kB
build/styles/reusable-blocks/style.min.css 275 B
build/styles/widgets/style-rtl.css 2.05 kB
build/styles/widgets/style-rtl.min.css 1.16 kB
build/styles/widgets/style.css 2.06 kB
build/styles/widgets/style.min.css 1.16 kB

compressed-size-action

@github-actions

github-actions Bot commented May 27, 2026

Copy link
Copy Markdown

Flaky tests detected in 94e03e0.
Some tests passed with failed attempts. The failures may not be related to this commit but are still reported for visibility. See the documentation for more information.

🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/26555870601
📝 Reported issues:

@github-actions github-actions Bot removed the [Package] Editor /packages/editor label May 27, 2026

@andrewserong andrewserong left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fascinating, and good catch! Interesting that skipping the await appears to resolve it (i.e. not waiting before opening the modal), I wonder if it's due to re-renders or reloads due to the entity being re-fetched 🤔

While this fixes the issue for me when an image block is at the root of the document, I still see the focus loss issue if I open the modal from an image block that's within a gallery block:

2026-05-28.10.29.23.mp4

Are you able to reproduce, or is it just me?

@ramonjd

ramonjd commented May 28, 2026

Copy link
Copy Markdown
Member Author

Are you able to reproduce, or is it just me?

Nice catch. Not just you. I'll take a look. 🤞🏻 it can be fixed in the same place

@ramonjd

ramonjd commented May 28, 2026

Copy link
Copy Markdown
Member Author

I'll take a look. 🤞🏻 it can be fixed in the same place

I ran a couple of E2E tests to debug, and the trace shows this sequence:

  1. The Gallery image crop button is focused correctly before opening
  2. The media editor opens and focus moves into the modal’s Crop area.
  3. On close, that focused Crop area unmounts first.
  4. The browser drops focus to document.body.
  5. Then useFocusReturn() cleans up the Modal frame, sees the frame is still connected and focus is outside it, and exits early here: use-focus-return/index.js (line 63).

The bug is probably not Gallery-specific. An Image block hits the same failure if focus is on a crop handle or something else when closing. Because the element that currently owns focus is being removed from the DOM.

Browsers need document.activeElement to point somewhere. When the focused element unmounts and no script immediately moves focus somewhere else, the fallback is usually document.body (sometimes document.documentElement, depending on browser/context).

This means the fix is rather in useFocusReturn() not here - useFocusReturn() sees that the focused descendant was removed and thinks the browser had nowhere better to put focus.

@ramonjd

ramonjd commented May 28, 2026

Copy link
Copy Markdown
Member Author

This means the fix is rather in useFocusReturn() not here - useFocusReturn() sees that the focused descendant was removed and thinks the browser had nowhere better to put focus.

Okay, so I traced that as well. Tweaking that doesn’t fix it either 🤦🏻 The crop surface auto-focuses, the discard ConfirmDialog restores focus back into the media editor, then the media editor unmounts and no code returns focus to the original toolbar Crop button.

So with those two doors closed the original commit 8cb0077 is closer what we'd need to do to fix it. Whether it's worth it, I dunno. I'll get that up so we can appraise.

@andrewserong

andrewserong commented May 28, 2026

Copy link
Copy Markdown
Contributor

So with those two doors closed the original commit 8cb0077 is closer what we'd need to do to fix it. Whether it's worth it, I dunno. I'll get that up so we can appraise.

Oh, I actually don't mind that! It makes sense for the media editor / modal to support an onClose callback so the editor can do something when it closes (could even shoot confetti if we really wanted to 🎉 :trollface: ), and adding a ref to the crop button doesn't seem too messy to me.

@github-actions github-actions Bot added the [Package] Editor /packages/editor label May 28, 2026
@ramonjd

ramonjd commented May 28, 2026

Copy link
Copy Markdown
Member Author

It makes sense for the media editor / modal to support an onClose callback so the editor can do something when it closes (could even shoot confetti if we really wanted to 🎉 :trollface: ), and adding a ref to the crop button doesn't seem too messy to me.

Fair call! Thanks. I just wanted to make sure I tried everything 😄

I'll restore that commit.

@ramonjd ramonjd force-pushed the fix/crop-icon-focus-after-modal-close branch from 1e3f44c to 8cb0077 Compare May 28, 2026 02:52
@ramonjd ramonjd force-pushed the fix/crop-icon-focus-after-modal-close branch from 8cb0077 to 5c400d4 Compare May 28, 2026 02:53

@andrewserong andrewserong left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this approach and the addition of an onClose callback, and it has nice symmetry with the onUpdate callback, so it feels good to me as an API.

Working nicely at the root level or nested in a Gallery block now.

Just left a couple of tiny notes: one about whether we need a useCallback, but just nits really.

LGTM! 🚀

event.stopPropagation();
};

const closeAndRestoreFocus = () => {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to rename this as it's an internal function, but from the modal's perspective onClose() isn't necessarily something that restores focus. It could be the consumer fires off a UI state change of some kind (like a UI effect, etc). So, and not a strong opinion, we might call this handleClose or something like that.

All that said, calling it closeAndRestoreFocus is clear about the intent of the callback, so it's likely fine to leave it. I'm just thinking out loud!

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point. Harmless to rename it here. Will do it. Thanks for testing and sticking with me here 😄

Comment thread packages/block-library/src/image/image.js Outdated
@ramonjd ramonjd enabled auto-merge (squash) May 28, 2026 05:24
@ramonjd ramonjd merged commit 898fda7 into trunk May 28, 2026
41 of 43 checks passed
@ramonjd ramonjd deleted the fix/crop-icon-focus-after-modal-close branch May 28, 2026 05:48
@github-actions github-actions Bot added this to the Gutenberg 23.4 milestone May 28, 2026
@andrewserong andrewserong added the Backport to Gutenberg RC Pull request that needs to be backported to a Gutenberg release candidate (RC) label May 29, 2026
cbravobernal pushed a commit that referenced this pull request Jun 1, 2026
Co-authored-by: ramonjd <ramonopoly@git.wordpress.org>
Co-authored-by: andrewserong <andrewserong@git.wordpress.org>
@cbravobernal

Copy link
Copy Markdown
Contributor

I just cherry-picked this PR to the release/23.3 branch to get it included in the next release: 78b3f53

@cbravobernal cbravobernal removed the Backport to Gutenberg RC Pull request that needs to be backported to a Gutenberg release candidate (RC) label Jun 1, 2026
@arthur791004 arthur791004 mentioned this pull request Jun 2, 2026
24 tasks
pento pushed a commit to WordPress/wordpress-develop that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.2.0..v23.3.0.

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65560.

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 602fd350-edb4-49c9-b593-d223f7449a82
markjaquith pushed a commit to WordPress/WordPress that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.2.0..v23.3.0.

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65560.
Built from https://develop.svn.wordpress.org/trunk@62583


git-svn-id: http://core.svn.wordpress.org/trunk@61863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
pento pushed a commit to WordPress/wordpress-develop that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
markjaquith pushed a commit to markjaquith/WordPress that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.
Built from https://develop.svn.wordpress.org/trunk@62584


git-svn-id: http://core.svn.wordpress.org/trunk@61864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
KhushalSainS pushed a commit to KhushalSainS/wordpress-develop that referenced this pull request Jul 1, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.2.0..v23.3.0.

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65560.

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 602fd350-edb4-49c9-b593-d223f7449a82
KhushalSainS pushed a commit to KhushalSainS/wordpress-develop that referenced this pull request Jul 1, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
SteelWagstaff pushed a commit to SteelWagstaff/wordpress-develop that referenced this pull request Jul 2, 2026
This updates the pinned commit hash of the Gutenberg repository from `d5ac60e6118060529737127d44a6fdc8abf57eb9 ` (version `23.2.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.3.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.2.0..v23.3.0.

The following commits are included:
- Performance tests: fix template click, delete pages at startup (WordPress/gutenberg#78193)
- [ui] Add internal wp compat overlay slot helper (WordPress/gutenberg#77851)
- Build: Detect stale node_modules at build/dev time (WordPress/gutenberg#77995)
- migrated __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack (WordPress/gutenberg#78155)
- Connectors: Restyle AI plugin callout with pastel background and beaker decoration (WordPress/gutenberg#78243)
- RTC: fix cursor awareness / presence bug in nested rich text elements (WordPress/gutenberg#77673)
- Core Data: Share parsed blocks cache between resolver and editor hook (WordPress/gutenberg#78026)
- Block supports: Optimize custom CSS class rendering and parsing (WordPress/gutenberg#78217)
- scripts: Fix path for license type detection in license.js (WordPress/gutenberg#78245)
- Extract media editor save hook (WordPress/gutenberg#78225)
- Block Library: Fix Tabs block losing added tabs when the editor is reopened (WordPress/gutenberg#78250)
- Extract media editor crop options hook (WordPress/gutenberg#78263)
- Media Editor Modal: Add custom datetime view for the sidebar to ensure minimal display of dates (WordPress/gutenberg#78265)
- Block Inspector: Hide Styles tab in preview mode (WordPress/gutenberg#78230)
- Move Layout panel into styles tab so it sits next to Dimensions (WordPress/gutenberg#77922)
- Media Editor Modal: Only show the crop active state when using keyboard (WordPress/gutenberg#78266)
- Add supports for pseudo states on single block instances (WordPress/gutenberg#76491)
- Perf tests: Save Chromium traces as CI artifacts (WordPress/gutenberg#77974)
- Media editor: show live crop dimensions during gesture (WordPress/gutenberg#78221)
- Fix flaky navigation frontend submenu e2e test (WordPress/gutenberg#78270)
- Widget dashboard: skip tile hover elevation while resizing (WordPress/gutenberg#78234)
- DataViews: Adopt `@wordpress/theme` design tokens  (WordPress/gutenberg#75204)
- Home Link: Add missing controls (WordPress/gutenberg#76672)
- Overlays: Extend positioner slot pattern to Popover, Select, Autocomplete (WordPress/gutenberg#78168)
- Make RTC-related APIs private (WordPress/gutenberg#78097)
- Block Toolbar: Prevent position shifts when using mover control (WordPress/gutenberg#77798)
- Experiment: Add default term for taxonomies (WordPress/gutenberg#78233)
- [ui] Tooltip: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78095)
- Performance Tests: log timestamps, optimize build overhead (WordPress/gutenberg#78237)
- Editor: Disable Visual Revisions when classic meta boxes are present (WordPress/gutenberg#78249)
- Stabilize small-scope flaky e2e tests (WordPress/gutenberg#77893)
- Navigation Link: Preserve custom labels during link updates (WordPress/gutenberg#77186)
- Tests: Add `timezone-mock` to `test/unit/package.json` (WordPress/gutenberg#78277)
- Fix performance tests when running against old reference commit (WordPress/gutenberg#78288)
- Editor: Fix Visual Revisions meta keys overlap (WordPress/gutenberg#78156)
- Stylelint: Add more exemptions to logical properties rules (WordPress/gutenberg#78252)
- Menu: Reduce flaky Space key test scope (WordPress/gutenberg#78246)
- Revisions: Scale diff markers width with user text-size preference (WordPress/gutenberg#78273)
- Refactor validation tools and update related scripts (WordPress/gutenberg#77522)
- Storybook: Add text overflow E2E stories (WordPress/gutenberg#78256)
- Routes: Enforce logical CSS properties in stylesheets (WordPress/gutenberg#78291)
- Migrate pattern list item titles to Text from @wordpress/ui (WordPress/gutenberg#77656)
- Perf tests: Capture loading durations before stopTracing() (WordPress/gutenberg#78294)
- Perf tests: Disable Playwright tracing to remove snapshot overhead (WordPress/gutenberg#78295)
- Notes: Support multiple note threads per block (WordPress/gutenberg#75147)
- make widget framework types generic (WordPress/gutenberg#78247)
- Blocks: Ensure proper merging of classes in block schemas (WordPress/gutenberg#70615)
- Collab Sidebar: Replace near-identical pink with red in avatar palette (WordPress/gutenberg#78299)
- Compose: Share a single change listener per MediaQueryList in useMediaQuery (WordPress/gutenberg#78297)
- Add custom widget dashboard resize handle styling. (WordPress/gutenberg#78236)
- Block Editor: Integrate slug-based color selection in color panel (WordPress/gutenberg#78048)
- wp-build: Replace getter-based exports with data properties (WordPress/gutenberg#78303)
- RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit (WordPress/gutenberg#77724)
- Hide wrap by default in flex layout panel (WordPress/gutenberg#78269)
- Prevent images from appearing squished when only one dimension is set (WordPress/gutenberg#70575)
- Block Style States: Show only supported inspector controls when selecting a style state (WordPress/gutenberg#78280)
- Build: Remove custom job_status output in favor of native result (WordPress/gutenberg#78208)
- Improve GHCR asset publishing and expand trigger events to include `pull_request` (WordPress/gutenberg#78211)
- Media Editor: Scope keyboard shortcuts to the modal (WordPress/gutenberg#78322)
- Fix 'Invalid Date' when clicking on Now in DateTimePicker on Date Block. (WordPress/gutenberg#78284)
- Dashboard: round widget drag radius (WordPress/gutenberg#78292)
- Core Abilities: Defer fetch until workflow palette opens (WordPress/gutenberg#78316)
- Manually update all package versions to match wp/latest (WordPress/gutenberg#78301)
- Dashboard: layout settings drawer with grid/masonry models (WordPress/gutenberg#78202)
- Components: Fix FormTokenField validation preventing default behavior (WordPress/gutenberg#77181)
- Core Data: Avoid duplicate id-less entity permission requests (WordPress/gutenberg#78262)
- Post/Site Editor loading test: remove unwanted actions from timed code path (WordPress/gutenberg#78323)
- Tests: Add post-editor preload spec (WordPress/gutenberg#78318)
- Automated Testing: Allow console logging in all bin, scripts, tools files (WordPress/gutenberg#78312)
- [components] Draggable: Migrate clone wrapper to wp compat overlay slot (WordPress/gutenberg#78183)
- Editor: Inline text editor toolbar z-index (WordPress/gutenberg#78309)
- Automated Testing: Skip ESLint for bundled library code via ignore patterns (WordPress/gutenberg#78314)
- Refactor: useMemo on elements and useCallback is back on resetAllFilter (WordPress/gutenberg#78329)
- Guidelines: Fix fatal when `rest_api_init` fires before init (WordPress/gutenberg#78350)
- Upload Media: stop propagating `-scaled` to sub-size filenames (WordPress/gutenberg#78038)
- design-system-mcp: Update get_components to optionally support multiple names (WordPress/gutenberg#78185)
- Dashboard: adds tooltip explaining disabled menu item (WordPress/gutenberg#78344)
- Grid: make resize overlay line solid (WordPress/gutenberg#78340)
- Dashboard: migrate Layout settings drawer to DataForm (WordPress/gutenberg#78336)
- Add dimension validation to sideload endpoint (WordPress/gutenberg#74903)
- Tests: Preload spec — track query strings and use an existing draft (WordPress/gutenberg#78343)
- design-system-mcp: Add server instructions for client usage guidance (WordPress/gutenberg#78186)
- Draggable: Scope the clone's fallback `z-index` to non-slot placements (WordPress/gutenberg#78354)
- [ui] Trim verbose comments around the compat overlay slot (WordPress/gutenberg#78356)
- DataViews: Inline z-index values (WordPress/gutenberg#78315)
- Block/Tabs: Remove mount-time setAttributes that caused dirty editor state on reload (WordPress/gutenberg#78339)
- Connectors: Consolidate WP 7.0 compat loading and move from experimental (WordPress/gutenberg#78228)
- Grid: visualize columns without outline (WordPress/gutenberg#78281)
- Media Editor: Harden cropper math layer against non-finite inputs (WordPress/gutenberg#78321)
- Media Editor: Enforce a minimum crop size in the image editor (WordPress/gutenberg#78268)
- Editor: Use _n() for revisions count aria-label (WordPress/gutenberg#78382)
- Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center (WordPress/gutenberg#78385)
- Dashboard: layered grid columns + visual layout model picker (WordPress/gutenberg#78364)
- Refactor: Add extractPresetSlug as a generalized function to extract slugs. (WordPress/gutenberg#78328)
- Dashboard: full size widget inserter (WordPress/gutenberg#78390)
- Grid: resize widget and snap resize-placeholder (WordPress/gutenberg#78389)
- UI Card: full bleed as header hero image & content cover (WordPress/gutenberg#77856)
- Modal: Inline header z-index (WordPress/gutenberg#78362)
- UI Icon: Mark as recommended (WordPress/gutenberg#78365)
- Use WCIcon alias for component Icon imports (WordPress/gutenberg#78366)
- Tools(Release): migrate bin/plugin into @wordpress/release-tools workspace (WordPress/gutenberg#77695)
- UI Button: Optimize overflow styles (WordPress/gutenberg#78300)
- [ui] Select: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78372)
- Grid: tiled grid overlay (WordPress/gutenberg#78373)
- useCopyToClipboard: Always call onSuccess callback (WordPress/gutenberg#78387)
- Remove commander.js file from the project (WordPress/gutenberg#78400)
- [ui] Autocomplete: Default portal container to the wp compat overlay slot (WordPress/gutenberg#78375)
- Use WCTooltip alias for component Tooltip imports (WordPress/gutenberg#78396)
- Upload Media: pick up the finalized attachment URL so srcset renders (WordPress/gutenberg#78359)
- UI: Fix item popup typography (WordPress/gutenberg#78403)
- RTC: Add command to run in WebSockets mode (WordPress/gutenberg#78363)
- Publishing packages: defer pushing tags until lerna publish succeeds (WordPress/gutenberg#78253)
- Fix: Show collaborators with top toolbar is active (WordPress/gutenberg#78049)
- Image block: Add "Mark as decorative" toggle for accessibility (WordPress/gutenberg#78064)
- Revisions: Use CSS outline as secondary non-color indicator for diff blocks (WordPress/gutenberg#78393)
- DataViewsPicker Table: Fix first-click row selection (WordPress/gutenberg#78423)
- Fixed additional issues with block registration types (WordPress/gutenberg#78416)
- Media Editor: Make zoom floor coverage-aware instead of fixed at 1x (WordPress/gutenberg#78222)
- Grid: animate sibling tiles when layout reflows during drag or resize (WordPress/gutenberg#78395)
- Widget Types: declarative presentation hint (full-bleed support) (WordPress/gutenberg#78209)
- Image: Fix missing aria-label on lightbox trigger button for single images (WordPress/gutenberg#78426)
- Columns: Remove redundant Skip option from layout picker (WordPress/gutenberg#78405)
- Components: Popover: don't close when focus moves into the `@wordpress/ui` compat overlay slot (WordPress/gutenberg#78407)
- Script Loader: Defer single-page admin init until DOMContentLoaded (Trac WordPress/gutenberg#65103) (WordPress/gutenberg#78136)
- Grid: fix immutability lint warning for react hook (WordPress/gutenberg#78431)
- Tabs, TabPanel: Align styles with wp-ui (WordPress/gutenberg#78418)
- List View: Place caret at end of block when selecting (WordPress/gutenberg#76797)
- Dashboard: restrict widget icons to just SVGs (no dashicons) (WordPress/gutenberg#78440)
- Dashboard: Increase widget spacing with --wp-grid-gap. (WordPress/gutenberg#78439)
- RTC: Provide `PROTOCOL_MISMATCH` error handling (WordPress/gutenberg#76991)
- Dashboard: add chrome UI tools to widgets (WordPress/gutenberg#78060)
- Experiment: Update Classic block deprecation notice (WordPress/gutenberg#78445)
- UI Tabs: Recommend component for use (WordPress/gutenberg#78442)
- RTC: Sync the content even if its a function (WordPress/gutenberg#76796)
- Theme: Move token structure descriptions into tokens document (WordPress/gutenberg#78438)
- Fix persistCRDTDoc minimal save payload (WordPress/gutenberg#77050)
- useDialog: handle Escape via React `onKeyDown` so cascade works through portals (WordPress/gutenberg#78433)
- Fix inconsistencies in feature selector processing part 1: global styles (WordPress/gutenberg#78276)
- Media: Add undo snackbar for media editor image edits (WordPress/gutenberg#78425)
- Media Fields: Fix filename truncation with Tooltip (WordPress/gutenberg#78453)
- Media Editor Modal: Fix unexpected tab stop on date fields in the Details sidebar (WordPress/gutenberg#78454)
- Add experiment to show admin bar in Post and Site Editor (WordPress/gutenberg#77964)
- Visually align `Notice` from `@wordpress/components` with `Notice` from `@wordpress/ui` (WordPress/gutenberg#78231)
- Widgets: Declare dependencies in a per-widget package.json (WordPress/gutenberg#78463)
- Grid: don't allow resizing tile beyond min row height or column width (WordPress/gutenberg#78402)
- UI Autocomplete: Fix prop types (WordPress/gutenberg#78450)
- @wordpress/ui: Compat overlay slot — viewport-sized containing block (WordPress/gutenberg#78441)
- Fix image upload crashes   (WordPress/gutenberg#76707)
- Theme: Add Tokens "Introduction" Storybook page (WordPress/gutenberg#78449)
- Blocks: Share window listeners across instances (block props, rich text, ...) (WordPress/gutenberg#78310)
- UI Button: Fix disabled cursor style (WordPress/gutenberg#78479)
- Add welcome dashboard widget with adaptive layout and content (WordPress/gutenberg#78461)
- Responsive block instance styles (WordPress/gutenberg#78384)
- REST: Guard `setAccessible()` behind PHP < 8.1 in block-editor settings controller (WordPress/gutenberg#78478)
- Docs: Update iframe editor migration guide for WordPress 7.0/7.1 (WordPress/gutenberg#78401)
- Fix inconsistencies in feature selector processing part 2: pseudo block instances (WordPress/gutenberg#78326)
- Media Editor Experiments: Tidy up by removing old pathways to the media editor experiment (WordPress/gutenberg#78489)
- Compose: Simplify subscribeDelegatedListener root detection (WordPress/gutenberg#78492)
- Dashboard: use Page hasPadding prop for content spacing (WordPress/gutenberg#78469)
- Grid: hide resize handles and actions while on tile is resizing (WordPress/gutenberg#78391)
- Dashboard Widgets: Add content-bleed presentation variant (WordPress/gutenberg#78491)
- Dashboard: forbid non-module stylesheets in experimental, new widgets (WordPress/gutenberg#78496)
- Revisions: Increase diff marker stripe contrast to 75% primary color proportion (WordPress/gutenberg#78473)
- Fix flaky e2e test with dataview kbd navigation (WordPress/gutenberg#78503)
- Theme: Update color space registration to avoid side effects (WordPress/gutenberg#77653)
- Move PHP Sync Issue Generator file to @wordpress/release-tools (WordPress/gutenberg#78456)
- ESLint: Support private API component denylist (WordPress/gutenberg#78451)
- Widgets: Add TypeScript project config (WordPress/gutenberg#78467)
- Dashboard: small changes to header (WordPress/gutenberg#78513)
- Edit post: consume preload cache before React mount (WordPress/gutenberg#78508)
- Vips: Remove dead batchResizeImage and vipsBatchResizeImage exports (WordPress/gutenberg#77975)
- Automated Testing: Enable concurrency for ESLint (WordPress/gutenberg#78360)
- Simplify component ESLint rules and extend to routes/widgets (WordPress/gutenberg#78519)
- Image editor: remove unnecessary __nextHasNoMarginBottom prop (WordPress/gutenberg#78530)
- RTC: Limit CRDT meta data to REST API edit context (WordPress/gutenberg#78531).
- Update plugin release docs and edit for clarity. (WordPress/gutenberg#78537)
- Updated the BlockAttribute typedef to allow for multi-type attributes (WordPress/gutenberg#78517)
- Refactor media editor crop state into composite reducer (WordPress/gutenberg#78480)
- Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim (WordPress/gutenberg#78484)
- Font Library: clarify active variant state in Library tab (WordPress/gutenberg#78501)
- Guard PHP unit test to avoid failures on old wp versions (WordPress/gutenberg#78547)
- Fix block preview for responsive style states (WordPress/gutenberg#78538)
- Breadcrumbs block: Hide separator from screen readers (WordPress/gutenberg#78524)
- Preload: Backport user global styles entry for classic themes on WP 6.9 (WordPress/gutenberg#78546)
- Guidelines: Refine access policy (WordPress/gutenberg#78296)
- Fix flaky media upload save lock test (WordPress/gutenberg#78544)
- Add `Quick post` widget (WordPress/gutenberg#78408)
- Tooltip migration: block-editor + block-directory consumers (1/5) (WordPress/gutenberg#78411)
- Navigation: Hard deprecate component (WordPress/gutenberg#78529)
- Post Taxonomies: Drop redundant `per_page: -1` from taxonomy queries (WordPress/gutenberg#78569)
- Dashboard: add elevation to widget actionable area (WordPress/gutenberg#78563)
- Add dashboard Activity widget (WordPress/gutenberg#78552)
- Components: Remove deprecated `__experimentalApplyValueToSides` export (WordPress/gutenberg#78528)
- IconButton: Fix `focusableWhenDisabled` default (WordPress/gutenberg#78526)
- Add cherry-pick script and update release tools in package.json (WordPress/gutenberg#78560)
- Theme: Remove and prevent dependency grouping comments (WordPress/gutenberg#78573)
- Dashboard: per-instance widget settings drawer (WordPress/gutenberg#78465)
- Dashboard Widgets: Adapt Quick Draft to its tile size with a recent drafts list (WordPress/gutenberg#78572)
- Add dashboard Site Preview widget (WordPress/gutenberg#78556)
- Edit Post Preload: Cover remaining bound GET/OPTIONS requests on load (WordPress/gutenberg#78565)
- Several improvements to the Dependabot configuration (WordPress/gutenberg#78536)
- Fix: Disable collab sync when incompatible meta boxes are present. (WordPress/gutenberg#78145)
- Bump the github-actions group across 2 directories with 6 updates (WordPress/gutenberg#78585)
- Editor / Block Editor: Lazy-fetch user pattern categories (WordPress/gutenberg#78568)
- RTC: Fix every update block refresh when a peer edits with in the code editor (WordPress/gutenberg#78483)
- Edit Post: Hoist setupEditor to run before root.render (WordPress/gutenberg#78581)
- Automated Testing: Fix and use built-in mechanism for flagging unused disables (WordPress/gutenberg#78313)
- Remove dependency used for counting available CPUs (WordPress/gutenberg#78593)
- ESLint: Restrict deprecated __nextHasNoMarginBottom prop (WordPress/gutenberg#78579)
- Reset zoom level on component unmount (WordPress/gutenberg#69087)
- Add missing package file to the site preview widget (WordPress/gutenberg#78583)
- Add dashboard Site Health widget (WordPress/gutenberg#78555)
- fix: discard unsaved HTML block changes on cancel (WordPress/gutenberg#78580)
- Global styles revisions: ensure stylebook shows revision previews (WordPress/gutenberg#78490)
- Docs: Update media editor documentation (WordPress/gutenberg#78617)
- RTC: Fix Edit/Join row action invisible on mobile in post list (WordPress/gutenberg#78597)
- Grid: animate tile removals (WordPress/gutenberg#78542)
- Paste: keep `<img>` inside `<a>` when pasting plain-text HTML (WordPress/gutenberg#78015)
- Deduplicate useGlobalStyles hook code (WordPress/gutenberg#78577)
- Dashboard: add command palette commands (WordPress/gutenberg#78429)
- Docs: Add Workspace Development guide (WordPress/gutenberg#78615)
- add default widget instances to dashboard (WordPress/gutenberg#78622)
- scale widget picker preview to fill slot (WordPress/gutenberg#78602)
- Welcome widget: draw the version number in the banner (WordPress/gutenberg#78611)
- Classic Block: Use `get_post()` in `wp_declare_classic_block_necessary` (WordPress/gutenberg#78613)
- fix widget content overflowing its grid tile (WordPress/gutenberg#78627)
-  Fix: Register user-defined taxonomies after user-defined post types (WordPress/gutenberg#78497)
- Image: Preserve width/height when converting Classic blocks to blocks (WordPress/gutenberg#78610)
- Dashboard: mobile improvements (WordPress/gutenberg#78522)
- Grid & Dashboard: polish dashboard drag preview motion, elevation, and drop exit (WordPress/gutenberg#78348)
- Welcome widget: add a subtle shine to the version digits (WordPress/gutenberg#78626)
- WP Editor Meta Box e2e: wait for TinyMCE init (WordPress/gutenberg#78631)
- Quick Draft widget: layout, empty state, and style refinements (WordPress/gutenberg#78601)
- Dashboard: Refine widget actionable area toolbar styling (WordPress/gutenberg#78578)
- Components: Add Badge text overflow e2e story (WordPress/gutenberg#78589)
- UI: Update Autocomplete clear disabled state (WordPress/gutenberg#78520)
- Dashboard: tune default grid settings and starter layout (WordPress/gutenberg#78633)
- RangeControl: Remove erroneous `icon` prop from web types (WordPress/gutenberg#78444)
- UI: Add Button variant states e2e story (WordPress/gutenberg#78634)
- DataViews: Fix wrapper height resolution in flex layouts (WordPress/gutenberg#76945)
- Tooltip migration: editor + edit-post + edit-site consumers (2/5) (WordPress/gutenberg#78466)
- Add dashboard News widget (WordPress/gutenberg#78554)
- Add support for layout responsive styles (WordPress/gutenberg#78543)
- Build Tools: Move build scripts to `@wordpress/build-scripts` workspace package (WordPress/gutenberg#78509)
- Dashboard: fix widget rendering on the masonry grid (WordPress/gutenberg#78645)
- Tooltip migration: dataviews consumers (3/5) (WordPress/gutenberg#78470)
- Upgrade to React 19 (WordPress/gutenberg#61521)
- Dashboard: use fully-specified fast-deep-equal import (WordPress/gutenberg#78660)
- Hide block variation selector when style state is selected (WordPress/gutenberg#78658)
- Migrate `create-test-block.sh` to `@wordpress/validation-tools` workspace (WordPress/gutenberg#78665)
- Docs: Mark React Native mobile editor as unmaintained on trunk after React 19 upgrade (WordPress/gutenberg#78673)
- Dashboard: URL bar in site preview widget (WordPress/gutenberg#78656)
- UI Button: Fix pressed disabled styles for neutral minimal (WordPress/gutenberg#78635)
- Dashboard: prevent pointer events in widget selection (WordPress/gutenberg#78681)
- Block Inserter: Animate inserter button icon to signal open state. (WordPress/gutenberg#78306)
- Guidelines: Add data-slug attribute to settings list items (WordPress/gutenberg#78676)
- Validate additional CSS on mount (WordPress/gutenberg#78682)
- Move @emotion deps out of root package.json (WordPress/gutenberg#78687)
- Media Editor Modal: Tighten labels for crop handles toggle (WordPress/gutenberg#78703)
- Media Editor: make the modal the default crop experience (WordPress/gutenberg#78653)
- Media Editor Modal: Update the rotation ruler to use a vertical line marker (WordPress/gutenberg#78704)
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Update browserslist (WordPress/gutenberg#78840)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65560.

git-svn-id: https://develop.svn.wordpress.org/trunk@62583 602fd350-edb4-49c9-b593-d223f7449a82
SteelWagstaff pushed a commit to SteelWagstaff/wordpress-develop that referenced this pull request Jul 2, 2026
This updates the pinned commit hash of the Gutenberg repository from `14db4ab9395a9e96430eed678e4288a59eecbd15 ` (version `23.3.0`) to `14db4ab9395a9e96430eed678e4288a59eecbd15` (version `23.4.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v23.3.0..v23.4.0.

The following commits are included:
- Hide image dimension tools when a state is selected (WordPress/gutenberg#78670)
- Changed labels to consistently use Patterns in favor of Block patterns (WordPress/gutenberg#56880)
- Fix: Restrict parent page API search to post titles only (WordPress/gutenberg#78683)
- Update AGENTS.md to mention additional pitfalls: (WordPress/gutenberg#78718)
- Docs: Fix big_image_size_threshold xref typo (WordPress/gutenberg#76299)
- Compose: Fully deprecate the 'pure' HoC (WordPress/gutenberg#78674)
- Common CSS: avoid false-positive border-style on custom properties (WordPress/gutenberg#77476)
- Compose: Fix SSR crash in useMediaQuery and useViewportMatch (WordPress/gutenberg#78725)
- CI: Skip plugin repo release when SVN tag already exists (WordPress/gutenberg#78476)
- Dashboard: Hello Dolly (WordPress/gutenberg#78648)
- UI: `Tooltip.Provider` — forward upstream `closeDelay` and `timeout` props (WordPress/gutenberg#78642)
- Compose: Support React 19 ref callback cleanups in `useMergeRefs` (WordPress/gutenberg#78685)
- Add copilot-instructions.md file (WordPress/gutenberg#78584)
- Dashboard: show ghost widgets visually & allow easy removal (WordPress/gutenberg#78502)
- Bump fast-xml-builder from 1.0.0 to 1.2.0 (WordPress/gutenberg#78272)
- Bump actions/stale (WordPress/gutenberg#78745)
- Bump fast-xml-parser from 4.5.0 to 4.5.6 (WordPress/gutenberg#77167)
- Bump actions/github-script from 8.0.0 to 9.0.0 in /.github/workflows (WordPress/gutenberg#78591)
- @wordpress/theme: deduplicate addFallbackToVar helper (WordPress/gutenberg#78666)
- Add Combobox primitives (WordPress/gutenberg#78399)
- Editor: Fix keyboard activation of the template actions preview (WordPress/gutenberg#78641)
- Theme: drop `density` support from `@wordpress/theme` (WordPress/gutenberg#78741)
- Tooltip migration: fields + media-editor + media-fields + global-styles-ui (4/5) (WordPress/gutenberg#78691)
- List View: Expose block visibility label to assistive technology (WordPress/gutenberg#78640)
- Hide paragraph Drop cap control when a state is selected (WordPress/gutenberg#78672)
- Image cropper: round zoom control values and display as percentages (WordPress/gutenberg#78757)
- Media Editor Modal: Try placing the save and cancel buttons in the footer (WordPress/gutenberg#78708)
- Unset grid span defaults with viewport states enabled (WordPress/gutenberg#78709)
- Media Editor: Remove resize handles toggle from crop panel (WordPress/gutenberg#78758)
- Image Editor: focus return after closing image crop modal (WordPress/gutenberg#78711)
- Add dashboard Events widget (WordPress/gutenberg#78553)
- Writing flow: Delete at end of nested list item should merge into next block (WordPress/gutenberg#78742)
- RTC: Re-render collaborators overlay when the block tree changes (WordPress/gutenberg#78636)
- Dashboard: rename `widget-types` to `widget-primitives` and consolidate the widget contract (WordPress/gutenberg#78749)
- Fix Gutenberg plugin assuming its directory is named "gutenberg" (WordPress/gutenberg#78705)
- Codemods: Remove one-shot Tooltip migration codemod (WordPress/gutenberg#78669)
- Dashboard: rename `WidgetChrome` to `DashboardWidgetChrome` (WordPress/gutenberg#78751)
- Paragraph: Strip stale block-support classes from className during align attribute migration (WordPress/gutenberg#78731)
- Global Styles: Fix CSS not applying to Custom CSS textarea in Advanced panel (WordPress/gutenberg#78773)
- scripts: Use require.resolve for SVG loaders to fix pnpm compat (WordPress/gutenberg#78777)
- Post list: Remove close button from Quick Edit drawer (WordPress/gutenberg#78730)
- Revert "Gate client-side media processing as plugin-only (WordPress/gutenberg#76700)" (WordPress/gutenberg#76751)
- Tooltip migration: boot consumers + shell-level Tooltip.Provider (5/5) (WordPress/gutenberg#78692)
- Dashboard: replace `surface` with `host` in widget contract docs (WordPress/gutenberg#78778)
- Shortcode block: Fix editor crash when selecting transform menu (WordPress/gutenberg#78770)
- Make `@wordpress/nux` a no-op compatibility package (WordPress/gutenberg#77773)
- Tests: Temporarily disable REST index output-format assertions (WordPress/gutenberg#78788)
- Hide Cover overlay controls for viewport states (WordPress/gutenberg#78763)
- Fix type of `$block_instance` parameter in `block_core_image_render_lightbox()` (WordPress/gutenberg#78790)
- TypeScript: Migrate server-side-render package to TS (WordPress/gutenberg#71383)
- feat: Migrate performance results to tools release (WordPress/gutenberg#78761)
- wp-build: Fix black flash on wp-admin pages before hydration (WordPress/gutenberg#78493)
- Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)
- Dashboard: Use Howdy greeting for page title (WordPress/gutenberg#78740)
- Block Editor: Refactor Inserter to a function component (WordPress/gutenberg#78766)
- Dashboard: Move layout settings to customize toolbar (WordPress/gutenberg#78738)
- Build: update changelog (WordPress/gutenberg#78807)
- Icons: rename timeToRead to time (WordPress/gutenberg#78804)
- RTC: Prevent slower polling filters (WordPress/gutenberg#78811)
- Button.Icon: Fix clipped icons (WordPress/gutenberg#78614)
- Bump docker/login-action (WordPress/gutenberg#78819)
- RTC: Return forbidden rooms together (WordPress/gutenberg#78748)
- Update browserslist (WordPress/gutenberg#78840)
- Try allowing transforms to a variation of another block (WordPress/gutenberg#78713)
- Elements: Guard against non-string className in render filter (WordPress/gutenberg#78841)
- e2e-test-utils-playwright: add src to published NPM files (WordPress/gutenberg#78847)
- Editor: Refactor 'PostPublishButton' into function component (WordPress/gutenberg#78737)
- Dashboard: Promote WidgetRender into widget-primitives (WordPress/gutenberg#78821)
- Notes: Show default avatar in the indicator when user avatars are disabled (WordPress/gutenberg#78849)
- Revert "Icons: maintain absolute stroke-width regardless of icon-size (WordPress/gutenberg#78774)" (WordPress/gutenberg#78854)
- Media: Send Document-Isolation-Policy header on the site preview frame (WordPress/gutenberg#78404)
- Revert navigation morph & playlist commits pushed directly to trunk (WordPress/gutenberg#78857)
- Fix Update button staying active when changes are reverted. (WordPress/gutenberg#78567)
- Docs: Fix and improve documentation (WordPress/gutenberg#78686)
- Abilities: Add validation tests pinning behavior for WP-specific schema keywords (WordPress/gutenberg#78783)
- Tools: migrate docs/tool into tools/docs workspace (WordPress/gutenberg#78870)
- Dashboard: Fix Add widget error on non-secure HTTP origins (WordPress/gutenberg#78850)
- Docs: Fix @wordpress/data README fragment links (WordPress/gutenberg#78866)
- bin: Remove obsolete bin/setup-local-env.sh (WordPress/gutenberg#78871)
- Boot navigation: wrap items in a list role for valid listitem semantics (WordPress/gutenberg#78829)
- wp-build: Document generated page hooks per WordPress standards. (WordPress/gutenberg#78826)
- Update CODEOWNERS for tooling directories (WordPress/gutenberg#78874)
- Block Visibility: Keep hide-everywhere working after a block opts out of visibility support (WordPress/gutenberg#78780)
- Dashboard: Replace grid row height controls with size presets. (WordPress/gutenberg#78735)
- Prevent font-size propagation in Navigation items causing `em` compounding (WordPress/gutenberg#77419)
- Media Editor Modal: Reorder details fields so the editable regular layout fields appear at the top (WordPress/gutenberg#78792)
- Fix media editor sidebar close button label (WordPress/gutenberg#78895)
- Dashboard: event widget iteration (WordPress/gutenberg#78815)
- Playlist Block: Add visualization style selector (WordPress/gutenberg#76147)
- [Content Types]: Fix extra Page padding causing vertical scrollbar (WordPress/gutenberg#78661)
- Remove migrated dependencies from root package.json (WordPress/gutenberg#78813)
- Packages: Declare missing `@types/react` dependency (WordPress/gutenberg#78882)
- Fix collapsed experiment cards not stretching to full width (WordPress/gutenberg#78910)
- Element: add polyfills for render, hydrate, unmountComponentAtNode (WordPress/gutenberg#78899)
- Revert "wp-build: Replace getter-based exports with data properties" (WordPress/gutenberg#78917)
- React: add ReactCurrentOwner polyfill (WordPress/gutenberg#78923)
- Fix playlist metadata edits recreating player (WordPress/gutenberg#78876)
- Media Editor: Fix sidebar overflowing the modal between the small and medium breakpoints (WordPress/gutenberg#78931)
- Media: Move client-side media compat file to wordpress-7.1 directory (WordPress/gutenberg#78852)
- env: Replace extract-zip with adm-zip to fix hang on Node 24.16 (WordPress/gutenberg#78828)
- Media Editor: refactor modal layout (WordPress/gutenberg#78896)
- Optimize wp-env source downloads with Git partial clones (WordPress/gutenberg#78918)
- Fix: Escape URLs in block render functions using `esc_url()` (WordPress/gutenberg#78912)
- Blocks: Allow the Login/out block as an inner block in the Navigation Submenu block (WordPress/gutenberg#75497)
- Fix sprintf format specifiers in post-date and read-more blocks (WordPress/gutenberg#78933)
- Refactor: Remove jest/test deps from root package.json (WordPress/gutenberg#78801)
- Upload Media: Add retry with exponential backoff and network resilience (WordPress/gutenberg#76765)
- Build Scripts: Fix Windows path handling in dev script (WordPress/gutenberg#78939)
- Revert React 19 upgrade (WordPress/gutenberg#78940)
- Fix: block auto-complete for AI API Keys in Connectors (WordPress/gutenberg#78946)
- Dashboard: Opinionated grid columns with container breakpoints (WordPress/gutenberg#78732)
- Skip including inactive or experimental routes when building for WordPress Core (WordPress/gutenberg#76715)
- RTC: Fix Yjs undo manager to update UI state when undo stack changes (WordPress/gutenberg#78864)
- Storybook: Enhance Theme Provider example with admin-ui Page. (WordPress/gutenberg#78814)
- RTC: Fix CRDT deferred updates resulting in jumbled typing (WordPress/gutenberg#78756)
- Add playlist track length setting (WordPress/gutenberg#78954)
- Add aspect ratio control to media editor mobile toolbar (WordPress/gutenberg#78935)
- Media Editor: Replace the zoom slider with +/- buttons (WordPress/gutenberg#78928)
- Use omit-unchanged for compressed-size-action (WordPress/gutenberg#78976)
- DataViewsPicker: Add a new `pickerActivity` layout (WordPress/gutenberg#78941)
- refactor: move babel dependencies to workspace configuration (WordPress/gutenberg#78974)
- feat: Migrate the browserlintrc file to `packages/postcss-plugins-preset` (WordPress/gutenberg#78764)
- Storybook: Declare workspace dependencies for theme example story. (WordPress/gutenberg#78979)
- Refactor: Move React dependencies from root to workspaces (WordPress/gutenberg#78981)
- UI: Update `@base-ui/react` to `1.5.0` (WordPress/gutenberg#78448)
- ui/AlertDialog: Fix footer layout style override (WordPress/gutenberg#78953)
- Font Library: Fix focus issue when navigating (WordPress/gutenberg#78671)
- Docs: Auto-generate per-block API reference pages from block.json (WordPress/gutenberg#77612)
- Patterns: fix focus loss when dismissing Create pattern dialog (WordPress/gutenberg#78957)
- Show media upload progress in a snackbar (WordPress/gutenberg#77249)
- Upload Media: Gate very large images out of client-side processing (WordPress/gutenberg#78949)
- Media: Add UltraHDR (ISO 21496-1) gain map support (WordPress/gutenberg#74873)
- Site Editor: Apply the user's admin color scheme (WordPress/gutenberg#78397)
- Navigation Link: fix duplicate block html attributes in editor (WordPress/gutenberg#78973)
- Added Missing Global Documentation (WordPress/gutenberg#78997)
- Post Revisions: Upgrade `diff` from v4 to v8 (WordPress/gutenberg#77992)
- Theme: Increase stroke1 contrast target to 2.9 (WordPress/gutenberg#77599)
- Tooltip: Use md border radius for portaled popups. (WordPress/gutenberg#78983)
- Framework: Remove invalid stale nested npm package references (WordPress/gutenberg#79014)
- Theme package: Add element size design tokens (WordPress/gutenberg#76545)
- Inserter: use forwardRef for refs (WordPress/gutenberg#79006)
- RTC: Add separate doc persistence endpoint (WordPress/gutenberg#78891)
- DataViews: Add DataViews components to components manifest (WordPress/gutenberg#78960)
- Media Editor: Keep crop handles operable on large images (WordPress/gutenberg#79011)
- Media editor: tweak paddings and margins (WordPress/gutenberg#79009)
- Media Editor: Remove lag when toggling the sidebar (WordPress/gutenberg#79024)
- Elements: Align class name parsing with custom CSS implementation (WordPress/gutenberg#79023)
- CI: Suppress lint:js warnings on static checks (WordPress/gutenberg#79025)
- Remove React Native implementation, framework, and dependencies (WordPress/gutenberg#78747)
- e2e-test-utils-playwright: start transpiling again, but faster (WordPress/gutenberg#79026)
- CI: Remove Validate Gradle Wrapper workflow (WordPress/gutenberg#79030)
- Remove dead native code branches from Platform usages (WordPress/gutenberg#79031)
- Remove orphaned README files for deleted native-only components (WordPress/gutenberg#79035)
- Remove orphaned mobile bug report issue template (WordPress/gutenberg#79038)
- Inserter: Fix error being thrown for spoken message when inserting default/direct block (WordPress/gutenberg#79004)
- Editor: Remove dead native guard in block removal warnings (WordPress/gutenberg#79039)
- Preserve nested list when deleting a selection across sibling list items (WordPress/gutenberg#78776)
- Remove platform-docs Docusaurus site (WordPress/gutenberg#79034)
- Align dependency versions across workspaces (WordPress/gutenberg#77954)
- RichText: Remove dead native-only prop filtering (WordPress/gutenberg#79037)
- Navigable Container: Hoist getFocusableContext out of the component (WordPress/gutenberg#79029)
- Tools: Lint dependency version consistency with Syncpack (WordPress/gutenberg#77950)
- Extract entity view config into a filterable API (WordPress/gutenberg#78977)
- Rich text: use subscribeDelegatedListener for element event listeners (WordPress/gutenberg#79047)
- theme/ThemeProvider: rename `color.bg` prop to `color.background` (WordPress/gutenberg#79007)
- Format Library: Migrate to recommended `@wordpress/ui` components (WordPress/gutenberg#79059)
- Syncpack: ban `classnames` from being reintroduced (WordPress/gutenberg#79061)
- UI: Update CSS cascade layers to use nesting (WordPress/gutenberg#78959)
- Docs: Remove stale mobile references from tooling and primitives docs (WordPress/gutenberg#79041)
- Release: Drop mobile-specific changelog omit rules (WordPress/gutenberg#79042)
- Bump actions/checkout (WordPress/gutenberg#79033)
- `ColorPalette`: don't render when custom colors disabled and no colors passed (WordPress/gutenberg#72402)
- Bump minimatch and lerna (WordPress/gutenberg#76750)
- Image block: don't show crop icon while image is uploading (WordPress/gutenberg#79103)
- Add React 19 as an experimental flag (WordPress/gutenberg#79077)
- Media modal: small tweak to gutters (WordPress/gutenberg#79168)
- Add more React internals polyfills (WordPress/gutenberg#79142)
- Media editor modal: Fix keyboard resizing for locked aspect-ratio crops (WordPress/gutenberg#79207)
- Fix responsive element styles front end output (WordPress/gutenberg#79135) (WordPress/gutenberg#79215)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65368.

git-svn-id: https://develop.svn.wordpress.org/trunk@62584 602fd350-edb4-49c9-b593-d223f7449a82
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Focus] Accessibility (a11y) Changes that impact accessibility and need corresponding review (e.g. markup changes). [Package] Block library /packages/block-library [Package] Editor /packages/editor [Type] Enhancement A suggestion for improvement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants