When using chrome.windows.getAll to get a list of all windows. On iOS, you get two windows, 1 normal and 1 private. Say the current tab is a non private window. And you then try to open a window in private in the extension. It opens kinda a ghost private window which hosts inside the non-private window. Correct behaviour is that it simply opens that tab in the only private window possible. See attachments for a sample extension and reproduction video. Sample extension and reproduction video: https://github.com/carlosjeurissen/webext-tech-demo-extensions/tree/main/issues/safari-9653213-ios-open-in-existing-window
See also: https://feedbackassistant.apple.com/feedback/9653213 https://developer.apple.com/forums/thread/690774
Thank you for the report! This is most likely a Safari issue, but I'll let Tim close the report as appropriate. rdar://83529900
We are tracking bugs in Bugzilla for Web Extensions now as we move extensions support from Safari to WebKit.