I also get this error:
ViewBridge to RemoteViewService Terminated: Error Domain=com.apple.ViewBridge Code=18 "(null)" UserInfo={com.apple.ViewBridge.error.hint=this process disconnected remote view controller -- benign unless unexpected, com.apple.ViewBridge.error.description=NSViewBridgeErrorCanceled}
Post
Replies
Boosts
Views
Activity
I also get this error:
Couldn't read values in CFPrefsPlistSource<0x600003bfd680> (Domain: 9QNMAN8CT6.tabfinder.sharedgroup, User: kCFPreferencesAnyUser, ByHost: Yes, Container: (null), Contents Need Refresh: Yes): Using kCFPreferencesAnyUser with a container is only allowed for System Containers, detaching from cfprefsd
@DTS Engineer FB16713763 i believe :)
Just posted the same to Claude and it gave me this solution which works:
struct Sidebar: View {
@State private var isActive = true
var body: some View {
VStack {
List {
NavigationLink(isActive: $isActive) {
HomeView()
} label: {
Text("Home")
}
}
List {
NavigationLink {
SettingsView()
} label: {
Text("Settings")
}
}
.frame(height: 50)
}
}
}
I just tried uploading my app from Xcode 16 and it worked.
But I still need to be able to upload my apps to App Store Connect from macOS Ventura and Xcode 16...
It must be some bug on Apple side...
I ended up using HotKey
Example:
import SwiftUI
import HotKey
struct ContentView: View {
let hotKey = HotKey(key: .tab , modifiers: [.option])
var body: some View {
VStack {}
.onAppear {
hotKey.keyDownHandler = buttonHandler
}
}
func buttonHandler() {
/* ... */
}
}
But I'm still curious in how it can send the shortcuts without Accessibility permission.
So far I figured out:
You can trigger a shortcut if you have a Safari Web Extension from background.js by adding a shortcut to manifest.json
"commands": {
"open-main-app": {
"suggested_key": {
"default": "Alt+K"
},
"description": "Open Main App"
}
}
But you can't set option+tab as a shortcut.
Tab Back Lite's manifest.json but it does not have a shortcut in it. It only has nativeMessaging permission and a background script.
@jeffjohnson ah, sorry, my bad.
So what's your best recommendation to this problem?
Appending something to a bundle identifier?
Not sure that this is the best solution because my bundle identifiers are present in multiple places and in multiple files:
In Info.plist: CFBundleIdentifier
In ... .xcodeproj/project.pbxpro: PRODUCT_BUNDLE_IDENTIFIER (Extension)
In ... .xcodeproj/project.pbxpro: PRODUCT_BUNDLE_IDENTIFIER (Main app)
I just set a user-defined variable and use it everywhere, but i don't think it's the best solution so far. Do you?
You said in the article that you might unregister the app. Can this be a fix to my problem?
@jeffjohnson
You said that this bug was "fixed in macOS 13 Ventura", but i'm currently on macOS Ventura now and experience this bug.
The thing is that i have this bug even if there is only one app is located on the system.
And when at some point the amount of apps with the same bundle id gets to 2 or bigger, macOS just makes the extension disappear instead of giving any preference to any of the apps.
I attached a video in the comments showcasing the bug: https://youtu.be/abpf3q6ah98
Removing iPad, WatchOS and macOS from destinations in Xcode before publishing the app to App Store connect helped.
You can find it in
Project -> Targets -> {target_name} -> General -> Supported Destinations
I just recorded a video showcasing this bug, if you will
https://youtu.be/abpf3q6ah98
Now if you remove the archived app in the Finder, the extension appears in the Safari Extensions settings page. But it does not work.
After this if you try to restart Safari, then it crashes unless you hold down the option key.
And if you try to open the extensions page, the Safari crashes unless you reboot your computer 🤡
So the question is how am I supposed to build Safari Extensions?
Just found out a way to reproduce it.
Build an extension (you can use mine: https://github.com/kopyl/safari-tab-switcher)
Make sure the extension is in the Safari Extensions settings page
Archive the extension in Xcode (don't open, just archive)
Now the extension is gone from Safari Extensions settings page
So what’s the solution?