Уведомление Mozilla, показывающее браузер при нажатии - PullRequest
0 голосов
/ 07 июля 2011

Я пытаюсь сделать плагин Mozilla FireFox с уведомлением.Уведомления видимы для Windows и даже Mac. Я хочу, чтобы пользователь щелкнул уведомление и открыл веб-страницу, это звучит довольно просто.Но при добавлении обозревателя и создании window.open или gBroswer.addTab окно открывается и вкладка открывается, но в случае, если FireFox свернут, когда отображается уведомление, окна открываются в фоновом режиме и не видны пользователю.

Пробовалчтобы использовать Components.interfaces.nsIAlertsService и chrome: //global/content/alerts/alert.xul, они работают одинаково с этой точки зрения.Есть ли способ сказать браузеру быть самым верхним и быть видимым для пользователя?

1 Ответ

1 голос
/ 07 июля 2011

Не похоже, что это можно сделать.Firefox обычно поддерживает переключение фокуса между разными окнами браузера, когда одно из них уже сфокусировано (через window.focus()).Чтобы обрабатывать уведомления так, как вы этого хотите (и как это делает Thunderbird), нужно вызвать SetForegroundWindow () в Windows - в коде Firefox есть только два случая , где этофункция называется.Один из них - когда запускается новый процесс Firefox, другой - когда сворачивается одно окно Firefox.К сожалению, в этом случае ни один из них не может быть использован в действительности, и Thunderbird действительно использует собственный код, а не существующие API-интерфейсы XPCOM, чтобы вывести себя на передний план.

...