Electron позволяет писать кроссплатформенные настольные приложения с использованием JavaScript, HTML и CSS.
Было объявлено о выпуске новой версии Electron 27.0 , и в этом релизе представлен ряд изменений, большинство из которых — удаление нескольких методов, свойств и событий, а также поддержка macOS 10.13 и, косвенно, Windows 7/8/8.1.
Для тех, кто не знаком с Electron, поясним: эта платформа позволяет создавать любые графические приложения с использованием браузерных технологий, логика которых определяется на JavaScript, HTML и CSS, а функциональность может быть расширена с помощью системы плагинов.
Разработчики имеют доступ к модулям Node.js, а также к расширенному API для создания собственных диалогов, интеграции приложений, создания контекстных меню, интеграции с системой отображения уведомлений, управления окнами и взаимодействия с подсистемами Chromium.
Основные новинки Электрон 27.0
В новой версии Electron 27.0 одним из наиболее важных нововведений является улучшение Wayland. Режим WaylandWindowDecorations теперь включен по умолчанию, что позволяет корректно изменять размер и перемещать окна в средах на основе Wayland, таких как GNOME и Weston, которые не поддерживают протокол XDG-декораций , при работе с поддержкой Wayland (--ozone-platform=wayland) . В средах, поддерживающих XDG-декорации, таких как KDE и Sway, режим WaylandWindowDecorations игнорируется.
Еще одна новая функция в Electron 27.0 — это новый API , добавленный для учета системной конфигурации , которая управляет уровнем прозрачности фона в приложениях , а также поддержка API chrome.scripting, позволяющего вставлять собственный JavaScript и CSS на страницы.
Кроме того, отмечено добавление API BrowserWindow.showAllTabs и свойства tabingIdentifier к объекту BrowserWindow. API chrome.tabs.query реализован частично.
В Linux конфигурацию темной темы можно задать через портал "xdg configuration", а API ipcRenderer.sendTo() устарел и должен быть заменен на MessageChannel для связи между двумя рендерерами.
С другой стороны, в SystemPreferences удалены события изменения цветовой схемы (вместо изменения инвертированной цветовой схемы и изменения высококонтрастной цветовой схемы следует использовать событие обновления модуля NativeTheme).
Кроме того, в этой новой версии Electron 27 прекращена совместимость с macOS 10.13 (High Sierra) и macOS 10.14 (Mojave), и в соответствии с политикой поддержки этот релиз знаменует собой конец поддержки версий Electron 24.x. Также завершен расширенный цикл поддержки Electron 22.x, последней ветки, совместимой с Windows 7/8/8.1.
Среди других существенных изменений в новой версии можно отметить следующие:
- Хром 118.0.5993.32, Инструменты разработчика 118
- Node.js 18.17.1
- V8 11.8
- Добавлена возможность отправлять определенные HTTP-заголовки в методы session.downloadURL() и webContents.downloadURL().
- Добавлены методы SafeStorage.setUsePlainTextEncryption и SafeStorage.getSelectedStorageBackend.
- Добавлен флаг «-dns-result-order».
- Метод webContents.getPrinters был удален в пользу webContents.getPrintersAsync.
- Методы systemPreferences.{get,set}AppLevelAppearance и systemPreferences.appLevelAppearance были удалены и заменены модулем NativeTheme.
- Метод systemPreferences.getColor объявил устаревшим альтернативное текстовое значение выбранного элемента управления в пользу выбранного фона содержимого.
- Добавлена поддержка флага CLI Node.js –dns-result-order.
- Добавлена поддержка настройки математического шрифта по умолчанию вместе с другими шрифтами.
- Добавлена поддержка пометки меню как запускаемого с клавиатуры.
- Добавлена поддержка еще нескольких флагов Node.js cli в основном процессе.
- Добавлена поддержка еще нескольких ключей манифеста расширения, включая Host_permissions, Author и Short_name.
- Добавлена возможность отправлять HTTP-заголовки с помощью session.downloadURL().
- Добавлена возможность отправлять HTTP-заголовки с помощью webContents.downloadURL().
Наконец, если вас интересует более подробная информация об этой новой версии, вы можете найти ее по следующей ссылке.
Как получить Electron в Linux?
Для запуска приложений и/или работы с Electron в Linux достаточно установить Node.JS и его менеджер пакетов NPM.
Чтобы установить последнюю версию, просто введите следующую команду:
npm install electron@latest