From da0a3f76d3a1f47665af2d1ef357af9a68ef3a82 Mon Sep 17 00:00:00 2001 From: Stephen B <158498287+StephenDev0@users.noreply.github.com> Date: Tue, 16 Dec 2025 04:17:33 -0500 Subject: [PATCH] Fix my mistakes and get update ready --- StikJIT/Info.plist | 25 ++++++++++-------------- StikJIT/Utilities/FeatureFlags.swift | 8 ++++---- StikJIT/Utilities/TabConfiguration.swift | 5 +++-- StikJIT/Views/DisplayView.swift | 6 ++++++ StikJIT/Views/MainTabView.swift | 2 +- StikJIT/Views/SettingsView.swift | 8 ++++---- 6 files changed, 28 insertions(+), 26 deletions(-) diff --git a/StikJIT/Info.plist b/StikJIT/Info.plist index ca1acb2..e943feb 100644 --- a/StikJIT/Info.plist +++ b/StikJIT/Info.plist @@ -15,13 +15,17 @@ - - ITSAppUsesNonExemptEncryption - - + NSBonjourServices + + _stikdebug._tcp + _stikdebug._udp + + UIBackgroundModes + + audio + UIFileSharingEnabled - UTExportedTypeDeclarations @@ -44,14 +48,5 @@ - - NSLocalNetworkUsageDescription - StikDebug needs access to devices on your local network so it can connect to the targets you add to the Device Library. - - NSBonjourServices - - _stikdebug._tcp - _stikdebug._udp - - \ No newline at end of file + diff --git a/StikJIT/Utilities/FeatureFlags.swift b/StikJIT/Utilities/FeatureFlags.swift index 7ee4344..c2f1428 100644 --- a/StikJIT/Utilities/FeatureFlags.swift +++ b/StikJIT/Utilities/FeatureFlags.swift @@ -2,11 +2,11 @@ import Foundation enum FeatureFlags { /// Global toggle for exposing location spoofing UI/logic. - static let isLocationSpoofingEnabled = true + static let isLocationSpoofingEnabled = false /// Controls visibility of beta-quality tabs and UI. - static let showBetaTabs = true + static let showBetaTabs = false /// Forces the Theme Expansion to be unlocked and visible everywhere. - static let alwaysUnlockThemeExpansion = true + static let alwaysUnlockThemeExpansion = false /// Controls visibility of the Mini Tools tab and related UI. - static let isMiniToolsEnabled = true + static let isMiniToolsEnabled = false } diff --git a/StikJIT/Utilities/TabConfiguration.swift b/StikJIT/Utilities/TabConfiguration.swift index cb17690..fa63b2e 100644 --- a/StikJIT/Utilities/TabConfiguration.swift +++ b/StikJIT/Utilities/TabConfiguration.swift @@ -3,13 +3,14 @@ import Foundation enum TabConfiguration { static let storageKey = "enabledTabIdentifiers" static let maxSelectableTabs = 4 - private static let coreIDs: [String] = ["home", "console", "scripts", "profiles", "deviceinfo"] + private static let coreIDs: [String] = ["home", "console", "scripts", "deviceinfo"] static var allowedIDs: [String] { var ids = coreIDs if FeatureFlags.isMiniToolsEnabled { ids.append("tools") } if FeatureFlags.showBetaTabs { + ids.append("profiles") ids.append("processes") ids.append("devicelibrary") if FeatureFlags.isLocationSpoofingEnabled { @@ -18,7 +19,7 @@ enum TabConfiguration { } return ids } - static let defaultIDs: [String] = ["home", "console", "scripts", "profiles"] + static let defaultIDs: [String] = ["home", "console", "scripts", "deviceinfo"] static let defaultRawValue = serialize(defaultIDs) static func sanitize(raw: String) -> [String] { diff --git a/StikJIT/Views/DisplayView.swift b/StikJIT/Views/DisplayView.swift index c6dc11d..686a2e6 100644 --- a/StikJIT/Views/DisplayView.swift +++ b/StikJIT/Views/DisplayView.swift @@ -77,6 +77,7 @@ struct DisplayView: View { @State private var selectedAccentColor: Color = .blue @Environment(\.colorScheme) private var colorScheme @Environment(\.themeExpansionManager) private var themeExpansionOptional + @Environment(\.dismiss) private var dismiss @State private var justSaved = false @State private var showingCreateCustomTheme = false @@ -171,6 +172,11 @@ struct DisplayView: View { } } .navigationTitle("Display") + .toolbar { + ToolbarItem(placement: .primaryAction) { + Button("Close") { dismiss() } + } + } .onAppear { if !hasThemeExpansion, let manager = themeExpansion, manager.isCustomThemeIdentifier(appThemeRaw) { appThemeRaw = AppTheme.system.rawValue diff --git a/StikJIT/Views/MainTabView.swift b/StikJIT/Views/MainTabView.swift index 2853153..3df5378 100644 --- a/StikJIT/Views/MainTabView.swift +++ b/StikJIT/Views/MainTabView.swift @@ -54,13 +54,13 @@ struct MainTabView: View { TabDescriptor(id: "home", title: "Home", systemImage: "house") { AnyView(HomeView()) }, TabDescriptor(id: "console", title: "Console", systemImage: "terminal") { AnyView(ConsoleLogsView()) }, TabDescriptor(id: "scripts", title: "Scripts", systemImage: "scroll") { AnyView(ScriptListView()) }, - TabDescriptor(id: "profiles", title: "Profiles", systemImage: "magazine.fill") { AnyView(ProfileView()) }, TabDescriptor(id: "deviceinfo", title: "Device Info", systemImage: "iphone.and.arrow.forward") { AnyView(DeviceInfoView()) } ] if FeatureFlags.isMiniToolsEnabled { tabs.append(TabDescriptor(id: "tools", title: "Mini Tools", systemImage: "shippingbox.fill") { AnyView(MiniToolListView()) }) } if FeatureFlags.showBetaTabs { + tabs.append(TabDescriptor(id: "profiles", title: "Profiles", systemImage: "magazine.fill") { AnyView(ProfileView()) }) tabs.append(TabDescriptor(id: "processes", title: "Processes", systemImage: "rectangle.stack.person.crop") { AnyView(ProcessInspectorView()) }) tabs.append(TabDescriptor(id: "devicelibrary", title: "Devices", systemImage: "list.bullet.rectangle") { AnyView(DeviceLibraryView()) }) if FeatureFlags.isLocationSpoofingEnabled { diff --git a/StikJIT/Views/SettingsView.swift b/StikJIT/Views/SettingsView.swift index 8be0339..3c3dd01 100644 --- a/StikJIT/Views/SettingsView.swift +++ b/StikJIT/Views/SettingsView.swift @@ -93,10 +93,10 @@ struct SettingsView: View { if FeatureFlags.isMiniToolsEnabled { options.append(TabOption(id: "tools", title: "Mini Tools", detail: "Import and run stiktool bundles", icon: "shippingbox", isBeta: true)) } - options.append(contentsOf: [ - TabOption(id: "profiles", title: "Profiles", detail: "Install/remove profiles", icon: "magazine", isBeta: false), - TabOption(id: "deviceinfo", title: "Device Info", detail: "View detailed device metadata", icon: "iphone.and.arrow.forward", isBeta: false) - ]) + options.append(TabOption(id: "deviceinfo", title: "Device Info", detail: "View detailed device metadata", icon: "iphone.and.arrow.forward", isBeta: false)) + if FeatureFlags.showBetaTabs { + options.append(TabOption(id: "profiles", title: "Profiles", detail: "Install/remove profiles", icon: "magazine", isBeta: true)) + } if FeatureFlags.showBetaTabs { options.append(TabOption(id: "processes", title: "Processes", detail: "Inspect running apps", icon: "rectangle.stack.person.crop", isBeta: true)) options.append(TabOption(id: "devicelibrary", title: "Devices", detail: "Manage external devices", icon: "list.bullet.rectangle", isBeta: true))