Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Styles panel: Rearrange the Revisions and Additional CSS toggles #66476

Open
wants to merge 7 commits into
base: trunk
Choose a base branch
from

Conversation

afercia
Copy link
Contributor

@afercia afercia commented Oct 25, 2024

Fixes #66307
Fixes #66333

What?

The way to access Styles revisions and Additional CSS is inconsistent and little discoverable, especially for the Additional CSS. These features live in sub-panels of the Styles 'drill-down' menu. Other sub-panels use standard navigation buttons with a chevron icon to access the sub-panels.

For more details, please refer to the conversations on #66307
and #66333.

Why?

For consistency and better user experiences, accessing the sub-panels of the Styles drill-down menu should use a consistent pattern. Features should be well discoverable and not buried down into an ellipsis menu.

How?

  • Removes the Revisions icon button from the panel header.
  • Adds a 'Styles revisions' navigation button at the bottom of the panel. This button should appear only when there are revisions.
  • Removes the 'Additional CSS' menu item from the ellipsis 'More' menu.
  • Makes the 'Additional CSS' navigation button in the panel always visible, also when there's no custom CSS set. This basically reverts Move Additional CSS from the top-level Global Styles sidebar #47266
  • Removes the descriptions for 'Blocks' and 'Additional CSS'.

Additionally: FIxes a bug where accessing the Additional CSS from the navigation button at the bottom of the Styles panel
did not switch back the canvas to the default view when the Style Book was enabled. See #66333 (comment)

Testing Instructions

  • Make sure there is no additional CSS set.
  • Make sure there are no Styles revisions. I'm not sure how to do this other than deleting all the posts of type revision and title Custom Styles from the database.
  • Go to the Site editor > Styles panel in the edit view.
  • Observe there is an 'Additional CSS' button at the bottom of the Styles panel.
  • Observe there's no 'Styles revisions' button shown, yet.
  • Make any style change and save.
  • Navigate back to the root of the panel and observe there is now a 'Styles revisions' button shown.
  • Test navigating to the 'Styles revisions' panel with and without 'Style book' enabled and verify the canvas view changes as expected. There should be no differences in the behavior compared to trunk
  • Enable the Style Book, navigate to Additional CSS and verify that it does deactivate the Style Book.

Edit:

  • Go to the Site editor > Styles panel in the view mode, that is: the new Styles panel on the left.
  • Observe there's no 'Styles revisions' button.

Testing Instructions for Keyboard

Screenshots or screencast

Before and after:

before and after

@afercia afercia added [Focus] Accessibility (a11y) Changes that impact accessibility and need corresponding review (e.g. markup changes). Needs Design Feedback Needs general design feedback. Global Styles Anything related to the broader Global Styles efforts, including Styles Engine and theme.json [Package] Edit Site /packages/edit-site labels Oct 25, 2024
Copy link

github-actions bot commented Oct 25, 2024

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: afercia <afercia@git.wordpress.org>
Co-authored-by: t-hamano <wildworks@git.wordpress.org>
Co-authored-by: stokesman <presstoke@git.wordpress.org>
Co-authored-by: ramonjd <ramonopoly@git.wordpress.org>
Co-authored-by: jameskoster <jameskoster@git.wordpress.org>
Co-authored-by: draganescu <andraganescu@git.wordpress.org>
Co-authored-by: aaronrobertshaw <aaronrobertshaw@git.wordpress.org>
Co-authored-by: richtabor <richtabor@git.wordpress.org>

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

@afercia afercia added the [Type] Bug An existing feature does not function as intended label Oct 25, 2024
Copy link

github-actions bot commented Oct 25, 2024

Size Change: +41 B (0%)

Total Size: 1.82 MB

