fix(GlSorting): Make dropdown toggle conform to design
What does this MR do?
This removes a legacy dropdown-menu-toggle
class that was applied to
the dropdown toggle within the component. That class applied various
irrelevant styles within GitLab itself, but notably also set the width to
a fixed 160px. This violates the design guidelines, disagrees with the
plain GlDropdown's styling, and generally isn't a good idea.
Backwards compatibility
The GlSorting
component is used in only a few places in GitLab (e.g., releases, members). The integration branch can be used to determine the impact, which should be minimal. In the worst case, those uses can simply add a dropdown-toggle-class="dropdown-menu-toggle"
prop to preserve the previous styling.
Screenshots
The component renders the same either way in Storybook, but in GitLab itself where the dropdown-menu-toggle
class is defined, there's a difference:
Before (in GitLab) | After (in GitLab) |
---|---|
Does this MR meet the acceptance criteria?
Conformity
-
Code review guidelines. -
GitLab UI's contributing guidlines. -
If it changes a Pajamas-compliant component's look & feel, the MR has been reviewed by a UX designer. - [-] If it changes GitLab UI's documentation guidelines, the MR has been reviewed by a Technical Writer.
-
If the MR changes a component's API, integration MR(s) have been opened in the following projects to ensure that the @gitlab/ui
package can be upgraded quickly after the changes are released:-
GitLab: gitlab!66734 (closed) - [-] CustomersDot: mr_url
- [-] Status Page: mr_url
-
-
Added the ~"component:*"
label(s) if applicable.
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
- [-] Label as security and @ mention
@gitlab-com/gl-security/appsec
- [-] Security reports checked/validated by a reviewer from the AppSec team
Accessibility
If this MR adds or modifies a component, take a few moments to review the following:
-
All actions and functionality can be done with a keyboard. -
Links, buttons, and controls have a visible focus state. -
All content is presented in text or with a text equivalent. For example, alt text for SVG, or aria-label
for icons that have meaning or perform actions. -
Changes in a component’s state are announced by a screen reader. For example, changing aria-expanded="false"
toaria-expanded="true"
when an accordion is expanded. -
Color combinations have sufficient contrast.