Мне удивительно трудно найти способ закрыть вкладку из Расширения приложения Safari.
Я могу открыть вкладку с помощью
SFSafariApplication.getActiveWindow(completionHandler: {
$0?.openTab(with: url, makeActiveIfPossible: true)
})
И все же ни возвращенный SFSafariTab,ни SFSafariWindow не имеет close()
(или performClose()
).
Я могу отправить дружественное сообщение на сторону JS расширения и запустить window.close();
, но это ограничено вкладками, которые также были созданы с помощьюJavascript.Любые вкладки, открытые пользователем, или target="_blank"
заблокированы.
Третьим вариантом является устаревший Safari JS Extension API.Мне пока не удавалось сделать эту работу, и мне кажется неприятным тратить время на такой тупик.