Filename Size Change
build/edit-site/index.min.js 219 kB +41 B (+0.02%)
ℹ️ View Unchanged
Filename Size
build-module/a11y/index.min.js 482 B
build-module/block-library/file/view.min.js 447 B
build-module/block-library/image/view.min.js 1.78 kB
build-module/block-library/navigation/view.min.js 1.16 kB
build-module/block-library/query/view.min.js 742 B
build-module/block-library/search/view.min.js 616 B
build-module/interactivity-router/index.min.js 3.03 kB
build-module/interactivity/debug.min.js 17.2 kB
build-module/interactivity/index.min.js 13.6 kB
build/a11y/index.min.js 952 B
build/annotations/index.min.js 2.26 kB
build/api-fetch/index.min.js 2.32 kB
build/autop/index.min.js 2.12 kB
build/blob/index.min.js 579 B
build/block-directory/index.min.js 7.26 kB
build/block-directory/style-rtl.css 1 kB
build/block-directory/style.css 1 kB
build/block-editor/content-rtl.css 4.42 kB
build/block-editor/content.css 4.41 kB
build/block-editor/default-editor-styles-rtl.css 394 B
build/block-editor/default-editor-styles.css 394 B
build/block-editor/index.min.js 255 kB
build/block-editor/style-rtl.css 15.4 kB
build/block-editor/style.css 15.4 kB
build/block-library/blocks/archives/editor-rtl.css 84 B
build/block-library/blocks/archives/editor.css 83 B
build/block-library/blocks/archives/style-rtl.css 90 B
build/block-library/blocks/archives/style.css 90 B
build/block-library/blocks/audio/editor-rtl.css 149 B
build/block-library/blocks/audio/editor.css 151 B
build/block-library/blocks/audio/style-rtl.css 132 B
build/block-library/blocks/audio/style.css 132 B
build/block-library/blocks/audio/theme-rtl.css 134 B
build/block-library/blocks/audio/theme.css 134 B
build/block-library/blocks/avatar/editor-rtl.css 115 B
build/block-library/blocks/avatar/editor.css 115 B
build/block-library/blocks/avatar/style-rtl.css 104 B
build/block-library/blocks/avatar/style.css 104 B
build/block-library/blocks/button/editor-rtl.css 265 B
build/block-library/blocks/button/editor.css 265 B
build/block-library/blocks/button/style-rtl.css 555 B
build/block-library/blocks/button/style.css 555 B
build/block-library/blocks/buttons/editor-rtl.css 291 B
build/block-library/blocks/buttons/editor.css 291 B
build/block-library/blocks/buttons/style-rtl.css 345 B
build/block-library/blocks/buttons/style.css 345 B
build/block-library/blocks/calendar/style-rtl.css 240 B
build/block-library/blocks/calendar/style.css 240 B
build/block-library/blocks/categories/editor-rtl.css 132 B
build/block-library/blocks/categories/editor.css 131 B
build/block-library/blocks/categories/style-rtl.css 152 B
build/block-library/blocks/categories/style.css 152 B
build/block-library/blocks/code/editor-rtl.css 53 B
build/block-library/blocks/code/editor.css 53 B
build/block-library/blocks/code/style-rtl.css 139 B
build/block-library/blocks/code/style.css 139 B
build/block-library/blocks/code/theme-rtl.css 122 B
build/block-library/blocks/code/theme.css 122 B
build/block-library/blocks/columns/editor-rtl.css 108 B
build/block-library/blocks/columns/editor.css 108 B
build/block-library/blocks/columns/style-rtl.css 420 B
build/block-library/blocks/columns/style.css 420 B
build/block-library/blocks/comment-author-avatar/editor-rtl.css 124 B
build/block-library/blocks/comment-author-avatar/editor.css 124 B
build/block-library/blocks/comment-author-name/style-rtl.css 72 B
build/block-library/blocks/comment-author-name/style.css 72 B
build/block-library/blocks/comment-content/style-rtl.css 120 B
build/block-library/blocks/comment-content/style.css 120 B
build/block-library/blocks/comment-date/style-rtl.css 65 B
build/block-library/blocks/comment-date/style.css 65 B
build/block-library/blocks/comment-edit-link/style-rtl.css 70 B
build/block-library/blocks/comment-edit-link/style.css 70 B
build/block-library/blocks/comment-reply-link/style-rtl.css 71 B
build/block-library/blocks/comment-reply-link/style.css 71 B
build/block-library/blocks/comment-template/style-rtl.css 200 B
build/block-library/blocks/comment-template/style.css 199 B
build/block-library/blocks/comments-pagination-numbers/editor-rtl.css 122 B
build/block-library/blocks/comments-pagination-numbers/editor.css 121 B
build/block-library/blocks/comments-pagination/editor-rtl.css 228 B
build/block-library/blocks/comments-pagination/editor.css 217 B
build/block-library/blocks/comments-pagination/style-rtl.css 234 B
build/block-library/blocks/comments-pagination/style.css 231 B
build/block-library/blocks/comments-title/editor-rtl.css 75 B
build/block-library/blocks/comments-title/editor.css 75 B
build/block-library/blocks/comments/editor-rtl.css 837 B
build/block-library/blocks/comments/editor.css 836 B
build/block-library/blocks/comments/style-rtl.css 637 B
build/block-library/blocks/comments/style.css 637 B
build/block-library/blocks/cover/editor-rtl.css 631 B
build/block-library/blocks/cover/editor.css 631 B
build/block-library/blocks/cover/style-rtl.css 1.7 kB
build/block-library/blocks/cover/style.css 1.69 kB
build/block-library/blocks/details/editor-rtl.css 65 B
build/block-library/blocks/details/editor.css 65 B
build/block-library/blocks/details/style-rtl.css 86 B
build/block-library/blocks/details/style.css 86 B
build/block-library/blocks/embed/editor-rtl.css 331 B
build/block-library/blocks/embed/editor.css 331 B
build/block-library/blocks/embed/style-rtl.css 419 B
build/block-library/blocks/embed/style.css 419 B
build/block-library/blocks/embed/theme-rtl.css 133 B
build/block-library/blocks/embed/theme.css 133 B
build/block-library/blocks/file/editor-rtl.css 326 B
build/block-library/blocks/file/editor.css 326 B
build/block-library/blocks/file/style-rtl.css 278 B
build/block-library/blocks/file/style.css 279 B
build/block-library/blocks/footnotes/style-rtl.css 198 B
build/block-library/blocks/footnotes/style.css 197 B
build/block-library/blocks/form-input/editor-rtl.css 229 B
build/block-library/blocks/form-input/editor.css 229 B
build/block-library/blocks/form-input/style-rtl.css 357 B
build/block-library/blocks/form-input/style.css 357 B
build/block-library/blocks/form-submission-notification/editor-rtl.css 344 B
build/block-library/blocks/form-submission-notification/editor.css 341 B
build/block-library/blocks/form-submit-button/style-rtl.css 69 B
build/block-library/blocks/form-submit-button/style.css 69 B
build/block-library/blocks/form/view.min.js 470 B
build/block-library/blocks/freeform/editor-rtl.css 2.6 kB
build/block-library/blocks/freeform/editor.css 2.6 kB
build/block-library/blocks/gallery/editor-rtl.css 946 B
build/block-library/blocks/gallery/editor.css 951 B
build/block-library/blocks/gallery/style-rtl.css 1.83 kB
build/block-library/blocks/gallery/style.css 1.82 kB
build/block-library/blocks/gallery/theme-rtl.css 108 B
build/block-library/blocks/gallery/theme.css 108 B
build/block-library/blocks/group/editor-rtl.css 334 B
build/block-library/blocks/group/editor.css 334 B
build/block-library/blocks/group/style-rtl.css 103 B
build/block-library/blocks/group/style.css 103 B
build/block-library/blocks/group/theme-rtl.css 79 B
build/block-library/blocks/group/theme.css 79 B
build/block-library/blocks/heading/style-rtl.css 188 B
build/block-library/blocks/heading/style.css 188 B
build/block-library/blocks/html/editor-rtl.css 346 B
build/block-library/blocks/html/editor.css 347 B
build/block-library/blocks/image/editor-rtl.css 799 B
build/block-library/blocks/image/editor.css 799 B
build/block-library/blocks/image/style-rtl.css 1.59 kB
build/block-library/blocks/image/style.css 1.59 kB
build/block-library/blocks/image/theme-rtl.css 137 B
build/block-library/blocks/image/theme.css 137 B
build/block-library/blocks/latest-comments/style-rtl.css 355 B
build/block-library/blocks/latest-comments/style.css 354 B
build/block-library/blocks/latest-posts/editor-rtl.css 139 B
build/block-library/blocks/latest-posts/editor.css 138 B
build/block-library/blocks/latest-posts/style-rtl.css 509 B
build/block-library/blocks/latest-posts/style.css 510 B
build/block-library/blocks/list/style-rtl.css 107 B
build/block-library/blocks/list/style.css 107 B
build/block-library/blocks/loginout/style-rtl.css 61 B
build/block-library/blocks/loginout/style.css 61 B
build/block-library/blocks/media-text/editor-rtl.css 321 B
build/block-library/blocks/media-text/editor.css 320 B
build/block-library/blocks/media-text/style-rtl.css 552 B
build/block-library/blocks/media-text/style.css 550 B
build/block-library/blocks/more/editor-rtl.css 427 B
build/block-library/blocks/more/editor.css 427 B
build/block-library/blocks/navigation-link/editor-rtl.css 644 B
build/block-library/blocks/navigation-link/editor.css 645 B
build/block-library/blocks/navigation-link/style-rtl.css 192 B
build/block-library/blocks/navigation-link/style.css 191 B
build/block-library/blocks/navigation-submenu/editor-rtl.css 295 B
build/block-library/blocks/navigation-submenu/editor.css 294 B
build/block-library/blocks/navigation/editor-rtl.css 2.2 kB
build/block-library/blocks/navigation/editor.css 2.2 kB
build/block-library/blocks/navigation/style-rtl.css 2.25 kB
build/block-library/blocks/navigation/style.css 2.23 kB
build/block-library/blocks/nextpage/editor-rtl.css 392 B
build/block-library/blocks/nextpage/editor.css 392 B
build/block-library/blocks/page-list/editor-rtl.css 378 B
build/block-library/blocks/page-list/editor.css 378 B
build/block-library/blocks/page-list/style-rtl.css 192 B
build/block-library/blocks/page-list/style.css 192 B
build/block-library/blocks/paragraph/editor-rtl.css 236 B
build/block-library/blocks/paragraph/editor.css 236 B
build/block-library/blocks/paragraph/style-rtl.css 341 B
build/block-library/blocks/paragraph/style.css 340 B
build/block-library/blocks/post-author-biography/style-rtl.css 74 B
build/block-library/blocks/post-author-biography/style.css 74 B
build/block-library/blocks/post-author-name/style-rtl.css 69 B
build/block-library/blocks/post-author-name/style.css 69 B
build/block-library/blocks/post-author/editor-rtl.css 107 B
build/block-library/blocks/post-author/editor.css 107 B
build/block-library/blocks/post-author/style-rtl.css 188 B
build/block-library/blocks/post-author/style.css 189 B
build/block-library/blocks/post-comments-form/editor-rtl.css 96 B
build/block-library/blocks/post-comments-form/editor.css 96 B
build/block-library/blocks/post-comments-form/style-rtl.css 527 B
build/block-library/blocks/post-comments-form/style.css 528 B
build/block-library/blocks/post-content/style-rtl.css 61 B
build/block-library/blocks/post-content/style.css 61 B
build/block-library/blocks/post-date/style-rtl.css 62 B
build/block-library/blocks/post-date/style.css 62 B
build/block-library/blocks/post-excerpt/editor-rtl.css 71 B
build/block-library/blocks/post-excerpt/editor.css 71 B
build/block-library/blocks/post-excerpt/style-rtl.css 155 B
build/block-library/blocks/post-excerpt/style.css 155 B
build/block-library/blocks/post-featured-image/editor-rtl.css 729 B
build/block-library/blocks/post-featured-image/editor.css 726 B
build/block-library/blocks/post-featured-image/style-rtl.css 347 B
build/block-library/blocks/post-featured-image/style.css 347 B
build/block-library/blocks/post-navigation-link/style-rtl.css 215 B
build/block-library/blocks/post-navigation-link/style.css 214 B
build/block-library/blocks/post-template/editor-rtl.css 99 B
build/block-library/blocks/post-template/editor.css 98 B
build/block-library/blocks/post-template/style-rtl.css 399 B
build/block-library/blocks/post-template/style.css 398 B
build/block-library/blocks/post-terms/style-rtl.css 96 B
build/block-library/blocks/post-terms/style.css 96 B
build/block-library/blocks/post-time-to-read/style-rtl.css 70 B
build/block-library/blocks/post-time-to-read/style.css 70 B
build/block-library/blocks/post-title/style-rtl.css 162 B
build/block-library/blocks/post-title/style.css 162 B
build/block-library/blocks/preformatted/style-rtl.css 125 B
build/block-library/blocks/preformatted/style.css 125 B
build/block-library/blocks/pullquote/editor-rtl.css 134 B
build/block-library/blocks/pullquote/editor.css 134 B
build/block-library/blocks/pullquote/style-rtl.css 342 B
build/block-library/blocks/pullquote/style.css 342 B
build/block-library/blocks/pullquote/theme-rtl.css 167 B
build/block-library/blocks/pullquote/theme.css 167 B
build/block-library/blocks/query-pagination-numbers/editor-rtl.css 121 B
build/block-library/blocks/query-pagination-numbers/editor.css 118 B
build/block-library/blocks/query-pagination/editor-rtl.css 154 B
build/block-library/blocks/query-pagination/editor.css 154 B
build/block-library/blocks/query-pagination/style-rtl.css 237 B
build/block-library/blocks/query-pagination/style.css 237 B
build/block-library/blocks/query-title/style-rtl.css 64 B
build/block-library/blocks/query-title/style.css 64 B
build/block-library/blocks/query/editor-rtl.css 452 B
build/block-library/blocks/query/editor.css 451 B
build/block-library/blocks/quote/style-rtl.css 238 B
build/block-library/blocks/quote/style.css 238 B
build/block-library/blocks/quote/theme-rtl.css 233 B
build/block-library/blocks/quote/theme.css 236 B
build/block-library/blocks/read-more/style-rtl.css 138 B
build/block-library/blocks/read-more/style.css 138 B
build/block-library/blocks/rss/editor-rtl.css 101 B
build/block-library/blocks/rss/editor.css 101 B
build/block-library/blocks/rss/style-rtl.css 288 B
build/block-library/blocks/rss/style.css 287 B
build/block-library/blocks/search/editor-rtl.css 199 B
build/block-library/blocks/search/editor.css 199 B
build/block-library/blocks/search/style-rtl.css 672 B
build/block-library/blocks/search/style.css 671 B
build/block-library/blocks/search/theme-rtl.css 113 B
build/block-library/blocks/search/theme.css 113 B
build/block-library/blocks/separator/editor-rtl.css 100 B
build/block-library/blocks/separator/editor.css 100 B
build/block-library/blocks/separator/style-rtl.css 248 B
build/block-library/blocks/separator/style.css 248 B
build/block-library/blocks/separator/theme-rtl.css 195 B
build/block-library/blocks/separator/theme.css 195 B
build/block-library/blocks/shortcode/editor-rtl.css 286 B
build/block-library/blocks/shortcode/editor.css 286 B
build/block-library/blocks/site-logo/editor-rtl.css 806 B
build/block-library/blocks/site-logo/editor.css 803 B
build/block-library/blocks/site-logo/style-rtl.css 218 B
build/block-library/blocks/site-logo/style.css 218 B
build/block-library/blocks/site-tagline/editor-rtl.css 87 B
build/block-library/blocks/site-tagline/editor.css 87 B
build/block-library/blocks/site-tagline/style-rtl.css 65 B
build/block-library/blocks/site-tagline/style.css 65 B
build/block-library/blocks/site-title/editor-rtl.css 85 B
build/block-library/blocks/site-title/editor.css 85 B
build/block-library/blocks/site-title/style-rtl.css 143 B
build/block-library/blocks/site-title/style.css 143 B
build/block-library/blocks/social-link/editor-rtl.css 273 B
build/block-library/blocks/social-link/editor.css 273 B
build/block-library/blocks/social-links/editor-rtl.css 729 B
build/block-library/blocks/social-links/editor.css 727 B
build/block-library/blocks/social-links/style-rtl.css 1.51 kB
build/block-library/blocks/social-links/style.css 1.5 kB
build/block-library/blocks/spacer/editor-rtl.css 346 B
build/block-library/blocks/spacer/editor.css 346 B
build/block-library/blocks/spacer/style-rtl.css 48 B
build/block-library/blocks/spacer/style.css 48 B
build/block-library/blocks/table-of-contents/style-rtl.css 83 B
build/block-library/blocks/table-of-contents/style.css 83 B
build/block-library/blocks/table/editor-rtl.css 394 B
build/block-library/blocks/table/editor.css 394 B
build/block-library/blocks/table/style-rtl.css 640 B
build/block-library/blocks/table/style.css 639 B
build/block-library/blocks/table/theme-rtl.css 152 B
build/block-library/blocks/table/theme.css 152 B
build/block-library/blocks/tag-cloud/editor-rtl.css 144 B
build/block-library/blocks/tag-cloud/editor.css 144 B
build/block-library/blocks/tag-cloud/style-rtl.css 266 B
build/block-library/blocks/tag-cloud/style.css 265 B
build/block-library/blocks/template-part/editor-rtl.css 368 B
build/block-library/blocks/template-part/editor.css 368 B
build/block-library/blocks/template-part/theme-rtl.css 113 B
build/block-library/blocks/template-part/theme.css 113 B
build/block-library/blocks/term-description/style-rtl.css 126 B
build/block-library/blocks/term-description/style.css 126 B
build/block-library/blocks/text-columns/editor-rtl.css 95 B
build/block-library/blocks/text-columns/editor.css 95 B
build/block-library/blocks/text-columns/style-rtl.css 165 B
build/block-library/blocks/text-columns/style.css 165 B
build/block-library/blocks/verse/style-rtl.css 98 B
build/block-library/blocks/verse/style.css 98 B
build/block-library/blocks/video/editor-rtl.css 441 B
build/block-library/blocks/video/editor.css 442 B
build/block-library/blocks/video/style-rtl.css 192 B
build/block-library/blocks/video/style.css 192 B
build/block-library/blocks/video/theme-rtl.css 134 B
build/block-library/blocks/video/theme.css 134 B
build/block-library/classic-rtl.css 179 B
build/block-library/classic.css 179 B
build/block-library/common-rtl.css 1.08 kB
build/block-library/common.css 1.08 kB
build/block-library/editor-elements-rtl.css 75 B
build/block-library/editor-elements.css 75 B
build/block-library/editor-rtl.css 11.7 kB
build/block-library/editor.css 11.7 kB
build/block-library/elements-rtl.css 54 B
build/block-library/elements.css 54 B
build/block-library/index.min.js 221 kB
build/block-library/reset-rtl.css 472 B
build/block-library/reset.css 472 B
build/block-library/style-rtl.css 15 kB
build/block-library/style.css 15 kB
build/block-library/theme-rtl.css 708 B
build/block-library/theme.css 712 B
build/block-serialization-default-parser/index.min.js 1.12 kB
build/block-serialization-spec-parser/index.min.js 2.87 kB
build/blocks/index.min.js 52.7 kB
build/commands/index.min.js 16.1 kB
build/commands/style-rtl.css 955 B
build/commands/style.css 952 B
build/components/index.min.js 227 kB
build/components/style-rtl.css 12.4 kB
build/components/style.css 12.4 kB
build/compose/index.min.js 12.7 kB
build/core-commands/index.min.js 3.08 kB
build/core-data/index.min.js 74.3 kB
build/customize-widgets/index.min.js 11 kB
build/customize-widgets/style-rtl.css 1.35 kB
build/customize-widgets/style.css 1.35 kB
build/data-controls/index.min.js 641 B
build/data/index.min.js 8.69 kB
build/date/index.min.js 18 kB
build/deprecated/index.min.js 458 B
build/dom-ready/index.min.js 325 B
build/dom/index.min.js 4.66 kB
build/edit-post/classic-rtl.css 578 B
build/edit-post/classic.css 580 B
build/edit-post/index.min.js 13.5 kB
build/edit-post/style-rtl.css 2.76 kB
build/edit-post/style.css 2.75 kB
build/edit-site/posts-rtl.css 7.51 kB
build/edit-site/posts.css 7.51 kB
build/edit-site/style-rtl.css 13.3 kB
build/edit-site/style.css 13.4 kB
build/edit-widgets/index.min.js 17.7 kB
build/edit-widgets/style-rtl.css 4.09 kB
build/edit-widgets/style.css 4.09 kB
build/editor/index.min.js 112 kB
build/editor/style-rtl.css 9.66 kB
build/editor/style.css 9.68 kB
build/element/index.min.js 4.82 kB
build/escape-html/index.min.js 537 B
build/format-library/index.min.js 8.05 kB
build/format-library/style-rtl.css 476 B
build/format-library/style.css 476 B
build/hooks/index.min.js 1.65 kB
build/html-entities/index.min.js 445 B
build/i18n/index.min.js 3.58 kB
build/is-shallow-equal/index.min.js 526 B
build/keyboard-shortcuts/index.min.js 1.31 kB
build/keycodes/index.min.js 1.46 kB
build/list-reusable-blocks/index.min.js 2.13 kB
build/list-reusable-blocks/style-rtl.css 852 B
build/list-reusable-blocks/style.css 852 B
build/media-utils/index.min.js 3.58 kB
build/notices/index.min.js 946 B
build/nux/index.min.js 1.62 kB
build/nux/style-rtl.css 749 B
build/nux/style.css 745 B
build/patterns/index.min.js 7.37 kB
build/patterns/style-rtl.css 687 B
build/patterns/style.css 685 B
build/plugins/index.min.js 1.86 kB
build/preferences-persistence/index.min.js 2.06 kB
build/preferences/index.min.js 2.9 kB
build/preferences/style-rtl.css 554 B
build/preferences/style.css 554 B
build/primitives/index.min.js 829 B
build/priority-queue/index.min.js 1.54 kB
build/private-apis/index.min.js 961 B
build/react-i18n/index.min.js 630 B
build/react-refresh-entry/index.min.js 9.47 kB
build/react-refresh-runtime/index.min.js 6.76 kB
build/redux-routine/index.min.js 2.7 kB
build/reusable-blocks/index.min.js 2.55 kB
build/reusable-blocks/style-rtl.css 256 B
build/reusable-blocks/style.css 256 B
build/rich-text/index.min.js 10.2 kB
build/router/index.min.js 2.11 kB
build/server-side-render/index.min.js 1.94 kB
build/shortcode/index.min.js 1.4 kB
build/style-engine/index.min.js 2.04 kB
build/token-list/index.min.js 581 B
build/url/index.min.js 3.9 kB
build/vendors/react-dom.min.js 41.7 kB
build/vendors/react-jsx-runtime.min.js 556 B
build/vendors/react.min.js 4.02 kB
build/viewport/index.min.js 965 B
build/vips/index.min.js 36.2 kB
build/warning/index.min.js 250 B
build/widgets/index.min.js 7.16 kB
build/widgets/style-rtl.css 1.16 kB
build/widgets/style.css 1.16 kB
build/wordcount/index.min.js 1.03 kB

