From e3c6a6ea4ab5f98b6f697c14cccf6dbeea06154b Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 18 Jun 2025 02:55:52 +0200 Subject: [PATCH] fixes startup flicker --- .../Views/Settings/DashboardSettingsView.swift | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/VibeTunnel/Presentation/Views/Settings/DashboardSettingsView.swift b/VibeTunnel/Presentation/Views/Settings/DashboardSettingsView.swift index 3ca896f7..27f5f83f 100644 --- a/VibeTunnel/Presentation/Views/Settings/DashboardSettingsView.swift +++ b/VibeTunnel/Presentation/Views/Settings/DashboardSettingsView.swift @@ -829,7 +829,13 @@ private struct NgrokErrorView: View { private struct PermissionsSection: View { @StateObject private var appleScriptManager = AppleScriptPermissionManager.shared - @State private var hasAccessibilityPermission = false + @State private var accessibilityUpdateTrigger = 0 + + private var hasAccessibilityPermission: Bool { + // This will cause a re-read whenever accessibilityUpdateTrigger changes + _ = accessibilityUpdateTrigger + return AccessibilityPermissionManager.shared.hasPermission() + } var body: some View { Section { @@ -911,11 +917,10 @@ private struct PermissionsSection: View { } .task { _ = await appleScriptManager.checkPermission() - hasAccessibilityPermission = AccessibilityPermissionManager.shared.hasPermission() } .onReceive(Timer.publish(every: 1.0, on: .main, in: .common).autoconnect()) { _ in - // Check accessibility permission status periodically - hasAccessibilityPermission = AccessibilityPermissionManager.shared.hasPermission() + // Force a re-render to check accessibility permission + accessibilityUpdateTrigger += 1 } } }