Electron vous permet d'écrire des applications de bureau multiplateformes en utilisant JavaScript, HTML et CSS
La sortie de la nouvelle version d'Electron 27.0 a été annoncée , et cette version met en évidence plusieurs changements, dont la plupart sont la suppression de plusieurs méthodes, propriétés et événements, ainsi que la prise en charge de macOS 10.13 et indirectement de Windows 7/8/8.1.
Pour ceux qui ne connaissent pas Electron, il permet de créer n'importe quelle application graphique utilisant les technologies du navigateur, dont la logique est définie en JavaScript, HTML et CSS, et dont les fonctionnalités peuvent être étendues grâce à un système de plugins.
Les développeurs ont accès aux modules Node.js ainsi qu'à une API étendue pour créer des boîtes de dialogue natives, intégrer des applications, créer des menus contextuels, s'intégrer au système d'affichage des notifications, manipuler les fenêtres et interagir avec les sous-systèmes Chromium.
Principales nouveautés d'Electron 27.0
Dans cette nouvelle version d'Electron 27.0, l'une des nouveautés majeures est l'amélioration de la prise en charge de Wayland. Le mode WaylandWindowDecorations est désormais activé par défaut, permettant ainsi le redimensionnement et le déplacement corrects des fenêtres dans les environnements Wayland tels que GNOME et Weston, qui ne prennent pas en charge le protocole de décoration XDG , lorsque la prise en charge de Wayland est activée (--ozone-platform=wayland) . Dans les environnements compatibles avec la décoration XDG, comme KDE et Sway, le mode WaylandWindowDecorations est ignoré.
Une autre nouveauté d'Electron 27.0 est la nouvelle API ajoutée pour prendre en compte la configuration système qui contrôle le niveau de transparence de l'arrière-plan des applications , ainsi que la prise en charge de l'API chrome.scripting, qui permet d'insérer son propre JavaScript et CSS dans les pages.
De plus, il est à noter que l' API BrowserWindow.showAllTabs a été ajoutée , ainsi que la propriété tabbingIdentifier de l'objet BrowserWindow. L'API chrome.tabs.query est partiellement implémentée.
Sous Linux, il est possible de définir la configuration du thème sombre via le portail « xdg configuration », et l’API ipcRenderer.sendTo() est obsolète et doit être remplacée par un MessageChannel pour la communication entre deux moteurs de rendu.
D'autre part, dans SystemPreferences, les événements de changement de schéma de couleurs ont été supprimés (l'événement de mise à jour du module NativeTheme doit être utilisé à la place du changement de schéma de couleurs inversé et du changement de schéma de couleurs à contraste élevé).
Dans cette nouvelle version d'Electron 27, la compatibilité avec macOS 10.13 (High Sierra) et macOS 10.14 (Mojave) est abandonnée. Conformément à la politique de support, cette version marque la fin du support des versions d'Electron 24.x. De plus, le cycle de support étendu d'Electron 22.x, dernière branche compatible avec Windows 7/8/8.1, est désormais terminé.
Parmi les autres changements notables de cette nouvelle version, on peut citer :
- Chrome 118.0.5993.32, DevTools 118
- Noeud.js 18.17.1
- V8 11.8
- Ajout de la possibilité d'envoyer des en-têtes HTTP spécifiques aux méthodes session.downloadURL() et webContents.downloadURL().
- Ajout des méthodes safeStorage.setUsePlainTextEncryption et safeStorage.getSelectedStorageBackend.
- Ajout de l'indicateur « –dns-result-order ».
- La méthode webContents.getPrinters a été supprimée au profit de webContents.getPrintersAsync.
- Les méthodes systemPreferences.{get,set}AppLevelAppearance et systemPreferences.appLevelAppearance ont été supprimées et remplacées par le module nativeTheme.
- La méthode systemPreferences.getColor a rendu obsolète la valeur alternative du texte de contrôle sélectionné en faveur de l’arrière-plan du contenu sélectionné.
- Ajout de la prise en charge de l'indicateur CLI Node.js –dns-result-order.
- Ajout de la prise en charge de la personnalisation de la police mathématique par défaut ainsi que d'autres polices.
- Ajout de la prise en charge du marquage d'un menu comme étant lancé par le clavier.
- Ajout de la prise en charge de plusieurs autres indicateurs cli Node.js dans le processus principal.
- Ajout de la prise en charge de plusieurs clés de manifeste d'extension supplémentaires, notamment host_permissions, author et short_name.
- Ajout de la possibilité d'envoyer des en-têtes HTTP avec session.downloadURL()
- Ajout de la possibilité d'envoyer des en-têtes HTTP avec webContents.downloadURL()
Enfin, si vous souhaitez en savoir plus sur cette nouvelle version, vous trouverez les détails en suivant ce lien.
Comment obtenir Electron sur Linux?
Pour exécuter des applications et/ou travailler avec Electron sous Linux, il suffit d'avoir Node.js installé sur le système et son gestionnaire de paquets NPM.
Pour installer la dernière version, tapez simplement la commande suivante :
npm install electron@latest