compressed-size-action

@t-hamano t-hamano self-requested a review October 27, 2024 04:07
Copy link
Contributor

@t-hamano t-hamano left a comment

Choose a reason for hiding this comment

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

Thanks for the PR!

I agree with all the changes to the functionality, but when it comes to the ItemGroup style, I personally prefer the default style (without isBordered, isSeparated):

image

@t-hamano t-hamano requested review from ramonjd and a team October 27, 2024 04:08
@ramonjd
Copy link
Member

ramonjd commented Oct 27, 2024

Thank you! I have nothing against the move, and it does decrease the icon overload.

I've smoke tested revisions/stylebook in the editor and it works well.

Since this affects the UI mainly, I'll lean on the advice of @jameskoster and co, since they have a better idea of how it would fit within any upcoming design changes.

I personally prefer the default style (without isBordered, isSeparated):

+1

@afercia
Copy link
Contributor Author

afercia commented Oct 28, 2024

I think I know, more or less, why the tests are failing on this PR as the 'Revisions' button in the panel header has been removed. However, the site-editor/user-global-styles-revisions.spec.js test fails also on trunk for me. Not sure why but this makes fixing the test pretty challenging. Maybe I'm missing something or maybe I'm missing some configuration step. I did destroy the wp-env environment and restarted it but that didn't help.
I'd appreciate any help. This way, contributing becomes unnecessarily time consuming and a little frustrating.
Cc @WordPress/gutenberg-core

