mirror of
https://github.com/StikDebug/StikDebug.git
synced 2026-10-15 20:10:30 +00:00
Fix my mistakes and get update ready
This commit is contained in:
parent
222328e708
commit
da0a3f76d3
6 changed files with 28 additions and 26 deletions
|
|
@ -15,13 +15,17 @@
|
|||
</array>
|
||||
</dict>
|
||||
</array>
|
||||
|
||||
<key>ITSAppUsesNonExemptEncryption</key>
|
||||
<false/>
|
||||
|
||||
<key>NSBonjourServices</key>
|
||||
<array>
|
||||
<string>_stikdebug._tcp</string>
|
||||
<string>_stikdebug._udp</string>
|
||||
</array>
|
||||
<key>UIBackgroundModes</key>
|
||||
<array>
|
||||
<string>audio</string>
|
||||
</array>
|
||||
<key>UIFileSharingEnabled</key>
|
||||
<true/>
|
||||
|
||||
<key>UTExportedTypeDeclarations</key>
|
||||
<array>
|
||||
<dict>
|
||||
|
|
@ -44,14 +48,5 @@
|
|||
</dict>
|
||||
</dict>
|
||||
</array>
|
||||
|
||||
<key>NSLocalNetworkUsageDescription</key>
|
||||
<string>StikDebug needs access to devices on your local network so it can connect to the targets you add to the Device Library.</string>
|
||||
|
||||
<key>NSBonjourServices</key>
|
||||
<array>
|
||||
<string>_stikdebug._tcp</string>
|
||||
<string>_stikdebug._udp</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -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
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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] {
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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 {
|
||||
|
|
|
|||
|
|
@ -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))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue