Dynamic Gallery: Rename toolbar button to Detach and add a modal explaining what will happen - #80727
Conversation
|
Size Change: +237 B (0%) Total Size: 7.75 MB 📦 View Changed
|
|
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 If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
|
Flaky tests detected in 5857f08. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/30332099419
|
|
I like it! It feels like it explains quite well, even if after the fact, what this is. How do you feel about it? Nit, I'd love if this could be a
Perhaps we could:
Well, barely shorter. Up to you! |
I thought all confirmation dialogs were the same size. |
|
Could be my mistake, it just looked wider in the screenshot. You can safely ignore me if that's not the case. |
|
From Joen's idea shared here, I like the body of the second but without shrinking the "images attached to the post" part, and the heading of the first. Therefore…
|
|
A note, "Detach Gallery" vs. "Detach gallery?"—the reason I proposed the former is that when you click Edit on a Page List inside the navigation block, it asks: "Edit Page List". Neutrally and matter of factly, and referring to the block name with capital letters. It's not strongly felt, just context. |
bph
left a comment
There was a problem hiding this comment.
LGTM - Not that my approval does anything. See also my separate comment.
e324af8 to
5857f08
Compare
|
Thanks for the feedback, folks! I've updated the heading and sidebar buttons to use a capital G and updated the modal body wording to match Francisco's redrafting (#80727 (comment)). Here's how it's looking:
It's worth a lot to me, thank you! 😄 |
|
LGTM - general poll: should we align table of contents/page list with this pattern for 7.1 or leave it for now? my gut instinct is to do it in GB, but not force it through to 7.1. |
Good question. I think we could do it in GB but not force it through for 7.1. While aligning them all is a good idea, it feels a bit beyond the scope of polishing the Dynamic Gallery block (which is a 7.1 feature). |
|
There was a conflict while trying to cherry-pick the commit to the wp/7.1 branch. Please resolve the conflict manually and create a PR to the wp/7.1 branch. PRs to wp/7.1 are similar to PRs to trunk, but you should base your PR on the wp/7.1 branch instead of trunk. |
|
I've opened a manual backport to the wp/7.1 branch over in #80774 |
…aining what will happen (#80727) (#80774) * Dynamic Gallery: Rename toolbar button to Detach and add a modal explaining what happens * Tweak the wording * Update changelog * Remove superfluous comment * Update wording Co-authored-by: bph <bph@git.wordpress.org> Co-authored-by: Mamaduka <mamaduka@git.wordpress.org> Co-authored-by: jasmussen <joen@git.wordpress.org> Co-authored-by: fcoveram <fcoveram@git.wordpress.org> Co-authored-by: tyxla <tyxla@git.wordpress.org> Co-authored-by: ramonjd <ramonopoly@git.wordpress.org>
This updates the pinned commit hash of the Gutenberg repository from `4997026b75c922d8a6f77a03d72ed7cad04c7073` to `fd715a6833679d098d9fee84b642f8f1bc27341b`. A full list of changes included in this commit can be found on GitHub: WordPress/gutenberg@4997026...fd715a6 - Update view config API versioning (WordPress/gutenberg#80319) - Perf Tests: Fix 'Selecting blocks' metric reporting 0 ms (WordPress/gutenberg#80524) - Notes: Register the inline note format at import time (WordPress/gutenberg#80576) - Media: Stop forcing crossorigin on IMG tags in media templates (WordPress/gutenberg#80532) - GradientPicker: select by slug so two presets sharing a gradient keep their identity (WordPress/gutenberg#80554) - Media Editor: Show a loading state while the cropped file loads (WordPress/gutenberg#80460) - Remove default paragraph from tab-panel template (WordPress/gutenberg#80565) - Global Styles: Resolve link element styles in block inspector controls for blocks that are links (WordPress/gutenberg#80607) - Media REST API: Backport sideload from url path upload size check (WordPress/gutenberg#80659) - Rich text: remove tabIndex from editable elements again to fix shift+click selection (WordPress/gutenberg#80651) - Gallery: make dynamic mode conversion a single undo level (WordPress/gutenberg#80665) - Background image control: Remove duplicated focus ring (WordPress/gutenberg#80671) - Detach core's note mention kses filter in the baseline strip test (WordPress/gutenberg#80656) - wp-build: sync the page template preload field list with core-data (WordPress/gutenberg#80648) - Read the contentEditable attribute in ownsSelection, not isContentEditable (WordPress/gutenberg#80549) - Writing flow: extend block selections with shift+arrow when there is no native selection (WordPress/gutenberg#80687) - Notes: Capture the target block before saving a block-level note (WordPress/gutenberg#80690) - Theme JSON: Level block-level preset class specificity with :where() (WordPress/gutenberg#80657) - Notes: Sync the sidebar selection to the inline marker under the caret (WordPress/gutenberg#80610) - Writing flow: use isMultiSelecting for shift+click (WordPress/gutenberg#80286) (WordPress/gutenberg#80726) - Block supports: Return from layout support before resolving global settings (WordPress/gutenberg#80771) - Notes: Report save success consistently from note actions (WordPress/gutenberg#80748) - Dynamic Gallery: Rename toolbar button to Detach and add a modal explaining what will happen (WordPress/gutenberg#80727) (WordPress/gutenberg#80774) - ToolsPanel: Migrate styles to an SCSS Module (WordPress/gutenberg#80445) (WordPress/gutenberg#80800) - Add a responsiveEditingEnabled editor setting to hide the Responsive styles option (WordPress/gutenberg#80814) - iOS: remove jumping hack, add typewriter (WordPress/gutenberg#74596) - Writing flow: stop the page scrolling on caret moves within blocks taller than the viewport (WordPress/gutenberg#80708) - Global Styles: Put the inheritance UI behind a Gutenberg experiment (… (WordPress/gutenberg#80818) - Notes: Cancel in-flight hover highlight when focus leaves a note thread (WordPress/gutenberg#80752) - Block Editor: Try to fix typing performance regression (WordPress/gutenberg#80507) - List Block: Preserve ordered type on indent (WordPress/gutenberg#75353) - Make editableRoot a private block setting Symbol, not a public support (WordPress/gutenberg#80820) - Fix cursor position during forward delete of empty blocks (WordPress/gutenberg#80827) - Navigation: Fixes `aria-expanded` not updating on hover submenu inside overlay (WordPress/gutenberg#80828) - Remove redundant @jest-environment jsdom pragma and lint against it (WordPress/gutenberg#80676) - View config: reject shape-mismatched merges, define empty-array semantics, strip nulls from appended members (WordPress/gutenberg#80829) - Editor: leave undo to the browser in fields that handle their own undo (WordPress/gutenberg#80768) - Fix: New route-based admin pages are empty when no JS (WordPress/gutenberg#80839) Props wildworks. See #65529. git-svn-id: https://develop.svn.wordpress.org/trunk@62896 602fd350-edb4-49c9-b593-d223f7449a82
This updates the pinned commit hash of the Gutenberg repository from `4997026b75c922d8a6f77a03d72ed7cad04c7073` to `fd715a6833679d098d9fee84b642f8f1bc27341b`. A full list of changes included in this commit can be found on GitHub: WordPress/gutenberg@4997026...fd715a6 - Update view config API versioning (WordPress/gutenberg#80319) - Perf Tests: Fix 'Selecting blocks' metric reporting 0 ms (WordPress/gutenberg#80524) - Notes: Register the inline note format at import time (WordPress/gutenberg#80576) - Media: Stop forcing crossorigin on IMG tags in media templates (WordPress/gutenberg#80532) - GradientPicker: select by slug so two presets sharing a gradient keep their identity (WordPress/gutenberg#80554) - Media Editor: Show a loading state while the cropped file loads (WordPress/gutenberg#80460) - Remove default paragraph from tab-panel template (WordPress/gutenberg#80565) - Global Styles: Resolve link element styles in block inspector controls for blocks that are links (WordPress/gutenberg#80607) - Media REST API: Backport sideload from url path upload size check (WordPress/gutenberg#80659) - Rich text: remove tabIndex from editable elements again to fix shift+click selection (WordPress/gutenberg#80651) - Gallery: make dynamic mode conversion a single undo level (WordPress/gutenberg#80665) - Background image control: Remove duplicated focus ring (WordPress/gutenberg#80671) - Detach core's note mention kses filter in the baseline strip test (WordPress/gutenberg#80656) - wp-build: sync the page template preload field list with core-data (WordPress/gutenberg#80648) - Read the contentEditable attribute in ownsSelection, not isContentEditable (WordPress/gutenberg#80549) - Writing flow: extend block selections with shift+arrow when there is no native selection (WordPress/gutenberg#80687) - Notes: Capture the target block before saving a block-level note (WordPress/gutenberg#80690) - Theme JSON: Level block-level preset class specificity with :where() (WordPress/gutenberg#80657) - Notes: Sync the sidebar selection to the inline marker under the caret (WordPress/gutenberg#80610) - Writing flow: use isMultiSelecting for shift+click (WordPress/gutenberg#80286) (WordPress/gutenberg#80726) - Block supports: Return from layout support before resolving global settings (WordPress/gutenberg#80771) - Notes: Report save success consistently from note actions (WordPress/gutenberg#80748) - Dynamic Gallery: Rename toolbar button to Detach and add a modal explaining what will happen (WordPress/gutenberg#80727) (WordPress/gutenberg#80774) - ToolsPanel: Migrate styles to an SCSS Module (WordPress/gutenberg#80445) (WordPress/gutenberg#80800) - Add a responsiveEditingEnabled editor setting to hide the Responsive styles option (WordPress/gutenberg#80814) - iOS: remove jumping hack, add typewriter (WordPress/gutenberg#74596) - Writing flow: stop the page scrolling on caret moves within blocks taller than the viewport (WordPress/gutenberg#80708) - Global Styles: Put the inheritance UI behind a Gutenberg experiment (… (WordPress/gutenberg#80818) - Notes: Cancel in-flight hover highlight when focus leaves a note thread (WordPress/gutenberg#80752) - Block Editor: Try to fix typing performance regression (WordPress/gutenberg#80507) - List Block: Preserve ordered type on indent (WordPress/gutenberg#75353) - Make editableRoot a private block setting Symbol, not a public support (WordPress/gutenberg#80820) - Fix cursor position during forward delete of empty blocks (WordPress/gutenberg#80827) - Navigation: Fixes `aria-expanded` not updating on hover submenu inside overlay (WordPress/gutenberg#80828) - Remove redundant @jest-environment jsdom pragma and lint against it (WordPress/gutenberg#80676) - View config: reject shape-mismatched merges, define empty-array semantics, strip nulls from appended members (WordPress/gutenberg#80829) - Editor: leave undo to the browser in fields that handle their own undo (WordPress/gutenberg#80768) - Fix: New route-based admin pages are empty when no JS (WordPress/gutenberg#80839) Props wildworks. See #65529. Built from https://develop.svn.wordpress.org/trunk@62896 git-svn-id: http://core.svn.wordpress.org/trunk@62163 1a063a9b-81f0-0310-95a4-ce76da25c4cd


What?
Fixes #80613
The Dynamic mode of the gallery block (the Dynamic Gallery variation) has an ambiguous "Convert to images" button in the block toolbar. As discussed in #80613 this can be confusing to users, and it also doesn't accurately reflect what's really going to happen.
This PR tries out ideas discussed in that issue: let's try renaming the button to
Detachand add a confirm dialog that helps explain what will happen.Very happy for feedback and ideas on the wording! Right now I've borrowed from @ramonjd's mockups.
Why?
The block can operate in two modes: dynamic mode connected to a source, and a static mode where the block isn't attached to a source and is made up of editable inner blocks. The two modes provide powerful behaviour (at least I think so), but it's also difficult to understand.
Hopefully, the button and modal can help users learn how to interact with the gallery block in each of its states, and also with this change, we hopefully reduce some confusion.
How?
Testing Instructions
Screenshots or screencast
This screenshot includes the three changes:
Use of AI Tools
Claude Code (Opus 5) for making the initial change, with testing and a little tweaking by me.