Skip to content

bug(MatSelect): Mdc line ripple doesn't use the color from the theme if it gets disabled right after receiving a value #28850

Open
@bzh2610

Description

@bzh2610

Is this a regression?

  • Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was

No response

Description

The bottom "line ripple" of a mat-select field doesn't always retrieve its color from the theme variable --mdc-filled-text-field-disabled-active-indicator-color when disabled.

See example below :
Screenshot 2024-04-10 at 10 46 25

On this example, the two select inputs are identical and inherit the same styles, the sole difference is that the first input is disabled from the start and the second input is disabled once an option is selected.

If I inspect the line ripple, it seems that once I picked a value and disabled the input the line ripple :after selector changes and inherit a color from --mat-app-text-color :
Screenshot 2024-04-10 at 10 40 58

If I manually change the color in :after to transparent, I get the expect result :
Screenshot 2024-04-10 at 10 41 15

Reproduction

StackBlitz link: https://stackblitz.com/edit/jnudjj
Steps to reproduce:

  1. In theme.scss, after Material theme import, override the value from --mdc-filled-text-field-disabled-active-indicator-colorto differentiate it easily
  2. Create a component with one mat-select input which gets disabled right after we picked a value :
    <mat-select #someInput [disabled]="!!someInput?.value">

Expected Behavior

I get an indentical color for the line ripple whether mat-select is disabled from the start or after picking a value.

Actual Behavior

When a mat-select input gets disabled right after a value is picked, the line ripple color is not correct.

Environment

  • Angular: 17.3.1
  • CDK/Material: 17.3.1
  • Browser(s): Chrome
  • Operating System (e.g. Windows, macOS, Ubuntu): macOS

Metadata

Metadata

Assignees

No one assigned

    Labels

    P4A relatively minor issue that is not relevant to core functionsarea: material/select

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions