Firefox 151

Доступен Firefox 151, примечательный улучшенной защитой от сбора цифровых отпечатков, поддержкой Web Serial API, а также возможностью для сайтов захватывать ввод с клавиатуры в полноэкранном режиме.
- Локальное резервное копирование профиля доступно в Linux (в macOS включение отложено до следующего выпуска).
- Переработан дизайн новой вкладки, чтобы обеспечить её готовность к будущим изменениям, таким как виджеты и улучшенные ярлыки, появление которых планируется в следующей версии (
browser.newtabpage.activity-stream.nova.enabled). - Существенно увеличена ширина поля поиска по настройкам.
- В режиме приватного просмотра появилась возможность очистить все данные текущего сеанса без необходимости закрывать окно браузера и начинать новый сеанс.
- Защита от отслеживания стала ещё лучше бороться со сбором цифровых отпечатков. Количество пользователей, которых удаётся однозначно идентифицировать, уменьшилось в среднем на 14% (а в macOS — на 49%).
- Просмотрщик PDF научился объединять несколько документов.
- В подменю «Другие инструменты» добавлен пункт для вызова
about:translations. - Встроенный VPN теперь позволяет выбрать страну, где размещён выходной узел.
- Исправлена передача сайтам некорректных сведений о разрешении экрана в системах с несколькими мониторами.
- Автозаполнение адресов включено для пользователей из Нидерландов.
- Убрано архитектурное ограничение, не позволявшее сайтам видеть временные разрешения (когда пользователь разрешил, например, доступ к геолокации, но не указал «запомнить это решение»).
- Перемещение профиля в другой каталог или в другую ОС больше не нарушает работу установленных дополнений и тем (в extensions.json оставались старые пути).
- macOS:
- Реализована поддержка ссылок, помещённых в буфер обмена на устройствах под управлением iOS.
- Выпадающие элементы теперь используют нативное меню операционной системы.
- Исправлена ошибка, из-за которой на системах с несколькими мониторами развёрнутые окна Firefox после перезапуска открывались не на том мониторе.
- Улучшено управление цветом при копировании и вставке изображений.
- Windows: Firefox теперь учитывает системные настройки геолокации, когда пользователь разрешает сайту определять местоположение. Если геолокация выключена на уровне ОС, браузер попросит пользователя включить геолокацию.
- HTML: Появилась поддержка атрибута shadowrootslotassignment на элементах. В JavaScript этот атрибут отражается свойствами ShadowRoot.slotAssignment или HTMLTemplateElement.shadowRootSlotAssignment.
- CSS:
- Директива @container теперь поддерживает запросы style () (позволяет проверить, есть ли у контейнера валидное объявление, конкретное свойство или кастомное свойство, и соответствующим образом применить стили к его дочерним элементам).
- Свойство position-anchor теперь поддерживает (умолчальное) значение
normal(обеспечивает согласованность со свойством position-area: если оно обновляется, тоposition-anchorтакже автоматически обновится).
- API:
- Метод Sanitizer.replaceElementWithChildren () теперь возвращает
false, если заменяемым элементом является в пространстве имён SVG или в пространстве имён MathML. - Появилась поддержка Document Picture-in-Picture API (позволяет открыть окно, расположенное поверх остальных окон, которое можно наполнить любым HTML-содержимым).
- Добавлено свойство CanvasRenderingContext2D.lang (полезно для настройки контекста у закадрового canvas, который может рендериться еще до того, как будет связан с каким-либо элементом).
- Метод Element.requestFullscreen () теперь принимает свойство options.keyboardLock в качестве параметра (позволяет веб-сайтам запрашивать блокировку клавиатуры, когда элемент отображается в полноэкранном режиме). Сайты теперь могут предотвращать выход из полноэкранного режима по нажатию клавиши
Esc(выход остаётся возможным через удерживание клавиши), а также перехватывать некоторые ранее зарезервированные браузерные горячие клавиши и отменять их стандартное действие. - GPUSupportedLimits теперь поддерживает свойства
maxStorageBuffersInFragmentStage,maxStorageBuffersInVertexStage,maxStorageTexturesInFragmentStageиmaxStorageTexturesInVertexStage(позволяют задать максимальное количество буферов хранения и текстур, разрешённых на стадиях фрагментного и вершинного шейдеров. - Реализована поддержка свойства CSSContainerRule.conditions. Свойство
conditionпредставляет соответствующую директиву @container в виде массива объектов, где каждый объект описывает отдельное условие контейнера. - Включена поддержка Web Serial API (позволяет управлять микроконтроллерами с поддержкой последовательного интерфейса). Это даёт возможность программировать микроконтроллеры и отладочные платы (такие как устройства ESP, BBC micro: bit и Raspberry Pi Pico), 3D-принтеры, ЧПУ-станки и другие устройства. Каждый сайт, который хочет использовать этот API, должен создать специальное дополнение, дающее необходимые разрешения, а пользователь должен это дополнение установить (аналогично тому, как это уже сделано с WebMIDI).
- Метод Sanitizer.replaceElementWithChildren () теперь возвращает
- Инструменты разработчика: Выпадающее меню с управлением скоростью анимации теперь доступно всегда (до этого оно появлялось лишь при активной анимации, что затрудняло его использование в случае очень коротких анимаций).
>>> Примечания к выпуску для разработчиков
>>> Все исправленные в этом выпуске ошибки
>>> Подробности
