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

Release MDC Segmented Button #6069

Closed
11 of 12 tasks
abhiomkar opened this issue Jun 15, 2020 · 9 comments · Fixed by #6555
Closed
11 of 12 tasks

Release MDC Segmented Button #6069

abhiomkar opened this issue Jun 15, 2020 · 9 comments · Fixed by #6555

Comments

@abhiomkar
Copy link
Collaborator

abhiomkar commented Jun 15, 2020

Tracking bug to implement and release MDC Segmented Button (AKA Toggle Group Button).

  • Draft Design Doc
  • Get Design Doc reviewed
  • Build initial prototype
  • Create bare structure of Segmented button component
    • Create folder (packages/mdc-segmented-button)
    • Add bare minimum files including package.json, Sass files (bare minimum)
    • Add README file with bare minimum document structure
  • Add base styles and theme mixins
  • Add adapter interface & foundation (Add unit tests)
  • Implement MDC vanilla component - component.ts (Add unit tests)
  • Update README documentation in each above step.
  • Fully test (Manual) for accessibility.
    • Perform accessibility audit using chrome dev tool.
    • Manually test using screen readers (Minimum 2 screen readers)
  • Set appropriate visibility setting in NPM registry for @material/segmented-button package.
  • UX review (Material Design)
  • Remove package from dependency test exemptions
@gschrag
Copy link
Collaborator

gschrag commented Jul 14, 2020

Pull Requests related to this Issue:

PR#6073: Add new package for segmented button
PR#6141: Add initial SASS styles
PR#6165: Add Adapters and Foundations
PR#6198: Add foundation business logic
PR#6222: Add component outlines
PR#6223: Implement components
PR#6277: Add ripple and touch-target support
PR#6279: Add README.md
PR#6380: Fix SASS include statements
PR#6381: Auto selections if singleSelect
PR#6382: Add README.md

@gschrag
Copy link
Collaborator

gschrag commented Aug 10, 2020

I believe there are still some themeability that needs to be added to the component before it's finished, such as density and being disabled, as well as some functionality like if there should be a default selection in the case of single-select. But could you provide the specific things that need to be completed for the component to be included in the material-component-web npm package?

@abhiomkar
Copy link
Collaborator Author

Hi Gabriel -- Do you have a link to the updated demo of this component?

@abhiomkar
Copy link
Collaborator Author

Sent you the checklist for accessibility self-assessment. You'll have to manually test using at-least 2 screen readers.

@gschrag
Copy link
Collaborator

gschrag commented Aug 13, 2020

The updated demo is live at: http://mdc-segmented-button.surge.sh/
The demo doesn't demonstrate a usage for the buttons other than toggling them on/off, but does log emitted events to the console.

@abhiomkar
Copy link
Collaborator Author

Looking great! Can you update the demo to include following usages?

  • Single select with only icons
  • Multi-select with only icons
  • Single select containing icons + label in all segments.
  • Multi-select containing icons + label in all segments.

(Remove baseline example).

I'll share this demo with design for feedback. Meanwhile please fill out the a11y self-assessment checklist.

Let me know if you've any questions!

@gschrag
Copy link
Collaborator

gschrag commented Aug 14, 2020

I've updated the demo.

@gschrag
Copy link
Collaborator

gschrag commented Aug 14, 2020

I've filled out the a11y checklist as much as I could, except for:

1.16 Magnification and screen reading works, but I haven't tested on Firefox or IE.
2.7 I don't know if the singleSelect unselecting a segment should be read out loud with a screen reader (or how to do it)
Secondary Use Cases: I don't know what to put here. The component works with tab, shift+tab, and enter, but not arrow keys
Platforms: I've only tested the component in Chrome on a Pixelbook

@aeromac
Copy link

aeromac commented May 14, 2021

Is there a difference between this at the toggle buttons? The buttons page says 'MDC Web currently does not support toggle button groups' but it looks like it, in fact, does - but by a different name?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants