Нет способа получить указатель на окно браузера в любом браузере Mac, который запускает плагины вне процесса (включая 64-битный Safar), потому что окна не доступны для всех процессов. Более того, концепция кажется глубоко ошибочной на любой платформе; многие браузеры позволяют перетаскивать вкладки из одного окна в другое. Вы хотите, чтобы ваш плагин вдруг поверил, что он находится на новой странице в этом случае, даже если пользователь даже не перезагрузил страницу?
Я не могу придумать, как вы можете отслеживать вкладки, учитывая, что API не имеет понятия вкладок. Я настоятельно рекомендую пересмотреть это требование, учитывая, что оно кажется очень произвольным с точки зрения пользователя. (Например, если я перезагружаю страницу, это то же самое, но если я закрываю вкладку, а затем сразу же заново открываю ее, используя версию отменить-закрывать-вкладку браузера, это не так? вкладка между окнами, вкладка как-то отличается?)