Output of the failing test on trunk:

test output.txt

@afercia
Copy link
Contributor Author

afercia commented Oct 28, 2024

I agree with all the changes to the functionality, but when it comes to the ItemGroup style, I personally prefer the default style (without isBordered, isSeparated):

I'm not opposed to that but then the styling should be consistend for all the similar navigation buttons. I created #66448 to address that.

@jameskoster
Copy link
Contributor

To avoid multiple changes in quick succession should we wait for a final design in #66376?

Copy link

github-actions bot commented Oct 28, 2024

Flaky tests detected in f150185.
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/11609443337
📝 Reported issues:

@afercia
Copy link
Contributor Author

afercia commented Oct 28, 2024

To avoid multiple changes in quick succession should we wait for a final design in #66376?

@jameskoster as I mentioned in #66307 (comment) I'm not sure I understand why #66376 is a blocker for this PR. Basically, #66376 aims to move the entire Styles panel but it doesn't touch its content. Instead, this PR is about the Styles panel content.

@draganescu
Copy link
Contributor

Checking out this PR and I see the new buttons are in a sort of segmented button with all borders on. This kinda keeps the problems around - what are these buttons and why are they so separated and special. In fact the previous way of having a description and a simple text + chevron (no border) is the right choice for this drill down panel.

Can we try the suggestion from @t-hamano and @jameskoster - have explanatory label (that always shows) and normal link-to buttons (text and chevron)?

