| | |
| | | // MARK: - Preferences View |
| | | |
| | | struct PreferencesView: View { |
| | | private let settingsWindowWidth: CGFloat = 880 |
| | | private let settingsContentWidth: CGFloat = 820 |
| | | private let settingsWindowWidth: CGFloat = 1000 |
| | | private let settingsContentWidth: CGFloat = 940 |
| | | private let generalContentWidth: CGFloat = 720 |
| | | private let generalLabelWidth: CGFloat = 190 |
| | | private let generalControlWidth: CGFloat = 500 |
| | |
| | | } |
| | | private var languageColumns: [GridItem] { |
| | | [ |
| | | GridItem(.flexible(minimum: 220), spacing: 18, alignment: .top), |
| | | GridItem(.flexible(minimum: 220), spacing: 18, alignment: .top), |
| | | GridItem(.flexible(minimum: 180), spacing: 14, alignment: .top), |
| | | GridItem(.flexible(minimum: 180), spacing: 14, alignment: .top), |
| | | GridItem(.flexible(minimum: 180), spacing: 14, alignment: .top), |
| | | ] |
| | | } |
| | | private var displayModeColumns: [GridItem] { |
| | |
| | | } |
| | | .padding(.vertical, 4) |
| | | } |
| | | .frame(maxHeight: 250) |
| | | |
| | | Spacer(minLength: 0) |
| | | .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top) |
| | | } |
| | | .frame(maxWidth: settingsContentWidth, alignment: .leading) |
| | | .tabItem { Label(tr("settings.language"), systemImage: "globe") } |
| | |
| | | .transition(.opacity.combined(with: .move(edge: .bottom))) |
| | | } |
| | | } |
| | | .frame(width: settingsWindowWidth, height: 460) |
| | | .frame(width: settingsWindowWidth, height: 480) |
| | | .onAppear { |
| | | syncSelectedLanguage() |
| | | showPendingHotkeyWarningIfNeeded() |