bug(MatList): matListItemMeta forces color onto any element under it
- Dominant language
- TypeScript
- Stars
- 25k
- Forks
- 6.8k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 91
Description
### Is this a regression?
- [X] Yes, this behavior used to work in the previous version
### The previous version in which this bug was not present was
14.3.0
### Description
After the material migration to Angular 15, we have lost the ability to freely change the color elements within the matListItemMeta directive.
This means that if you put two buttons in an element of the list, one enabled and one disabled, they will both appear to be of the same color. This makes buttons appear disabled even when they're not.
Of course this directive didn't exist in Angular 14, but it is the only place to put these elements in this version.
I understand this might have been on purpose as it appears that this section might only be intended for text, but it makes a great drawer for buttons that perform actions on elements of the list, and it used to work perfectly for this.
### Reproduction
This happens both in Angular 15 and 16
Angular 15:
https://stackblitz.com/edit/components-issue-gvbxke?file=src%2Fapp%2Fexample-component.html
Angular 16:
https://stackblitz.com/edit/angular-16-material-starter-upzbq5?file=src%2Fapp%2Fapp.module.ts,src%2Fapp%2Fapp.component.html
### Expected Behavior
When putting buttons or icons inside the matListItemMeta they should keep their color.
### Actual Behavior
When putting buttons or icons inside the matListItemMeta they change their color to grey (same exact color as a disabled button), affecting the usability of buttons.
### Environment
- Angular: 15&16
- CDK/Material: 15.2.9 (latest)
Package Manager: npm 8.19.2
- Operating System : Ubuntu 20.04.6 LTS
Contributor guide
Research direction
Start with the linked Angular 15 and Angular 16 StackBlitz reproductions, especially example-component.html, app.module.ts, and app.component.html, to confirm how matListItemMeta affects nested buttons and icons. Trace the matListItemMeta styling and verify that enabled and disabled controls retain their intended colors while the existing list behavior remains intact.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100