NPAPI и Google Chrome в Linux
Я работаю над плагином NPAPI для Linux и столкнулся с несколькими проблемами с Google Chrome (хотя он отлично работает в Firefox).
Во-первых, выполнение плагина зависало, и после долгого мучительного времени я понял, что вызов NPN_Evaluate
виснет когда последний параметр (для возвращенного result
) нулевой. На Firefox работает нормально. Решение состояло в том, чтобы передать адрес NPVariant
введите переменную в качестве параметра и просто игнорируйте значение.
После этого плагин загружается нормально, но я застрял с этим сообщением об ошибке: [8886:8886:195170759489: ОШИБКА:webkit/glue/plugins/webplugin_delegate_impl_gtk.cc(129)] Не реализовано, достигнуто в bool WebPluginDelegateImpl::WindowedCreatePlugin() плагин но без xembed. См. http://code.google.com/p/chromium/issues/detail?id=38229
Любые идеи о том, как я мог бы заставить этот плагин работать?
1 ответ
Вам нужно использовать XEmbed в своем плагине для работы с Chrome. Документы здесь: https://developer.mozilla.org/en/XEmbed_Extension_for_Mozilla_Plugins
FireBreath использует этот метод: http://firebreath.org/
это открытый исходный код (лицензия BSD), так что вы можете использовать его вместе со своим плагином или беззастенчиво "позаимствовать" код для xembed.