Dostępny Firefox 78.
- W oknie dialogowym pobierania plików PDF dodano opcję „Otwórz w Firefoxie”.
- Dodano możliwość wyłączenia wyświetlania polecanych stron przy kliknięciu w pasek adresu (browser.urlbar.suggest.topsites).
- Pozycje menu „Zamknij karty po prawej” i „Zamknij inne karty” przeniesione do oddzielnego podmenu. Jeśli użytkownik zamknie kilka kart jednocześnie (np. przy użyciu „Zamknij inne karty”), pozycja menu „Przywróć zamkniętą kartę” przywróci je wszystkie, a nie tylko jedną. Wcześniej użytkownicy, którzy przypadkowo zamknęli wiele kart, musieli przywracać je pojedynczo.
- Przeprojektowano wygląd trybu czytania. Pasek boczny został zastąpiony kompaktowym pływającym paskiem narzędzi, którego design lepiej wpasowuje się w interfejs przeglądarki.
- Firefox zapobiegnie uruchomieniu wygaszacza ekranu, jeśli w danym momencie odbywa się połączenie przez WebRTC.
- Rozwiązano długo oczekiwany problem, który występował, gdy użytkownik próbował wkleić długi tekst (np. hasło wygenerowane przez menedżera haseł) w pole o ograniczonej długości (maxlength). W poprzednich wersjach Firefox bezgłośnie przycinał hasło do podanej długości, co przy rejestracji prowadziło do wysyłania na serwer „przyciętego” hasła, podczas gdy użytkownik był pewien, że jego hasło ma większą długość. Oczywiście później użytkownik nie mógł zalogować się z długim hasłem. Teraz Firefox wizualnie podświetli pole, do którego wklejono nadmiernie długi tekst i ostrzeże użytkownika, że powinien wprowadzić krótszy ciąg.
- Podczas wpisywania tekstu w pasku adresu, oprócz sugestii z silnika wyszukiwania, będą również oferowane poprzednie zapytania wyszukiwania (browser.urlbar.maxHistoricalSearchSuggestions). Na przykład, jeśli użytkownik wcześniej wyszukiwał w pasku adresu „cześć niedźwiedź”, to przy wpisywaniu słowa „cześć” zostanie mu zaproponowane, aby poszukał „cześć niedźwiedź”).
- Jeśli użytkownik wkleił w pasek adresu domenę bez podania protokołu, Firefox spróbuje połączyć się z nią nie tylko przez HTTP, jak wcześniej, ale także przez HTTPS (na wypadek, gdyby serwer nie obsługiwał HTTP).
- Adresy kończące się na .example, .internal, .invalid, .local, .localhost, ,test, już nie powodują przejścia do wyszukiwarki, zamiast tego przeglądarka spróbuje je otworzyć (te sufiksy są często używane podczas programowania).
- Bezpieczeństwo i prywatność:
- Na stronie about:protections dodano informacje na temat liczby haseł, które użytkownik zmienił na bezpieczne i które hasło zostało ujawnione w jakimś wycieku (i należy je zmienić).
- Dodano ustawienie layout.css.font-visibility.level, pozwalające określić, o jakich dostępnych w systemie czcionkach przeglądarka będzie informować strony internetowe (czcionki dzielą się na trzy grupy: tylko podstawowe systemowe, podstawowe + czcionki z pakietów językowych, wszystkie czcionki). W przyszłości planowane są testy, aby określić optymalną wersję, która nie psułaby wyświetlania stron, ale i nie ujawniała zbyt wielu informacji o wszystkich zainstalowanych czcionkach).
- Gdy użytkownik wprowadza w pasku adresu pojedyncze słowo, Firefox na podstawie heurystyk określa, czy może to być nazwa domeny w sieci lokalnej, i wysyła zapytanie do serwera DNS, aby sprawdzić, czy taka domena istnieje w sieci (aby jako pierwszy element w rozwijanej liście zaproponować przejście na tę domenę). Dla użytkowników o paranoicznym podejściu dodano ustawienie zarządzające tym zachowaniem (browser.urlbar.dnsResolveSingleWordsAfterSearch).
- Od deweloperów TorBrowser przyjęto łatkę, która całkowicie wyłącza użycie DNS (network.dns.disabled).
- Powtórnie została wyłączona wsparcie dla TLS 1.0 i 1.1 (było wyłączone w Firefox 74, ale później włączono ponownie ze względu na to, że w warunkach pandemii dostępność zasobów internetowych stała się bardzo istotna). Jeśli serwer nie obsługuje TLS 1.2, użytkownik zobaczy komunikat o błędzie ustanawiania zabezpieczonego połączenia oraz przycisk włączający wsparcie dla przestarzałych protokołów (w przyszłości wsparcie dla nich zostanie całkowicie usunięte). Chrome i Edgium również w lipcu wyłączają wsparcie dla starych protokołów (TLS 1.0 pojawił się w 1999 roku, a TLS 1.1 — w 2006 roku), ponieważ nie obsługują nowoczesnych szybkich i niezawodnych algorytmów (ECDHE, AEAD), a wymagają wsparcia dla starych i słabych (TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SHA1, MD5). Z Internet Explorer i Edge wsparcie dla TLS 1.0/1.1 zostanie usunięte we wrześniu.
- Wyłączone wsparcie dla szyfrów TLS_DHE_RSA_WITH_AES_128_CBC_SHA i TLS_DHE_RSA_WITH_AES_256_CBC_SHA. Firefox pozostawał ostatnią przeglądarką z ich wsparciem.
- Zwiększone minimalne wymagania systemowe. Od teraz to GNU libc 2.17, libstdc++ 4.8.1 i GTK+ 3.14.
- To jest ostatnia główna wersja wspierająca macOS 10.9, 10.10 i 10.11. Użytkownikom tych systemów operacyjnych zaleca się przejście na Firefox ESR 78.x, w którym wsparcie dla wymienionych wersji macOS będzie kontynuowane przez rok.
- Wiele ulepszeń dla osób z niepełnosprawnościami:
- Podczas korzystania z JAWS naciśnięcie strzałki w dół w elemencie HTML zawierającym listę danych już nie powoduje nieprawidłowego przesunięcia kursora do następnego elementu.
- Czytniki ekranu już nie spowalniają się ani nie zawieszają, gdy zdobywają fokus wskaźnika współdzielenia mikrofonu/kamery/ekranu.
- Zdecydowanie przyspieszono ładowanie tabel zawierających tysiące wierszy.
- Elementy wprowadzania tekstu z niestandardowymi stylami teraz prawidłowo wyświetlają kontur fokusu.
- Podczas otwierania narzędzi dewelopera, czytniki ekranu już nie przełączają się błędnie w tryb przeglądania dokumentu.
- Zmniejszono ilość animacji (podczas najechania na kartę, rozwijania wiersza wyszukiwania itp.), aby ułatwić życie osobom cierpiącym na migreny i epilepsję.
- Wszyscy użytkownicy z Wielkiej Brytanii otrzymają rekomendacje od Pocket na stronie nowej karty.
- CSS:
- Włączona wsparcie dla pseudo-klas :is() i :where().
- Wdrożono wsparcie dla pseudo-klas :read-only i :read-write bez prefiksu.
- Style :read-write nie mogą być już stosowane do niedostępnych elementów <input> i , ponieważ narusza to specyfikację.
- JavaScript:
- Wdrożono wsparcie dla API Intl.ListFormat.
- Konstruktor Intl.NumberFormat() uzyskał wsparcie dla opcji proponowanych w ramach Intl.NumberFormat Unified API.
- Z V8 (silnik JS Chromium) zaadoptowana nowa wersja silnika wyrażeń regularnych Irregexp, co pozwoliło na wprowadzenie wszystkich brakujących elementów ECMAScript 2018 (twierdzenia Lookbehind, RegExp.prototype.dotAll, eskalacja klas symboli Unicode, nazwane grupy). Poprzednia wersja została zaadaptowana w 2014 roku (wcześniej Firefox miał własny silnik), od tego czasu programiści musieli wspierać forka, portując zmiany z Chromium. Teraz wprowadzono interfejs, który umożliwia przeniesienie Irregexp jako modułu, który praktycznie nie wymaga adaptacji. Dużą pracę wykonali programiści V8, którzy zredukowali zależność Irregexp od V8. Z kolei programiści Firefoxa przesłali do upstreamu łatki, które poprawiają błędy, podnoszą jakość kodu i eliminują niespójności specyfikacji JavaScript.
- Wszystkim obiektom prototypowym DOM dodano właściwości Symbol.toStringTag.
- Ulepszono zbieranie śmieci obiektów WeakMap.
- Metoda window.external.AddSearchProvider jest teraz atrapą zgodnie z specyfikacją.
- DOM: wprowadzono metodę ParentNode.replaceChildren().
- WebAssembly: od teraz funkcje mogą zwracać jednocześnie wiele wartości.
- Narzędzia dewelopera.
Źródło: linux.org.ru
