Roger Wang 14 декабря объявил о выходе новой версии движка node-webkit — созданного в недрах Intel Open Source Technology Center мощного сочетания WebKit и Node.js, позволяющего создавать кросс-платформенные графические приложения методом веборазработки на языках HTML, CSS и JavaScript.
Новая версия имеетномер 0.3.6 и выглядит вот как:
По сравнению с версией 0.3.0, которую я обозревалв октябре, за последние два месяца случались только небольшие изменения, заслуживающие не более чем последней цифры в номере версии node-webkit. Зато изменений этих накопилось порядочно.
Прежде всего нетрудно заметить, что окна утратили «округлый»и «синенький» вид, похожий на Google Chrome, а вместо того вновь обрели общесистемный вид и форму. (На иллюстрации я привожу вид окна в Windows XP.) Также вернулся значок в заголовке окна. (Для сегодняшней демонстрации я поместил туда значок сайта Хабрахабра.)
Вот список остальных новшеств этой версии(по сравнению с 0.3.0):
Как видите, за два месяца появилось более полутора десятков полезных новшеств, каждое из которыхкого-нибудь да порадует, потому что упрощает жизнь.
Новая версия имеет
По сравнению с версией 0.3.0, которую я обозревал
Прежде всего нетрудно заметить, что окна утратили «округлый»
Вот список остальных новшеств этой версии
- Возможен режим kiosk, в котором
node-webkit распахивается на весь экран и не может быть закрыт при помощи мыши. (Подходит для создания информационных терминалов.)
- Обеспечивается автозапуск джаваскрипта, упомянутого в параметре
node-main в файлеpackage.json. (Скрипт запускается в контексте движка Node — а не в WebKit, как было бы по событию load, например. Это удобно для инициализации модулей Node.)
- Появился API управления приложением. (Можно считать параметры командной строки, можно сразу закрыть все окна приложения.)
- Поддерживается элемент
<datalist> — а значит, появляются подсказки для автозаполнения текстовых полей по мере печатания текста.
- Создано средство
nw-gyp — вариантnode-gyp, который служит для сборки двоичного кода неджаваскриптовых модулейдля node-webkit таким же образом, какимnode-gyp собирает их для Node. (Это необходимо, так как ABI у Nodeи node-webkit различаются.)
- Можно помещать элементы в меню окна. (Ещё один привычный элемент графического интерфейса пользователя.)
- Запуск консольных команд под Windows не приводит к появлению видимых окон консоли. (Как правило, вызывались они лишь ненадолго — и оттого их подмигивание не было никому приятно или полезно.)
- Можно использовать кодеки, защищённые патентом, если снабдить
node-webkit собственной сборкою libffmpeg. (Но в комплектес node-webkit продолжает поставляться ограниченная версия.)
- Окна могут предотвращать или откладывать своё закрытие, перехватывая и обрабатывая событие close.
- Авторы приложений могут прикладывать к ним (в подпапку
plugins) некоторый набор браузерных плагинов (NPAPI), который станет использоваться наряду с общесистемным.
- Объект window стал доступен в контексте Node под тем же именем.
- В отладчике стал виден исходный код скриптов из контекста Node.
- Окну можно придать свойство «всегда наверху», чтобы оно перекрывало другие окна приложений.
- Появилась поддержка source maps, то есть возможность видеть в отладчике код приложений на других языках, компилируемых в JavaScript (например, Clojure или TypeScript), если их компилятор это также поддерживает.
- Появилась поддержка Pointer Lock API, то есть возможность удержания мыши в приложении и реагирования на её относительное движение (наподобие
3D-стрелялок), а не на её положение.
- Теперь cookies сохраняются на компьютере после завершения приложения (между запусками).
- Появилась кнопка полного перезапуска приложения его разработчиком (в отладочных целях). Одновременно перезапускается и код для Node,
и веботехнологическая часть (HTML, CSS, JS) в WebKit.
- Запуск nw.exe без параметров приводит к загрузке package.json (и приложения) из той же папки, в которой
node-webkit лежит.
Как видите, за два месяца появилось более полутора десятков полезных новшеств, каждое из которых