Издаден е уеб браузърът Firefox 101. Освен това е създадено обновление на версията с дългосрочна поддръжка — 91.10.0. На етап бета тестове е преминала версия Firefox 102, чиято публикация е планирана за 28 юни.
Основни нововъведения в Firefox 101:
- Осъществена е експериментална поддръжка на трета версия на манифеста Chrome, определяща възможностите и ресурсите, достъпни за добавки, написани с използване на API WebExtensions. В реализирания в Firefox вариант на манифеста Chrome е добавен нов декларативен API за филтриране на съдържание, но за разлика от Chrome не е прекратена поддръжката на стария блокиращ режим на работа на API webRequest, търсен от добавки за блокиране на нежелано съдържание и осигуряване на сигурност. За включване на поддръжката на третата версия на манифеста в about:config е предвиден параметър „extensions.manifestV3.enabled“.
- Предоставена е възможност за свързване на обработчици към всички MIME типове, извиквани след завършване на изтеглянето на файлове от указания тип.
- Реализирана е възможност за едновременно използване на произволен брой микрофони по време на видеоконференция, което, например, позволява лесно превключване между микрофони по време на събитие.
- Активирана е поддръжката на протокол WebDriver BiDi, който позволява използването на външни инструменти за автоматизация на работата и дистанционно управление на браузъра, например, протоколът позволява тестване на интерфейса чрез платформата Selenium. Поддържат се сървърната и клиентската компонента на протокола, позволяващи изпращане на заявки и получаване на отговори.
- Добавена е поддръжка на медийната заявка prefers-contrast, чрез която сайтовете могат да определят зададените от потребителя настройки за показване на съдържание с повишен или понижен контраст.
- Добавена е поддръжка на три нови размера на видимата зона (Viewport) — „small“ (s), „large“ (l) и „dynamic“ (d), както и свързаните с тези размери единици за измерване — „*vi“ (vi, svi, lvi и dvi), „*vb“ (vb, svb, lvb и dvb), „*vh“ (svh, lvh, dvh), „*vw“ (svw, lvw, dvw), „*vmax“ (svmax, lvmax, dvmax) и „*vmin“ (svmin, lvmin и dvmin). Предложените единици за измерване позволяват свързване на размера на елементите с най-малкия, най-голямия и динамичния размер на видимата зона в процентно съотношение (размерът се променя в зависимост от показването, скриването и състоянието на панела с инструменти).
- В класa HTMLInputElement е добавен метод showPicker(), който позволява да се покажат готови диалози за попълване на стандартни стойности в полета <input> с типове „date“, „month“, „week“, „time“, „datetime-local“, „color“ и „file“, както и за полета, които поддържат автоматично попълване (autofill) и избор от списък (datalist). Например, може да се покаже интерфейс под формата на календар за избор на дата или палитра за въвеждане на цвят.
- Добавен е програмен интерфейс, който позволява на JavaScript приложения динамично да създават стилови таблици и да манипулират приложението на стиловете. В отличие от създаването на стилови таблици чрез метода document.createElement(‘style’), новият API добавя средства за конструкция на стилове чрез обекта CSSStyleSheet(), предоставяйки методи като insertRule, deleteRule, replace и replaceSync.
- В панела за инспектиране на страницата, при добавяне или изтриване на имена на класове чрез бутона „.cls“ в раздела Rule View, е реализирано интерактивно приложение на препоръките от падащото меню за автоматично допълване, предлагащо преглед на имената на класовете, налични за страницата. Със запазване на позицията в списъка, избраните класове автоматично се прилагат за визуална оценка на настъпилите промени.

- В настройките на панела за инспектиране е добавена нова опция за деактивиране на функцията „drag to update“ в раздела Rule View, позволяваща промяна на размера на някои CSS свойства чрез.horizontalipment dragging.

- В Firefox за Android е добавена поддръжка на функцията за увеличаване на области на екрана, налична от Android 9, с помощта на която може да се увеличи съдържанието на web-формите. Решени са проблемите с размера на видеото при гледане на YouTube или при излизане от режим 'картинка в картинка'. Отстранено е мигането на виртуалната клавиатура при показването на контекстно меню. Подобрено е показването на бутона за QR-код в адресната лента.
В допълнение към новите функции и корекциите на грешки, Firefox 101 решава 30 уязвимости, от които 25 са обозначени като рискови. 19 уязвимости (сведени под CVE-2022-31747 и CVE-2022-31748) са причинени от проблеми с управление на паметта, като презапълване на буфери и достъп до вече освободени области на паметта. Потенциално тези проблеми могат да доведат до изпълнение на код от злонамерен потребител при отваряне на специално форматирани страници. Също така е решен специфичен за Windows проблем, позволяващ изменение на пътя към запазвания файл чрез използване на специални символи „%“ за подмяна в пътя на променливи като %HOMEPATH% и %APPDATA%.
От промените в бета-версията на Firefox 102, се откроява подобрението на прегледа на PDF документи в режим на висок контраст и възможността за използване на DBus услугата Geoclue на платформата Linux за определяне на местоположение. В интерфейса за уеб разработчици в раздела Style Editor е добавена поддръжка за филтриране на таблици със стилове.
Източник: opennet.ru


