Firefox 153

Доступен Firefox 153.
- Включена по умолчанию поддержка контейнеров (раньше их приходилось включать через
about:configили установкой отдельного дополнения Multi-Account Containers, которое по-прежнему предоставляет расширенные возможности наподобие привязки сайтов к контейнерам и интеграции контейнеров с Mozilla VPN). - Всем пользователям постепенно станет доступен третий режим работы браузера (в дополнение к имеющимся обычным и приватным окнам) — умное окно, в котором поле поиска на стартовой странице заменяется диалогом с AI-помощником, а взаимодействовать с ассистентом можно прямо во время просмотра веб-страниц (
browser.smartwindow.enabled). - Пункт «Поделиться» в контекстном меню вкладки теперь позволяет сгенерировать QR-код со ссылкой на страницу.
- Редактор PDF научился создавать новые страницы из добавляемых изображений, а также объединять документы PDF путём перетаскивания документа в боковую панель.
- Адресная строка обзавелась инструментом «пипетка» (вызывается вводом слов «выб» или «пип»). Кроме того, из адресной строки теперь можно сразу открыть раздел экспериментальных настроек Firefox Labs, введя «лаб» или «экс», а также очистить недавнюю историю («очи», «кук», «кэш», «ист»).
- Заработала настройка, убирающая логотип Firefox со страницы новой вкладки.
- Браузер научился проверять и показывать квалифицированные сертификаты аутентификации сайтов (QWAC).
- Значок, сигнализирующий о том, что сайту разрешена геолокация, теперь окрашивается в красный цвет в моменты, когда сайт использует это разрешение.
- Улучшена поддержка видео, на которое сайтом наложено другое содержимое (например, элементы управления). Нажатие на видео правой кнопкой мыши теперь вызывает меню управления видео, а не меню, относящееся к верхнему слою.
- Если субдомен слишком длинный и основной домен не виден целиком в адресной строке, то строка автоматически прокрутится таким образом, чтобы домен был всегда виден.
- Встроенный VPN в дополнение к чёрному списку (сайтов, которые не следует проксировать) обзавёлся белым (сайты, которые нужно всегда проксировать).
- Виджеты на странице новой вкладки теперь можно перетаскивать мышью.
- Появилась возможность настраивать горячие клавиши, активирующие разделение экрана.
- Для доступа к локальной файловой системе расширениям необходимо запрашивать отдельное разрешение (раньше оно было включено в разрешение доступа к веб-страницам).
- Удалены некоторые варианты блокировки кук. Пока они остаются доступны через about: config, но в будущем будут удалены и оттуда. Удалённые режимы стали неактуальны с появлением технологии «разделения» кук и обладают заметными недостатками. Пользователям, у которых эти режимы выбраны, следует скорректировать свои настройки.
- macOS: Добавлена поддержка системной горячей клавиши «переход в полноэкранный режим» (
Fn+F). - Windows: Появилась поддержка HDR-видео. Для её работы требуется, чтобы поддержка HDR была включена в настройках операционной системы. Экраны, которые поддерживают лишь «Стриминг HDR видео» пока не поддерживаются, равно как и некоторые видеозаписи, сделанные с помощью телефонов в нестандартных ориентациях.
- HTML:
- Обновлены правила разбора элемента : теперь разбираются и добавляются в DOM все вложенные элементы, а не только , и. Это готовит почву для возможной будущей поддержки настраиваемых элементов .
- Атрибут
mutedу элементов и теперь обновляется при его добавлении в DOM или удалении из него. Кроме того, этот атрибут теперь соответствует состоянию CSS-псевдокласса : muted.
- CSS: Добавлена ограниченная поддержка нестандартного псевдоэлемента ::-webkit-scrollbar:
- Правила, задающие ненулевые значения
width/height, отключают накладываемые полосы прокрутки для соответствующего контейнера. display: noneна::-webkit-scrollbarведёт себя аналогичноscrollbar-width: none, скрывая полосу прокрутки.- Проверка
@supports selector(::-webkit-scrollbar)возвращаетtrue. - Полноценная стилизация (цвета,
border-radius) намеренно не поддерживается.
- Правила, задающие ненулевые значения
- JavaScript:
- Реализована поддержка предложения TC39 Intl.Locale info (включает все методы экземпляра
Intl.Locale, чьи имена начинаются c «get» — getCalendars (), getCollations (), getHourCycles (), getNumberingSystems (), getTextInfo (), getTimeZones (), getWeekInfo (). - Добавлена поддержка статического свойства Error.stackTraceLimit (позволяет задать или получить максимальное количество кадров стека, сохраняемых в трассировке стека).
- Появилась возможность импортировать модули в виде строки с помощью with { type: «text» } (в отличие от модулей JavaScript или CSS, тип ответа при этом игнорируется, содержимое всегда обрабатывается как обычный текст).
- Добавлена поддержка синтаксиса
import source, являющегося частью TC39 source phase imports (похож на обычную инструкцию import, но вместо загрузки и выполнения модуля создаёт объект, представляющий его исходный код, который можно будет выполнить позже).
- Реализована поддержка предложения TC39 Intl.Locale info (включает все методы экземпляра
- API:
- Появились методы IDBObjectStore.getAllRecords () и IDBIndex.getAllRecords () (позволяют получить все записи (или указанное подмножество записей) соответственно из хранилища объектов и индекса).
- Включена поддержка Picture-in-Picture API (позволяет сайтам переключать отображение элемента между обычным режимом и видеоокном, плавающим поверх других окон).
- DOM: Поведение Popover API приведено в соответствие с последними изменениями спецификации whatwg/html#12345.
- Media, WebRTC и Web Audio:
- Метод RTCDtlsTransport.getRemoteCertificates () позволяет получить сертификаты, которые используются удалённой стороной для защиты DTLS-соединения.
- Методы decodingInfo () и encodingInfo () интерфейса MediaCapabilities теперь принимают тип конфигурации
"webrtc"(позволяет веб-сайтам проверять, может ли конкретная конфигурация аудио или видео быть декодирована или закодирована с использованием WebRTC, а также определять, будет ли этот процесс плавным, энергоэффективным или и тем, и другим). - Теперь все обязательные и некоторые необязательные статистические данные WebRTC типа «transport» могут быть представлены в объекте RTCStatsReport. Возвращаемый объект имеет тип RTCTransportStats и содержит следующие свойства: dtlsCipher, dtlsRole, dtlsState, iceLocalUsernameFragment, iceRole, iceState, id, selectedCandidatePairId, srtpCipher, timestamp, tlsVersion и type.
- WebAssembly: Включена поддержка JavaScript Promise Integration (JS-PI) (позволяет модулям WebAssembly взаимодействовать с асинхронными JavaScript API, основанными на Promise).
- Инструменты разработчика:
- Появилась настройка «Локальный режим», позволяющая загружать локальные файлы как HTTPS-ссылки (до этого при тестировании API, которые не поддерживают ссылки
file://, приходилось поднимать локальный веб-сервер). - Реализован показ уровня заголовка для соответствующего элемента в дереве доступности и при подсветке специальных возможностей (ранее показывалось лишь то, что элемент является заголовком).
- Появилась настройка «Локальный режим», позволяющая загружать локальные файлы как HTTPS-ссылки (до этого при тестировании API, которые не поддерживают ссылки
>>> Примечания к выпуску для разработчиков
>>> Все исправленные в этом выпуске ошибки
>>> Подробности
