diff --git a/MVMCoreUI/Atomic/Organisms/Carousel/Carousel.swift b/MVMCoreUI/Atomic/Organisms/Carousel/Carousel.swift index 12399292..6ed0c584 100644 --- a/MVMCoreUI/Atomic/Organisms/Carousel/Carousel.swift +++ b/MVMCoreUI/Atomic/Organisms/Carousel/Carousel.swift @@ -177,6 +177,7 @@ open class Carousel: View { if let originalModel, carouselModel.isDeeplyVisuallyEquivalent(to: originalModel) { // Prevents a carousel reset while still updating the cell backing data through reconfigureItems. MVMCoreLoggingHandler.shared()?.handleDebugMessage("[\(Self.self)] Model is visually equivalent. Skipping rebuild...") + prepareMolecules(with: carouselModel) FormValidator.setupValidation(for: carouselModel, delegate: delegateObject?.formHolderDelegate) updateModelIndex() // Ensure the new model indexing matches the old. pagingView?.currentIndex = pageIndex // Trigger a paging view render. diff --git a/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift b/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift index 9ae3b1c4..d7c60545 100644 --- a/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift +++ b/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift @@ -56,13 +56,14 @@ open class ThreeLayerTableViewController: ProgrammaticTableViewController, Rotor } open override func updateUI(for molecules: [MoleculeModelProtocol]? = nil) { + let isFirstRender = self.isFirstRender super.updateUI(for: molecules) guard molecules == nil else { return } - + createViewForTableHeader() createViewForTableFooter() - tableView?.reloadData() + // Reloading the table is handled in updateViews. } override open func viewDidLoad() {