Опера - виджеты.
Попробовал сделать быстренько (посмотреть, получится ли) виджет на основе расширения для хрома, написал библиотечку для прозрачного преобразования разных системных вызовов, чтобы можно было просто готовые скрипты использовать в Опере. Всё работает просто чудесно.
И затем можно использовать без изменений то, что уже написано для хрома, например, ту же отправку сообщений для обмена данными между разными блоками:
Только нужно добавить в конце второй параметр, который Хромом игнорируется, но нужен для window.postMessage
Так как в Опере нет разных views (типа popup, background и т.п.), а есть одно window, то это работает на ура.
------------
Но опять затык. Подкол от оперистов, млять...
Все нормальные расширения под всеми браузерами имеют доступ к доменам и т.п. То есть, куки от проекта видны в расширении, и можно отправлять ajax запросы (что любопытно, в Опере тоже можно отправлять из виджета ajax-запросы на любой внешний домен).
А эти виджеты для Оперы под собственными url !
То есть, авторизацию на какой-то сервер, для которого пишется виджет, нужно как-то делать внутри самого виджета.
Сделать то это пять минут, НО.
Но не факт, что если сделаешь форму для ввода пароля внутри виджета, то люди могут этому доверять.
Сложность в том, что проект, для которого я делаю расширение, не поддерживает авторизацию типа OAuth и т.п.
Поколдую щас ещё, поизучаю этот вопрос..
chrome = {}; chrome.extension = {}; chrome.extension.getBackgroundPage = function() { return window; } chrome.extension.connect = function() { return window; }
И затем можно использовать без изменений то, что уже написано для хрома, например, ту же отправку сообщений для обмена данными между разными блоками:
var port = chrome.extension.connect({name: "name"}); port.postMessage({doing: "doing", status : "ok"}, "*");
Только нужно добавить в конце второй параметр, который Хромом игнорируется, но нужен для window.postMessage
Так как в Опере нет разных views (типа popup, background и т.п.), а есть одно window, то это работает на ура.
------------
Но опять затык. Подкол от оперистов, млять...
Все нормальные расширения под всеми браузерами имеют доступ к доменам и т.п. То есть, куки от проекта видны в расширении, и можно отправлять ajax запросы (что любопытно, в Опере тоже можно отправлять из виджета ajax-запросы на любой внешний домен).
А эти виджеты для Оперы под собственными url !
То есть, авторизацию на какой-то сервер, для которого пишется виджет, нужно как-то делать внутри самого виджета.
Сделать то это пять минут, НО.
Но не факт, что если сделаешь форму для ввода пароля внутри виджета, то люди могут этому доверять.
Сложность в том, что проект, для которого я делаю расширение, не поддерживает авторизацию типа OAuth и т.п.
Поколдую щас ещё, поизучаю этот вопрос..