@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

@draganescu thanks for your feedback.
As I mentioned in a previous comment #66476 (comment) I'm not opposed to a different styling of these navigation buttons, as long as:

  • They use one of the built-in styles of the ItemGroup component. No ad-hoc implementations or CSS overrides pleaae.
  • They use a consistent styles with other navigation buttons that live in this same panel, see Establish a consistent pattern for navigation buttons that open sub-panels #66448. All of these are the same component, they have the same functionality but they look different. I'd argue that's not good as it doesn;t make these controls consistent and their action predictable.

Anyways, I'll gladly change to one of the built-in styles please just tell me which one to use. Please consider the same styling should be used for all the other occurrences detailed on #66448

Can we try [...] have explanatory label (that always shows) and normal link-to buttons (text and chevron)?

I'm not sure I understand the point about labels. These buttons do have visible labels. Did you mean the descriptions perhaps? Those must be removed as they are aunique ad-hoc, inconsistent pattern. Tehy're duplicated in the sub-panels and they just add clutter.

In fact the previous way of having a description and a simple text + chevron (no border) is the right choice for this drill down panel.

I'm not comfortable with this kind of tone. Saying is the right choice is too assertive especially when not supported by any argument. It may be the right choice for you, it may not for other contributors. Plrease let's put more focus on being more open to different opinions and use a less assertive tone thanks.

