From e6ab321c7593ffab03e2fc59fbabf33f9889bcdd Mon Sep 17 00:00:00 2001 From: Serhiy Mytrovtsiy Date: Wed, 13 Jul 2022 19:53:34 +0200 Subject: [PATCH] feat: show `Merge widgets into one` option only if more than 1 widget is available --- Kit/module/settings.swift | 40 ++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/Kit/module/settings.swift b/Kit/module/settings.swift index 6f68b475..51869d1e 100644 --- a/Kit/module/settings.swift +++ b/Kit/module/settings.swift @@ -236,25 +236,27 @@ open class Settings: NSStackView, Settings_p { return } - let container = NSStackView() - container.orientation = .vertical - container.distribution = .gravityAreas - container.translatesAutoresizingMaskIntoConstraints = false - container.edgeInsets = NSEdgeInsets( - top: Constants.Settings.margin, - left: Constants.Settings.margin, - bottom: Constants.Settings.margin, - right: Constants.Settings.margin - ) - container.spacing = Constants.Settings.margin - - container.addArrangedSubview(toggleSettingRow( - title: "\(localizedString("Merge widgets into one"))", - action: #selector(self.toggleOneView), - state: self.oneViewState - )) - - self.widgetSettingsContainer?.addArrangedSubview(container) + if self.widgets.filter({ $0.isActive }).count > 1 { + let container = NSStackView() + container.orientation = .vertical + container.distribution = .gravityAreas + container.translatesAutoresizingMaskIntoConstraints = false + container.edgeInsets = NSEdgeInsets( + top: Constants.Settings.margin, + left: Constants.Settings.margin, + bottom: Constants.Settings.margin, + right: Constants.Settings.margin + ) + container.spacing = Constants.Settings.margin + + container.addArrangedSubview(toggleSettingRow( + title: "\(localizedString("Merge widgets into one"))", + action: #selector(self.toggleOneView), + state: self.oneViewState + )) + + self.widgetSettingsContainer?.addArrangedSubview(container) + } for i in 0...list.count - 1 { self.widgetSettingsContainer?.addArrangedSubview(WidgetSettings(