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

Enhancing Button/Toggle Group Consistency and Visual Clarity #67256

Open
jayclydeTags opened this issue Nov 24, 2024 · 4 comments
Open

Enhancing Button/Toggle Group Consistency and Visual Clarity #67256

jayclydeTags opened this issue Nov 24, 2024 · 4 comments
Labels
Needs Design Feedback Needs general design feedback. [Package] Components /packages/components [Type] Enhancement A suggestion for improvement.

Comments

@jayclydeTags
Copy link

What problem does this address?

Currently, there's a lack of visual consistency and clarity in the grouping of certain settings and style options within Gutenberg. For instance, the Font Size Picker, Appearance ordering, and Items per Page options are clearly grouped visually, while others like Justification, Decoration, etc., lack a distinct visual grouping. This inconsistency can hinder user experience and understanding.

Bordered Group No visual
Image Image
Image Image Image

What is your proposed solution?

To address this issue, we propose the following improvements:

  1. Consistent Visual Grouping:
  • Border: Introduce a subtle border around related button or toggle groups to visually differentiate them from other options. This will create a clear visual hierarchy and enhance the overall layout.
  1. Default Styles for Orientation and Letter Case:
  • Implement default styles for Orientation and Letter Case settings to provide a consistent baseline and improve user experience.
  1. Flexible Button Groups:
  • Consider making button groups more flexible, similar to the Appearance > Items per Page option . This would allow for dynamic adjustments based on panel size

By implementing these changes, we can significantly enhance the visual clarity, consistency, and user experience of Gutenberg's interface, making it easier for users to understand and interact with the various settings and style options.

Mockup https://www.figma.com/design/QLc1Di5xCp063RkXgS6FRZ/WordPress-Design-System---Explorations?node-id=18368-43985

Image

@jayclydeTags jayclydeTags added the [Type] Enhancement A suggestion for improvement. label Nov 24, 2024
@jayclydeTags
Copy link
Author

To avoid potential visual clutter, I've experimented with alternative methods to differentiate between input fields and toggle groups. What do you think?

Image

@t-hamano t-hamano added Needs Design Feedback Needs general design feedback. [Package] Components /packages/components labels Nov 25, 2024
@hanneslsm
Copy link

For the block variation selection and justification the border appears already now on hover. I don't know the reasoning behind this.
For text decoration, it the border doesn't appear. Not sure, if this is bug.

@mirka
Copy link
Member

mirka commented Nov 27, 2024

For what it's worth, these were intentional design decisions based on whether or not the options are icon buttons. The border is basically controlled by the isBlock prop on the ToggleGroupControl component.

Design updates for the component are being discussed in #64439, though we don't have a consensus yet. A big requirement for the redesign is to support more accessibility features, like disabled states and focus states that are separate from the selection state.

@mirka
Copy link
Member

mirka commented Nov 27, 2024

For text decoration, it the border doesn't appear. Not sure, if this is bug.

This is the deselectable variant, in which each button needs a separate tab stop. (Otherwise, the entire control has a single tab stop, and options are navigated by arrow keys.) In this design iteration, the outer border doubled as a focus indicator.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs Design Feedback Needs general design feedback. [Package] Components /packages/components [Type] Enhancement A suggestion for improvement.
Projects
None yet
Development

No branches or pull requests

4 participants