Как получить состояние (включено / отключено) расширения приложения блокировщика контента safari из расширения приложения панели инструментов safari? - PullRequest
0 голосов
/ 23 мая 2018

Я занимаюсь разработкой приложения для Mac с расширениями Safari Content Blocker и Safari Toolbar.

Я могу получить состояние расширения блокировщика контента (включено / отключено) в Safari из приложения Mac (Содержит приложение) и отображать в приложении Mac предупреждение о том, что блокировщик содержимого отключен.

Но есть ли способ получить состояние расширения блокировщика контента (включено / отключено) из расширения элемента панели инструментов Safari?

Вот код, который выполняется, когда всплывающее окно отображается, когдапользователь нажимает на элемент панели инструментов Safari.

class SafariExtensionViewController: SFSafariExtensionViewController {

    // This function is called from the 
    // SafariExtensionHandler > popoverWillShow(in window: SFSafariWindow)        
    func onPopoverVisible() {

        SFContentBlockerManager.getStateOfContentBlocker(withIdentifier: "com.xyz.macapp.contentblocker") { (state, error) in
            guard let state = state else {
                 // handle the error
                 return
            }
            if state.isEnabled {
                // display toolbar items and hide warning message
            } else {
                // display warning message and hide toolbar items
            }
        }
    }
}

При выполнении вышеуказанного кода state.isEnabled всегда false.

Возможно ли получить состояние одного расширения от другого?Если да, то как?Если нет, есть ли способ справиться с этим сценарием?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...