Skip to content

Commit

Permalink
[NTC][Slider] Make tick size defaults to the stop indicator size if set
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 617609939
(cherry picked from commit f3a93d0)
  • Loading branch information
paulfthomas authored and hunterstich committed Mar 21, 2024
1 parent 387f59b commit 92bc02c
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 5 deletions.
7 changes: 5 additions & 2 deletions docs/components/Slider.md
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,9 @@ slider also has tick marks.
`app:trackColorInative`. It's a shorthand for setting both values to the same
thing.

**Note:** `app:trackStopIndicatorSize` takes precedence over
`app:tickRadiusActive` and `app:tickRadiusInactive`.

#### Thumb attributes

| Element | Attribute | Related method(s) | Default value |
Expand Down Expand Up @@ -346,8 +349,8 @@ Element | Attribute | Related method(s)
| **Color** | `app:tickColor` | `setTickTintList`<br/>`getTickTintList` | `null` |
| **Color for tick's active part** | `app:tickColorActive` | `setTickActiveTintList`<br/>`getTickActiveTintList` | `?attr/colorSurfaceContainerHighest` |
| **Color for tick's inactive part** | `app:tickColorInactive` | `setTickInactiveTintList`<br/>`getTickInactiveTintList` | `?attr/colorPrimary` |
| **Radius for tick's active part** | `app:tickRadiusActive` | `setTickActiveRadius`<br/>`getTickActiveRadius` | `1dp` |
| **Radius for tick's inactive part** | `app:tickRadiusInactive` | `setTickInactiveRadius`<br/>`getTickInactiveRadius` | `1dp` |
| **Radius for tick's active part** | `app:tickRadiusActive` | `setTickActiveRadius`<br/>`getTickActiveRadius` | `null` (1/2 trackStopIndicatorSize) |
| **Radius for tick's inactive part** | `app:tickRadiusInactive` | `setTickInactiveRadius`<br/>`getTickInactiveRadius` | `null` (1/2 trackStopIndicatorSize) |
| **Tick visible** | `app:tickVisible` | `setTickVisible`<br/>`isTickVisible()` | `true` |

**Note:** `app:tickColor` takes precedence over `app:tickColorActive` and
Expand Down
7 changes: 4 additions & 3 deletions lib/java/com/google/android/material/slider/BaseSlider.java
Original file line number Diff line number Diff line change
Expand Up @@ -538,9 +538,10 @@ private void processAttributes(Context context, AttributeSet attrs, int defStyle

setTrackHeight(a.getDimensionPixelSize(R.styleable.Slider_trackHeight, 0));

setTickActiveRadius(a.getDimensionPixelSize(R.styleable.Slider_tickRadiusActive, 0));

setTickInactiveRadius(a.getDimensionPixelSize(R.styleable.Slider_tickRadiusInactive, 0));
setTickActiveRadius(
a.getDimensionPixelSize(R.styleable.Slider_tickRadiusActive, trackStopIndicatorSize / 2));
setTickInactiveRadius(
a.getDimensionPixelSize(R.styleable.Slider_tickRadiusInactive, trackStopIndicatorSize / 2));

setLabelBehavior(a.getInt(R.styleable.Slider_labelBehavior, LABEL_FLOATING));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@
<item name="thumbColor">@color/m3_slider_thumb_color</item>
<item name="tickColorActive">@color/m3_slider_inactive_track_color</item>
<item name="tickColorInactive">@color/m3_slider_active_track_color</item>
<item name="tickRadiusActive">@null</item>
<item name="tickRadiusInactive">@null</item>
<item name="trackColorActive">@color/m3_slider_active_track_color</item>
<item name="trackColorInactive">@color/m3_slider_inactive_track_color</item>
<item name="trackHeight">@dimen/m3_comp_slider_inactive_track_height</item>
Expand Down

0 comments on commit 92bc02c

Please sign in to comment.