@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

In the screenshot below: these are the available built-in styles, respectively:
none, isSeparated, isBordered, isBordered + isSeparated

Screenshot 2024-10-29 at 09 29 22

For completeness, there is also an isRounded variant.

@afercia afercia force-pushed the fix/relocate-styles-panel-buttons branch from 46b623b to 7643334 Compare October 29, 2024 08:56
@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

Latest commit tries the isSeparated style variant. Screenshot:

Screenshot 2024-10-29 at 09 54 53

@draganescu
Copy link
Contributor

In the screenshot below: these are the available built-in styles, respectively: none, isSeparated, isBordered, isBordered + isSeparated

Thanks for iterating @afercia - I think the style I was reffering to is none. This style is best because we start with the Browse styles button which is also apparently none.

Those must be removed as they are aunique ad-hoc, inconsistent pattern. Tehy're duplicated in the sub-panels and they just add clutter.

I don't think consistency should trump any other objective. The descriptions are there because the buttons "Blocks", "Additional CSS" and "Styles revisions" are disconnected from the above options, although in the same functional space "Styling". For a well versed user they may sound redundant but the role of these descriptions is discovery. And since your PR helps discovery by moving additional css and revisions into the main display then we should also leave the descriptions in place, so at the very least the buttons make sense in this context.

Previously, by having them in secondary areas (the dot menu and the extra panel buttons) the intent was to highlight that they're "secondary", special utility. You'd have to know what you want to access them. Here, bringing them front and center we require the descriptions so that users have the benefit of learning what these things do before venturing in. They're deffinitely not clutter.

@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

then we should also leave the descriptions in place

I kindly disagree. As I mentioned, that's a unique, inconsistent pattern. I can't support this kind of design direction as I think consistency is key and all that text adds unnecessary cognitive load, so that's also related to usability and accessibility.

Furthermore: descriptions should be placed after the object they refer to and never before. Also, descriptions should be programmatically associated to the object they refer to by the means of an aria-describedby which is missng here. So basically the implementation is very arguable.

About discoverability: these descriptions are used also in the sub-panels. For example, as an usrer, if I want to discover what 'Additional CSS' is I can just click on it and get the panel with the description.

Overall, I think the descriptions in the main panel are just redundant and inconsistent and their design is arguable. I vote for removing them.

@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

think the style I was reffering to is none. This style is best because we start with the Browse styles button which is also apparently none.

To me, as I already mentioned, all the navigation buttons in the styles panel and its sub-pabels should look the same. At the moment, they are largely inconsistent, see #66448

Controls that have the same functionality should use the same styling. This is key to allow users to identify, predict, and understand what these controls are. To me, this point sounds so obvious that it shouldn't even warrant discussing it. I'm not sure the none styling would be appropriate for all the cases detailed on #66448. Anyways, I'd encourage further evaluation and iteration on that issue as a follow-up.

@afercia
Copy link
Contributor Author

afercia commented Oct 29, 2024

Just reminding everyone this PR also fixes and existing bug:

FIxes a bug where accessing the Additional CSS from the navigation button at the bottom of the Styles panel
did not switch back the canvas to the default view when the Style Book was enabled. See #66333 (comment)

That should be fixed, either by this PR or a new one.

Copy link
Contributor

@stokesman stokesman left a comment

Choose a reason for hiding this comment

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

I'm in favor of this. It also seems like an iteration that shouldn’t much impact further design efforts in #66376 but I could be missing something. One thing I noticed while testing—though it’s probably unrelated to any changes here—is that when drilling down to Revisions or Blocks, the scroll position seems like it should reset to the top. It seems to do that a shorter viewport heights, but I'm seeing it around 680px.

styles-sidebar-drilldown-scroll-position.mp4

