Die Version 89 des Webbrowsers Firefox wurde veröffentlicht. Zudem wurde ein Update für den LTS-Zweig 78.11.0 bereitgestellt. Der Beta-Test für den Firefox-Zweig 90 wird in Kürze beginnen, dessen Veröffentlichung für den 13. Juli geplant ist.
Hauptneuheiten:
- Eine umfassende Überarbeitung der Benutzeroberfläche wurde durchgeführt. Die Icons wurden aktualisiert, der Stil verschiedener Elemente vereinheitlicht und die Farbpalette überarbeitet.
- Das Design der Tab-Leiste wurde geändert – die Ecken der Tab-Tasten sind abgerundet und verschmelzen nun nicht mehr mit der unteren Leiste (Schwebetaste-Effekt). Die visuelle Trennung inaktive Tabs wurde entfernt, jedoch wird der Bereich der Schaltfläche beim Überfahren mit dem Cursor hervorgehoben.

- Das Menü wurde neu strukturiert. Selten verwendete und veraltete Elemente wurden aus dem Hauptmenü und den Kontextmenüs entfernt, um den Fokus auf die wichtigsten Funktionen zu legen. Die verbleibenden Elemente wurden nach ihrer Wichtigkeit und Benutzeranfragen neu gruppiert. Um visuelle Ablenkungen zu reduzieren, wurden die Icons neben den Menüpunkten entfernt und nur die Textbezeichnungen behalten. Die Benutzeroberfläche für die Anpassung der Werkzeugsammlung und die Entwicklungswerkzeuge wurden in ein separates Untermenü "Zusätzliche Werkzeuge" verschoben.


- Das im Adressfeld integrierte Menü „…“ (Seitenaktionen), über das Sie Lesezeichen hinzufügen, einen Link in Pocket senden, einen Tab fixieren, mit der Zwischenablage arbeiten und Materialien per E-Mail versenden konnten, wurde entfernt. Die über das Menü „…“ verfügbaren Optionen wurden in andere Bereiche der Benutzeroberfläche verschoben, sind weiterhin im Abschnitt zur Anpassung der Leiste verfügbar und können einzeln als Schaltflächen in der Leiste platziert werden. Zum Beispiel ist die Schaltfläche zum Aufrufen der Benutzeroberfläche für Screenshots über das Kontextmenü verfügbar, das beim Rechtsklick auf der Seite angezeigt wird.

- Das Popup-Seitenpanel zur Seitenanpassung wurde mit einer Benutzeroberfläche überarbeitet, die beim Öffnen eines neuen Tabs angezeigt wird.

- Das Design der Informationspanels und modalen Dialoge für Warnungen, Bestätigungen und Anfragen wurde geändert und an die anderen Dialoge angepasst. Die Dialoge weisen abgerundete Ecken auf und sind vertikal zentriert.

- Nach dem Update wird ein Hinweis angezeigt, der vorschlägt, Firefox als Standardbrowser im System zu verwenden und die Möglichkeit bietet, ein neues Design auszuwählen. Zur Auswahl stehen folgende Themen: systematisch (unter Berücksichtigung der Systemeinstellungen für Fenster, Menüs und Schaltflächen), hell, dunkel und Alpenglow (farbig).





- Standardmäßig ist die Schaltfläche zur Aktivierung des kompakten Anzeigemodus der Benutzeroberfläche im Erscheinungsbild der Symbolleiste ausgeblendet. Um diese Einstellung in about:config zu ändern, kann der Parameter „browser.compactmode.show“ verwendet werden. Bei Benutzern, die den kompakten Modus aktiviert haben, wird der Parameter automatisch aktiviert.
- Die Anzahl der ablenkenden Elemente für den Benutzer wurde reduziert. Überflüssige Warnungen und Benachrichtigungen wurden entfernt.
- In der Adressleiste ist ein Taschenrechner integriert, der es ermöglicht, mathematische Ausdrücke in beliebiger Reihenfolge zu berechnen. Der Taschenrechner ist standardmäßig deaktiviert und erfordert eine Änderung der Einstellung suggest.calculator in about:config. In einer der nächsten Versionen wird auch ein in die Adressleiste integrierter Einheit Converter erwartet, der es beispielsweise ermöglicht, Fuß in Meter umzurechnen.

- In den Versionen für Linux wurde die Verwendung der WebRender-Komposition-Engine für alle Linux-Nutzer aktiviert, einschließlich aller Desktop-Umgebungen, aller Mesa-Versionen und Systeme mit NVIDIA-Treibern (zuvor war WebRender nur für GNOME, KDE und Xfce bei Intel- und AMD-Treibern aktiviert). WebRender ist in Rust geschrieben und ermöglicht eine erhebliche Steigerung der Rendering-Geschwindigkeit sowie eine Verringerung der CPU-Belastung, indem Rendering-Operationen, die durch GPU-Shader realisiert werden, auf die GPU ausgelagert werden. Um WebRender in about:config zu deaktivieren, kann die Einstellung „gfx.webrender.enabled“ verwendet oder Firefox mit der Umgebungsvariable MOZ_WEBRENDER=0 gestartet werden.
- Die Methode der vollständigen Cookie-Schutz (Total Cookie Protection) ist standardmäßig aktiviert und wurde zuvor nur im strengen Modus zur Blockierung unerwünschter Inhalte (strict) aktiviert. Für jede Website wird jetzt ein separates, isoliertes Cookie-Speicher verwendet, was verhindert, dass Cookies für das Tracking beim Wechsel zwischen Websites genutzt werden können. Alle Cookies, die von externen Content-Blöcken auf der Website gesetzt werden, sind nun an die Hauptseite gebunden und werden nicht übertragen, wenn auf diese Blöcke von anderen Websites zugegriffen wird. Ausnahmen bestehen für Dienste, die nicht mit dem Tracking von Nutzern verbunden sind, wie etwa solche, die für die zentrale Authentifizierung verwendet werden. Informationen zu blockierten und erlaubten Cookies werden im Menü angezeigt, das erscheint, wenn auf das Schildsymbol in der Adressleiste geklickt wird.

