mirror of
https://github.com/yattee/yattee.git
synced 2026-07-20 14:22:02 +00:00
Fix tvOS legacy import rows acting as a single Remove button
On tvOS a Form row is one focusable unit, so the legacy account/source cards - header, credential fields, and both buttons stacked in a single row - focused as a whole and every click fired the first button (Remove), making credentials and Import unreachable. - Split the tvOS rows into individually focusable rows (info header, fields, Import, Remove), keeping the card layout on iOS/macOS - Wrap the tvOS entry points in TVSidebarDetailContainer and drop the tvOS navigationTitle that rendered as a ghost behind the form - Present the review screen from the first-launch alert as a fullScreenCover on tvOS: sheets render as a small transparent card that cannot fit the sidebar layout (Menu button dismisses the cover) - Dim disabled TVSettingsButtonStyle buttons - Widen the row icon frame for tvOS glyph sizes and skip the caption when it would repeat the host shown as the title
This commit is contained in:
@@ -184,6 +184,22 @@ struct YatteeApp: App {
|
||||
.appEnvironment(appEnvironment)
|
||||
}
|
||||
#endif
|
||||
#if os(tvOS)
|
||||
// tvOS sheets render as a small centered card that cannot fit
|
||||
// the sidebar-detail layout — use a full screen cover instead.
|
||||
.fullScreenCover(isPresented: $showingLegacyAccountsImport) {
|
||||
NavigationStack {
|
||||
TVSidebarDetailContainer(
|
||||
systemImage: "person.badge.key",
|
||||
title: String(localized: "migration.accounts.title")
|
||||
) {
|
||||
LegacyAccountsImportView()
|
||||
}
|
||||
.appEnvironment(appEnvironment)
|
||||
}
|
||||
.background(Color.black.ignoresSafeArea())
|
||||
}
|
||||
#else
|
||||
.sheet(isPresented: $showingLegacyAccountsImport) {
|
||||
NavigationStack {
|
||||
LegacyAccountsImportView()
|
||||
@@ -193,6 +209,7 @@ struct YatteeApp: App {
|
||||
.frame(minWidth: 560, minHeight: 560)
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
#if os(iOS)
|
||||
.sheet(isPresented: $showingSettings) {
|
||||
SettingsView()
|
||||
|
||||
Reference in New Issue
Block a user