 	
 	override func viewWillDisappear() {
 		super.viewWillDisappear()
-		unloadWindowForPreference(title: nil)
+		/// Clear UI
+		widgets = []
+		selectedWidget = nil
+		async { [weak self] in
+			self?.unloadWindowForPreference(title: "This widget has no preferences".localized)
+			self?.tableView.reloadData()
+			self?.updateUIElements()
+		}
 	}
 	
 	deinit {

		guard let version = version,
			  let controller = UpdateAlertController(
				newVersion: version,
				fromVersion: widget.version,
				packageName: "\(widget.name) Widget",
				updateHandle: { [weak self] in
					self?.updateSelectedWidget()

		})?.value else {
			return nil
		}
		return (widget.version + widget.build) < newVersion.name ? newVersion : nil
	}
	
    /// View for cell in row