- Die zweite Version des SmartBlock-Mechanismus wurde aktiviert, um Probleme auf Websites zu beheben, die durch die Blockierung externer Skripte im privaten Surfen oder bei aktivierter strenger Blockierung unerwünschter Inhalte entstehen. SmartBlock trägt zudem zur erheblichen Leistungssteigerung gewisser Websites bei, die aufgrund des Mangels an geladenen Tracking-Skripten langsamer werden. SmartBlock ersetzt automatisch die für das Tracking verwendeten Skripte durch Platzhalter, die ein korrektes Laden der Website sicherstellen. Die Platzhalter wurden für einige beliebte Tracking-Skripte vorbereitet, die auf die Disconnect-Liste gesetzt sind, einschließlich der Skripte mit Widgets von Facebook, Twitter, Yandex, VKontakte und Google.
- Die Unterstützung für TLS-Erweiterungen DC (Delegated Credentials) wurde aktiviert, um kurzlebige Zertifikate zu delegieren, die Probleme mit der Zertifizierung beim Zugriff auf Websites über Content Delivery Networks lösen. Delegated Credentials führt einen zusätzlichen Zwischen-Privatschlüssel ein, dessen Gültigkeit auf Stunden oder einige Tage (maximal 7 Tage) beschränkt ist. Dieser Schlüssel wird auf der Grundlage des vom Zertifizierungszentrum ausgestellten Zertifikats generiert und ermöglicht es, den privaten Schlüssel des ursprünglichen Zertifikats vor den Diensten des Content Delivery Networks geheim zu halten. Um Probleme beim Zugriff nach Ablauf der Lebensdauer des Zwischen-Schlüssels zu vermeiden, ist eine Technologie für das automatische Update vorgesehen, die auf der Seite des ursprünglichen TLS-Servers durchgeführt wird.
- Eine externe (nicht native zur Systemumgebung) Implementierung von Formularelementen wie Schaltern, Tasten, Dropdowns und Texteingabefeldern (input, textarea, button, select) wurde eingeführt, die sich durch ein modernes Design auszeichnet. Die Anwendung einer separaten Implementierung der Formularelemente hat sich auch positiv auf die Seitenladeleistung ausgewirkt.
- Es besteht die Möglichkeit, den Inhalt der Elemente und
- Das Event Timing API wurde implementiert, um die Verzögerungen von Ereignissen vor und nach dem Laden der Seite zu messen.
- Die CSS-Eigenschaft forced-colors wurde hinzugefügt, um festzustellen, ob der Browser eine benutzerdefinierte, eingeschränkte Farbpalette auf der Seite anwendet.
- In die CSS-Eigenschaften ascent-override, descent-override und line-gap-override wurde der @font-face-Descriptor aufgenommen, um die Schriftmetriken zu überschreiben. Dies kann verwendet werden, um die Schriftanzeige in verschiedenen Browsern und Betriebssystemen zu vereinheitlichen und Layoutverschiebungen durch Webschriftarten zu vermeiden.
- In der CSS-Funktion image-set(), die es ermöglicht, aus einer Reihe von Bildern mit unterschiedlicher Auflösung das am besten geeignete Bild für die aktuellen Bildschirmparameter und Netzwerkbandbreite auszuwählen, wird die Unterstützung für die Funktion type() implementiert.
- In JavaScript ist die Verwendung des Schlüsselworts await standardmäßig auf oberster Ebene in Modulen erlaubt, was eine sanftere Integration von asynchronen Aufrufen in den Modul-Ladeprozess ermöglicht, ohne eine „async function“ einpacken zu müssen. Zum Beispiel kann man jetzt statt (async function() { await Promise.resolve(console.log(‘test’)); }()); einfach schreiben await Promise.resolve(console.log(‘test’));
- Auf 64-Bit-Systemen ist die Erstellung von ArrayBuffers mit einer Größe von mehr als 2 GB (aber nicht mehr als 8 GB) erlaubt.
- Die Unterstützung für die Ereignisse DeviceProximityEvent, UserProximityEvent und DeviceLightEvent wurde eingestellt, da diese in anderen Browsern nicht unterstützt werden.
- Die Navigation in den bearbeitbaren Eigenschaften des BoxModels wurde in der Seiteninspektor-Palette durch Tastatursteuerung verbessert.
- Das Erscheinungsbild der Kontextmenüs in den Windows-Builds wurde optimiert und der Start des Browsers beschleunigt.
- In den macOS-Builds wurden native Kontextmenüs und Scrollleisten implementiert. Die Unterstützung für den Effekt des Überscrollens, der das Erreichen des Seitenendes signalisiert, wurde hinzugefügt. Außerdem gibt es jetzt Unterstützung für intelligentes Zoomen, das durch einen Doppelklick aktiviert wird. Ein Dunkelmodus wurde hinzugefügt. Probleme mit der Farbabweichung zwischen CSS und Bildern wurden behoben. Im Vollbildmodus wurde die Möglichkeit hinzugefügt, die Panels auszublenden.
Neben neuen Funktionen und Fehlerbehebungen in Firefox 89 wurden 16 Sicherheitsanfälligkeiten behoben, von denen 6 als kritisch eingestuft sind. 5 dieser Sicherheitsanfälligkeiten (unter CVE-2021-29967 zusammengefasst) sind auf Probleme im Umgang mit dem Speicher zurückzuführen, wie beispielsweise Pufferüberläufe und Zugriffe auf bereits freigegebene Speicherbereiche. Diese Probleme könnten potenziell dazu führen, dass schadhafter Code beim Öffnen speziell gestalteter Seiten ausgeführt wird.
Quelle: opennet.ru













