@@ -13,17 +13,17 @@ export function sliderGetEnabledColorStateList(color: Color, alpha = 255) {
13
13
}
14
14
return getEnabledColorStateList ( color . android , new Color ( alpha , 158 , 158 , 158 ) . android ) ;
15
15
}
16
- export const valueProperty = new CoercibleProperty < Slider , number > ( {
16
+ export const valueProperty = new Property < Slider , number > ( {
17
17
name : 'value' ,
18
18
// defaultValue: 0,
19
- coerceValue : ( target , value ) => {
20
- if ( target . minValue !== undefined && target . maxValue !== undefined ) {
21
- value = Math . max ( value , target . minValue ) ;
22
- value = Math . min ( value , target . maxValue ) ;
23
- }
19
+ // coerceValue: (target, value) => {
20
+ // if (target.minValue !== undefined && target.maxValue !== undefined) {
21
+ // value = Math.max(value, target.minValue);
22
+ // value = Math.min(value, target.maxValue);
23
+ // }
24
24
25
- return value ;
26
- } ,
25
+ // return value;
26
+ // },
27
27
valueConverter : ( v ) => parseFloat ( v )
28
28
} ) ;
29
29
/**
@@ -34,7 +34,7 @@ export const minValueProperty = new Property<Slider, number>({
34
34
// defaultValue: 0,
35
35
valueChanged : ( target , oldValue , newValue ) => {
36
36
maxValueProperty . coerce ( target ) ;
37
- valueProperty . coerce ( target ) ;
37
+ // valueProperty.coerce(target);
38
38
} ,
39
39
valueConverter : ( v ) => parseFloat ( v )
40
40
} ) ;
@@ -52,7 +52,7 @@ export const maxValueProperty = new CoercibleProperty<Slider, number>({
52
52
53
53
return value ;
54
54
} ,
55
- valueChanged : ( target , oldValue , newValue ) => valueProperty . coerce ( target ) ,
55
+ // valueChanged: (target, oldValue, newValue) => valueProperty.coerce(target),
56
56
valueConverter : ( v ) => parseFloat ( v )
57
57
} ) ;
58
58
export class Slider extends View {
@@ -79,6 +79,8 @@ export class Slider extends View {
79
79
}
80
80
const result = new ASlider ( this . _context ) ;
81
81
result . setLabelBehavior ( 2 ) ; // com.google.android.material.slider.LabelFormatter.LABEL_GONE
82
+ result . setValueFrom ( DEFAULT_MIN ) ;
83
+ result . setValueTo ( DEFAULT_MAX ) ;
82
84
return result ;
83
85
}
84
86
initNativeView ( ) {
@@ -91,8 +93,6 @@ export class Slider extends View {
91
93
}
92
94
}
93
95
} ) ;
94
- nativeView . setValueFrom ( this . minValue || DEFAULT_MIN ) ;
95
- nativeView . setValueTo ( this . maxValue || DEFAULT_MAX ) ;
96
96
nativeView . addOnChangeListener ( this . listener ) ;
97
97
}
98
98
disposeNativeView ( ) {
@@ -149,10 +149,14 @@ export class Slider extends View {
149
149
this . nativeViewProtected . setStepSize ( value ) ;
150
150
}
151
151
[ valueProperty . setNative ] ( value ) {
152
- // ensure we set min/max to prevent errors in listviews while reusing cells
153
- // will sliders with different min/max
154
- this . nativeViewProtected . setValueFrom ( this . minValue || DEFAULT_MIN ) ;
155
- this . nativeViewProtected . setValueTo ( this . maxValue || DEFAULT_MAX ) ;
152
+ // ensure we set min/max to prevent errors depending on the ordered or applied props
153
+ // when reusing sliders with different min/max
154
+ const min = this . minValue || DEFAULT_MIN ;
155
+ const max = this . maxValue || DEFAULT_MAX ;
156
+ this . nativeViewProtected . setValueFrom ( min ) ;
157
+ this . nativeViewProtected . setValueTo ( max ) ;
158
+ value = Math . max ( value , min ) ;
159
+ value = Math . min ( value , max ) ;
156
160
this . nativeViewProtected . setValue ( value ) ;
157
161
}
158
162
[ minValueProperty . setNative ] ( value ) {
0 commit comments