From b10deb0f1b557e139c3f9a9adcd4af2c69fc10d7 Mon Sep 17 00:00:00 2001 From: Wagner Maciel Date: Tue, 15 Nov 2022 16:05:51 -0500 Subject: [PATCH 1/3] fix(material/slider): update VI when toggling discrete * Fixes an issue where the value indicator ui is not initialized when toggling discrete on --- src/material/slider/slider.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/material/slider/slider.ts b/src/material/slider/slider.ts index 107488276f6f..fcb15d9dda2e 100644 --- a/src/material/slider/slider.ts +++ b/src/material/slider/slider.ts @@ -135,6 +135,17 @@ export class MatSlider } set discrete(v: BooleanInput) { this._discrete = coerceBooleanProperty(v); + + // Ensure the value indicator UI is initialized & up to date. + const eInput = this._getInput(_MatThumb.END); + const sInput = this._getInput(_MatThumb.START); + + if (eInput) { + this._updateValueIndicatorUI(eInput); + } + if (sInput) { + this._updateValueIndicatorUI(sInput); + } } private _discrete: boolean = false; From 659de4f615f03ef53f695ce53b95e407f483e70e Mon Sep 17 00:00:00 2001 From: Wagner Maciel Date: Wed, 16 Nov 2022 16:37:48 -0500 Subject: [PATCH 2/3] fixup! fix(material/slider): update VI when toggling discrete --- src/material/slider/slider.ts | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/src/material/slider/slider.ts b/src/material/slider/slider.ts index fcb15d9dda2e..22aa5f421cea 100644 --- a/src/material/slider/slider.ts +++ b/src/material/slider/slider.ts @@ -135,17 +135,7 @@ export class MatSlider } set discrete(v: BooleanInput) { this._discrete = coerceBooleanProperty(v); - - // Ensure the value indicator UI is initialized & up to date. - const eInput = this._getInput(_MatThumb.END); - const sInput = this._getInput(_MatThumb.START); - - if (eInput) { - this._updateValueIndicatorUI(eInput); - } - if (sInput) { - this._updateValueIndicatorUI(sInput); - } + this._updateValueIndicatorUIs(); } private _discrete: boolean = false; @@ -496,8 +486,7 @@ export class MatSlider eInput._updateStaticStyles(); sInput._updateStaticStyles(); - this._updateValueIndicatorUI(eInput); - this._updateValueIndicatorUI(sInput); + this._updateValueIndicatorUIs(); this._hasViewInitialized = true; @@ -784,6 +773,19 @@ export class MatSlider } } + /** Updates all value indicator UIs in the slider. */ + _updateValueIndicatorUIs(): void { + const eInput = this._getInput(_MatThumb.END); + const sInput = this._getInput(_MatThumb.START); + + if (eInput) { + this._updateValueIndicatorUI(eInput); + } + if (sInput) { + this._updateValueIndicatorUI(sInput); + } + } + // Update Tick Mark Track Width // // 1. Min, max, or step From 6b2feecb714d1720ae71e6c6173b1b3ceb385e3d Mon Sep 17 00:00:00 2001 From: Wagner Maciel Date: Wed, 16 Nov 2022 16:56:54 -0500 Subject: [PATCH 3/3] fixup! fix(material/slider): update VI when toggling discrete --- src/material/slider/slider.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/material/slider/slider.ts b/src/material/slider/slider.ts index 22aa5f421cea..ccc3769da1b3 100644 --- a/src/material/slider/slider.ts +++ b/src/material/slider/slider.ts @@ -774,7 +774,7 @@ export class MatSlider } /** Updates all value indicator UIs in the slider. */ - _updateValueIndicatorUIs(): void { + private _updateValueIndicatorUIs(): void { const eInput = this._getInput(_MatThumb.END); const sInput = this._getInput(_MatThumb.START);