Отображение диалогового окна прогресса для расширения Chrome, взаимодействующего с плагином NPAPI - PullRequest
1 голос
/ 23 марта 2012

Я пишу расширение для Google Chrome, которое преобразует страницу в файл PDF. Расширение, написанное на Javascript, извлекает DOM текущей страницы и передает его в DLL-библиотеку NPAPI, где происходит преобразование. Я хочу показать пользователю диалог прогресса, который появляется, как только начинается преобразование, и уходит, или показывает диалог завершения состояния, когда преобразование завершено и файл PDF открыт для просмотра. Я новичок в использовании Javascript. Что я должен сделать для достижения вышеупомянутой задачи?

1 Ответ

1 голос
/ 23 марта 2012

Основная идея заключается в следующем:

  • зарегистрировать обработчик событий в плагине для получения события завершения (для этого плагин должен реализовать функцию (script-) addEventListener)
  • вызвать плагин, сказав ему начать преобразование
  • плагин запускает фоновый рабочий поток для преобразования (поскольку вы не можете заблокировать основной поток)
  • показать наложение диалога прогресса
  • когда плагин готов, он запускает событие завершения (примечание: вызовы NPAPI должны происходить в главном потоке, NPN_PluginThreadAsyncCall помогает с этим)
  • JSтеперь можно закрыть диалог прогресса / показать диалог завершения / ...
...