@aaronrobertshaw
Copy link
Contributor

I'm a little late to this party but appreciate the discussion all around 👍

My vote would be to hold off on this PR until the dust settles on #66376.

As I noted over on the original issue, the consistency argument has been raised a few times here and this proposed relocation swaps one inconsistency for another. The new location would still be inconsistent with the Styles panel in the site editor.

There is active work happening on the broader issue for the Style Book via #66376. The consistency argument can also be applied to limiting changes to the UI. We can avoid making users adapt to multiple successive UI updates, so in my view it doesn't cost us a lot here to be patient and skip one more small paper cut to users. This is likely part of the reasoning behind @jameskoster's earlier comment.

@afercia
Copy link
Contributor Author

afercia commented Oct 31, 2024

Fair enough, i will set this PR on hold. If #66376 doesn't make it for the next WordPress release I would suggest to bring back to life this PR and have at least this partial improvement in the release.

@afercia afercia marked this pull request as draft October 31, 2024 08:50
@afercia
Copy link
Contributor Author

afercia commented Oct 31, 2024

One thing I noticed while testing—though it’s probably unrelated to any changes here—is that when drilling down to Revisions or Blocks, the scroll position seems like it should reset to the to

@stokesman interesting. I see that happens (randomly) also when clicking on Typography or Colors. It seems it doesn't happen with Firefox. I'll check whether there's any code that specifically handles scrolling to top otherwise it's probsbly something related to how browsers treat 'scroll into view' of focused element in a different way.

@afercia afercia force-pushed the fix/relocate-styles-panel-buttons branch from 7643334 to f150185 Compare October 31, 2024 09:33
@afercia
Copy link
Contributor Author

afercia commented Oct 31, 2024

@stokesman I spent some time debugging the scroll to top issue. I can reproduce it also on trunk, by altering the height of the root panel. I removed the two paragraph of the descriptions just to alter the panel height. It appears that when the height of the root panel is shorter, drilling-down into some sub-panels shows that behavior, only with Chrome.

As such, it seems something unrelated to this PR.

  • Test on current trunk.
  • Emulate a viewport height of around 675 pixels.
  • Apply this diff:
    scrolltop-debug.txt
  • Go to the Styles panel and click 'Blocks'.

Animated GIF to illustrate:

scrolltop

@t-hamano
Copy link
Contributor

It looks like #66376 has been closed as resolved. Can we proceed with this PR?

@afercia afercia force-pushed the fix/relocate-styles-panel-buttons branch from f150185 to cf215a5 Compare November 18, 2024 08:11
@afercia
Copy link
Contributor Author

afercia commented Nov 18, 2024

Rebased.

@t-hamano
Copy link
Contributor

I tested this PR again. One concern is that the preview button doesn't work when I access the revision screen from the new Styles screen:

37dff762ad8d30bfa6126dfc35cdb18e.mp4

As for moving the revisions button, it might be a good idea to think a bit more about the ideal UI in #66719.

However, I think other UI improvements (Blocks and Additional CSS) can be pushed forward with this PR.

@afercia
Copy link
Contributor Author

afercia commented Nov 20, 2024

I tested this PR again. One concern is that the preview button doesn't work when I access the revision scree

Interesting, good catch. Probably not a big issue to fix, would need some investigation.

One more important thing to mention is that on current trunk, when removing any custom css from Additional CSS, then there's no longer a way to access Additional CSS again from the new Styles panel. The button disappears. There's no other control to access it. See animated GIF below:

additional css disappears

@afercia
Copy link
Contributor Author

afercia commented Nov 20, 2024

Thinking that the 'Styles revisions' button should now be shown conditionally;
With the new Styles panel, there's already a way to access Revisions. It's the 'Last modified' button in the navigation panel. Screenshot:

Screenshot 2024-11-20 at 10 15 20

This will be even more true with the proposed change discussed on #66606 where the 'Last modified' button will be labeled 'Revisions'.

As such, the Styles revisions within the Styles panel should only be displayed in the 'edit' canvas mode (i.e. the old styles panel on the right).

@afercia afercia force-pushed the fix/relocate-styles-panel-buttons branch from cf215a5 to a2de580 Compare November 20, 2024 09:30
@afercia
Copy link
Contributor Author

afercia commented Nov 20, 2024

Regarding this point:

Enable the Style Book, navigate to Additional CSS and verify that it does deactivate the Style Book.

This is the current behavior but I'm wondering what is the rationale behind it. Why the style book view should be switched back to the normal view when editing Additional CSS?

To me, it makes sense to allow users to edit custom CSS also in the Style Book view. For example: to see changes to headings etc. Screenshot:

Screenshot 2024-11-20 at 10 38 30

@afercia afercia force-pushed the fix/relocate-styles-panel-buttons branch from a2de580 to cbfc92b Compare November 20, 2024 14:47
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). Global Styles Anything related to the broader Global Styles efforts, including Styles Engine and theme.json Needs Design Feedback Needs general design feedback. [Package] Edit Site /packages/edit-site [Type] Bug An existing feature does not function as intended
Projects
None yet
7 participants