Veröffentlichung der Electron-Plattform 27.0 mit aktivierter Fensterdekorationsmodus für Wayland

Die Veröffentlichung von Electron 27.0.0 bietet ein eigenständiges Framework für die Entwicklung plattformübergreifender Benutzeranwendungen, das auf den Komponenten von Chromium, V8 und Node.js basiert. Die signifikante Änderung der Versionsnummer ist auf das Update auf die Chromium-Codebasis 118, Node.js 18.17.1 und den JavaScript-Engine V8 11.8 zurückzuführen.

Zu den Änderungen in der neuen Version gehören:

  • Standardmäßig ist der Modus WaylandWindowDecorations aktiviert, der es ermöglicht, beim Starten mit Unterstützung für Wayland (—ozone-platform=wayland) Fenster in Wayland-Umgebungen basierend auf GNOME und Weston korrekt zu skalieren und zu verschieben, in denen das XDG Decoration-Protokoll nicht unterstützt wird. In Umgebungen mit Unterstützung für XDG Decoration, wie KDE und Sway, wird der WaylandWindowDecorations-Modus ignoriert.
  • Eine API zur Berücksichtigung von Systemeinstellungen, die den Transparenzgrad des Hintergrunds in Anwendungen steuern, wurde hinzugefügt.
  • Unterstützung für die API chrome.scripting wurde hinzugefügt, die es ermöglicht, eigenes JavaScript und CSS auf Seiten zu integrieren.
  • Die Methoden safeStorage.setUsePlainTextEncryption und safeStorage.getSelectedStorageBackend wurden hinzugefügt.
  • Die API BrowserWindow.showAllTabs wurde hinzugefügt. Das BrowserWindow-Objekt enthält nun die Eigenschaft tabbingIdentifier. Die API chrome.tabs.query wurde teilweise implementiert.
  • In die Methoden session.downloadURL() und webContents.downloadURL() wurde die Möglichkeit hinzugefügt, bestimmte HTTP-Header zu senden.
  • Ein Flag „—dns-result-order“ wurde hinzugefügt.
  • In Linux wurde die Erkennung der Einstellungen für das dunkle Erscheinungsbild über das Portal „xdg settings“ realisiert.
  • Die API ipcRenderer.sendTo() wurde als veraltet erklärt, stattdessen sollte MessageChannel für die Interaktion zwischen zwei Renderern verwendet werden.
  • Die Methode webContents.getPrinters wurde entfernt, stattdessen sollte webContents.getPrintersAsync verwendet werden.
  • Die Methoden systemPreferences.{get,set}AppLevelAppearance und systemPreferences.appLevelAppearance wurden entfernt, ersetzt durch das Modul nativeTheme.
  • In der Methode systemPreferences.getColor wird die Unterstützung für den Wert alternate-selected-control-text eingestellt, stattdessen sollte selected-content-background verwendet werden.
  • In systemPreferences wurden die Ereignisse zur Änderung von Farbschemata entfernt (anstatt inverted-color-scheme-changed und high-contrast-color-scheme-changed sollte das Ereignis updated aus dem Modul nativeTheme verwendet werden).
  • Die Unterstützung für macOS 10.13 (High Sierra) und macOS 10.14 (Mojave) wurde eingestellt.
  • Der Wartungszyklus von Electron 22.x, dem letzten Branch mit Unterstützung für Windows 7/8/8.1, wurde abgeschlossen.

Die Electron-Plattform ermöglicht die Erstellung beliebiger grafischer Anwendungen unter Verwendung von Webtechnologien, deren Logik mit JavaScript, HTML und CSS definiert wird und deren Funktionalität durch ein Plugin-System erweitert werden kann. Entwicklern stehen Node.js-Module sowie eine erweiterte API zur Verfügung, um native Dialoge zu erstellen, Anwendungen zu integrieren, Kontextmenüs zu erstellen, Benachrichtigungssysteme zu integrieren, Fenster zu manipulieren und mit den Subsystemen von Chromium zu interagieren.

Im Gegensatz zu Webanwendungen werden Electron-basierte Programme als eigenständige Executables ausgeliefert, die nicht an einen Browser gebunden sind. Dabei muss sich der Entwickler nicht um die Portierung der Anwendung auf verschiedene Plattformen kümmern, Electron gewährleistet die Möglichkeit, für alle Systeme, die von Chromium unterstützt werden, zu bauen. Electron bietet außerdem Mittel zur automatischen Lieferung und Installation von Updates (Updates können sowohl von einem separaten Server, als auch direkt von GitHub geliefert werden).

Unter den Programmen, die auf der Electron-Plattform basieren, sind der Editor Atom, der E-Mail-Client Mailspring, das Git-Tool GitKraken, das Blogsystem WordPress Desktop, der BitTorrent-Client WebTorrent Desktop sowie die offiziellen Clients für Dienste wie Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code und Discord zu nennen. Insgesamt sind im Katalog der Electron-Programme 744 Anwendungen angeführt. Um die Entwicklung neuer Anwendungen zu erleichtern, wurde eine Reihe von Standard-Demonstrationsanwendungen vorbereitet, die Codebeispiele zur Lösung verschiedener Aufgaben enthalten.

Quelle: opennet.ru

60GB SSD 8Gb DDR4