From c2a9fecd3bdc77bc0a3bf3f34902c8f7bd4af1db Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Mon, 15 Aug 2022 16:30:48 -0500 Subject: [PATCH] added shouldUpdateView Signed-off-by: Matt Bruce --- VDS/Components/RadioButton/RadioButtonGroup.swift | 6 ++++++ VDS/Components/Selector/SelectorGroupBase.swift | 8 ++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/VDS/Components/RadioButton/RadioButtonGroup.swift b/VDS/Components/RadioButton/RadioButtonGroup.swift index 7c792e2c..805dd6bd 100644 --- a/VDS/Components/RadioButton/RadioButtonGroup.swift +++ b/VDS/Components/RadioButton/RadioButtonGroup.swift @@ -37,6 +37,12 @@ public class RadioButtonGroupBase.ModelType) -> Bool { + let update = viewModel.selectedModel?.id != model.selectedModel?.id + || super.shouldUpdateView(viewModel: viewModel) + return update + } + public override func didSelect(selector: RadioButtonGroupModelType.SelectorType) { for selectorModel in model.selectors { diff --git a/VDS/Components/Selector/SelectorGroupBase.swift b/VDS/Components/Selector/SelectorGroupBase.swift index 0e3d0c1c..bbe285a3 100644 --- a/VDS/Components/Selector/SelectorGroupBase.swift +++ b/VDS/Components/Selector/SelectorGroupBase.swift @@ -65,8 +65,12 @@ open class SelectorGroupBase Bool { - return true + open override func shouldUpdateView(viewModel: SelectorGroupType) -> Bool { + let update = viewModel.selectors.count != model.selectors.count + || viewModel.hasError != model.hasError + || viewModel.surface != model.surface + || viewModel.disabled != model.disabled + return update } open override func updateView(viewModel: ModelType) {