Chrome 126

Data wydania wersji stabilnej: 11 czerwca 2024 r.

O ile nie zaznaczono inaczej, poniższe zmiany dotyczą wersji stabilnej Chrome 126 na systemy Android, ChromeOS, Linux, macOS i Windows.

CSS

Przejścia między dokumentami na potrzeby nawigacji w tej samej domenie

Wcześniej trzeba było zmienić architekturę witryny, aby stała się SPA, aby można było używać interfejsu View Places API. Już tak nie jest. Przejścia widoku są teraz domyślnie włączone w przypadku nawigacji z tej samej domeny. Możesz utworzyć przejście między 2 różnymi dokumentami o tym samym pochodzeniu.

Aby umożliwić wyświetlanie różnych dokumentów, obie strony muszą wyrazić na to zgodę. Aby to zrobić, użyj reguły @view-transition i ustaw deskryptor navigation na auto.

@view-transition {
  navigation: auto;
}

Przejścia między widokami różnych dokumentów bazują na tych samych elementach składowych i zasadach co przejścia między widokami tego samego dokumentu. Przechwytywane są elementy z zastosowanym ustawieniem view-transition-name. Możesz dostosować animacje za pomocą animacji CSS.

Płynne przejścia dzięki interfejsowi View Przenoszenie API | Błąd śledzenia nr 1372584 | Wpis ChromeStatus.com | Specyfikacja

Internetowe interfejsy API

Rozszerzenie aktywatora w interfejsie Gamepad API

Rozszerza interfejs GamepadHapticActuator, aby zapewnić obsługę reguły wyzwalacza w internecie na zgodnych padach do gier. To rozszerzenie pozwoli aplikacjom internetowym, które korzystają z interfejsu Gamepad API, także na wibracje uruchamiające pady do gier wyposażonych w tę funkcję.

Błąd śledzenia #40834175 | Wpis ChromeStatus.com | Specyfikacja

Aplikacje internetowe z kartami w ChromeOS

Aplikacje PWA w samodzielnym oknie mogą mieć otwartą tylko jedną stronę naraz. Niektóre aplikacje oczekują, że użytkownicy będą mieć otwartych wiele stron jednocześnie. Tryb kart dodaje pasek kart do samodzielnych aplikacji internetowych w ChromeOS, dzięki czemu można otworzyć wiele kart naraz.

Ta funkcja dodaje nowy tryb wyświetlania "tabbed" i nowe pole pliku manifestu, aby umożliwić dostosowywanie paska kart.

Błąd śledzenia #40598974 | Wpis ChromeStatus.com | Specyfikacja

Metoda toJSON() przez GeolocationCoordinates i GeolocationPosition

Dodaje metody .toJSON() do interfejsów GeolocationCoordinates i GeolocationPosition. Umożliwia to serializację tych obiektów za pomocą funkcji JSON.stringify().

Wpis na temat ChromeStatus.com

Nadzwyczajny interfejs WebGLObject IDL

Ta funkcja ujawnia typ WebGLObject w tych samych kontekstach, w których jest dostępny interfejs API WebGL – w wątku głównym i instancjach roboczych.

Wpis na ChromeStatus.com | Specyfikacja

Ponownie włącz interfejs CloseWatcher API i zamknij żądania dotyczące <dialog> i popover=""

Interfejs API CloseWatcher umożliwia obsługę żądań zamknięcia w jednolity sposób, np. za pomocą klawisza ESC na platformach stacjonarnych czy gestu cofnięcia lub przycisku cofania w Androidzie. Ta funkcja była pierwotnie dostępna w Chrome 120, ale została wyłączona z powodu nieoczekiwanej interakcji z <dialog>. Została ona ponownie włączona w Chrome 126 po wprowadzeniu ulepszeń w jej działaniu, aby zminimalizować występowanie w niej występujących problemów.

Demonstracja | Błąd śledzenia nr 1171318 | Wpis na stronie ChromeStatus.com

Attribution Reporting API: zasada dotycząca stron odsyłających dla żądań typu attributionsrc

Żądania attributionsrc są traktowane jak inne zasoby podrzędne na stronie.

Wcześniej, gdy interfejs API był wywoływany przy użyciu atrybucji attributionsrc w ramach różnych elementów HTML (takich jak <img>, <script>, <a> i window.open), ignorował atrybut zasad dotyczących strony odsyłającej na poziomie zasobu ustawiony w elemencie <html>.

Po tej zmianie żądanie attributionsrc będzie teraz stosować te same zasady dotyczące stron odsyłających na poziomie zasobu określone w <img>, <script>, <a> i window.open.

Dzięki temu specjaliści ds. technologii reklamowych mają większą kontrolę nad tym, czy chcą bardziej czy mniej restrykcyjnie podchodzić w stosunku do informacji o stronie odsyłającej w żądaniach attributionsrc.

Wpis na temat ChromeStatus.com

Multimedia

Obsługa kontenera MP4 w funkcji MediaRecorder

Dodaje obsługę łączenia dźwięku i wideo w kontenerach MP4 za pomocą MediaRecorder.

MediaRecorder | Wpis ChromeStatus.com | Specyfikacja

Parametry OpusEncoderConfig signal i application

Parametry OpusEncoderConfig.signal i OpusEncoderConfig.application są mapowane bezpośrednio na pokrętła do implementacji kodera. Dzięki nim autorzy stron internetowych mogą podawać wskazówki dotyczące rodzaju kodowanych danych i kontekstu, w którym są one używane.

signal może mieć wartość "auto", "music", "voice". Konfiguruje on koder pod kątem maksymalnej wydajności kodowania danych określonego typu. application może być jedną z tych wartości: "voip", "audio", "lowdelay". Konfiguruje on koder w taki sposób, by zapewnić zrozumiałość mowy, wierne odtwarzanie oryginalnych danych wejściowych lub minimalne opóźnienie.

Wpis na ChromeStatus.com | Specyfikacja

JavaScript

Pomoc na poziomie: visualViewport onscrollend

Zdarzenie JavaScript scrollend uruchamia się, aby zasygnalizować zakończenie operacji przewijania.

Interfejs visualViewport zawiera moduł obsługi zdarzeń onscrollend, który powinien być wywoływany po zakończeniu operacji przewijania w visualViewport. Chrome obsługuje już dodawanie detektora zdarzeń przewijania za pomocą interfejsu visualViewport.addEventListener("scrollend"). Umożliwia to tylko dodanie detektora zdarzeń za pomocą visualViewport.onscrollend.

Błąd śledzenia #325307785 | Wpis na temat ChromeStatus.com

Prywatność

Wyrównaj plik navigator.cookieEnabled ze specyfikacją

navigator.cookieEnabled wskazuje obecnie, czy „klient użytkownika próbuje obsłużyć pliki cookie” w danym kontekście. Zmiana w Chrome związana z wycofaniem plików cookie innych firm (3PCD) spowodowałaby informację o możliwości uzyskania dostępu do plików cookie bez partycji (powodowałaby to zwracanie wartości „fałsz” w większości elementów iframe z innych witryn). Powinniśmy przywrócić wcześniejszy sposób działania strony navigator.cookieEnabled, który wskazał tylko wtedy, że pliki cookie są włączone lub wyłączone w danej witrynie i użyć funkcji document.hasStorageAccess innego dostawcy, aby wskazać, czy jest możliwy dostęp do plików cookie bez partycji.

Śledzenie błędu #335553590 | Wpis ChromeStatus.com | Specyfikacja

Ułatwienia dostępu

Obsługa platformy ułatwień dostępu UI Automation w systemie Windows

Nowoczesne aplikacje wspomagające w systemie Microsoft Windows korzystają z platformy ułatwień dostępu UI Automation platformy, aby współdziałać z interfejsami innych aplikacji. Do tej pory Chromium obsługiwał w tym celu starszą platformę Microsoft Active Accessibility (MSAA) i IAccessible2 (IA2), co powodowało problemy z narzędziami ułatwień dostępu w systemie Windows.

Aby rozwiązać ten problem, firma Microsoft nawiązała współpracę z zespołem Chrome nad bezpośrednią obsługą interfejsu UI Automation (UIA) bezpośrednio w systemie Windows, co ułatwiło komunikowanie się narzędzi ułatwień dostępu z przeglądarką. Zaczniemy stopniowo wdrażać wersję stabilną, począwszy od Chrome od wersji 126. Dzięki temu Voice Access będzie działać we wszystkich przeglądarkach opartych na Chromium i zwiększy wygodę użytkowników korzystających z narzędzi ułatwień dostępu opartych na UIA, takich jak Narrator czy Magnifier.

Wprowadzamy obsługę UIA w systemie Windows

Nowe wersje próbne origin

FedCM jako sygnał zaufania dla interfejsu Storage Access API

Uzgadnia interfejsy API FedCM i dostępu do miejsca na dane, przypisując wcześniejszy dostęp FedCM jako ważny powód do automatycznego zatwierdzenia prośby o dostęp do miejsca na dane.

Gdy użytkownik przyznaje uprawnienia do używania jego tożsamości u zewnętrznego dostawcy tożsamości w ramach jednostki uzależnionej, wielu dostawców tożsamości wymaga plików cookie innych firm do prawidłowego i bezpiecznego działania. Ta oferta ma na celu spełnienie tego wymogu w sposób prywatny i bezpieczny przez zaktualizowanie kontroli uprawnień interfejsu Storage Access API (SAA) tak, aby nie tylko akceptowała uprawnienia przyznane w ramach promptu o dostępie do pamięci, ale również w komunikacie FedCM.

Kluczową właściwością tego mechanizmu jest ograniczanie przyznawania uprawnień do przypadków wyraźnie dozwolonych przez zasadę uprawnień FedCM, egzekwowanie kontroli dla poszczególnych klatek i zapobieganie pasywnemu inwigilowaniu przez dostawcę tożsamości poza możliwościami, które już przyznał FedCM.

Testowanie origin | Wyjaśnienie | Wpis ChromeStatus.com

Rezygnacja z podglądu multimediów

W ramach tego testu odwrotnego pochodzenia wykluczamy witryny z uruchomienia Media Previews.

Gdy strony zażądają dostępu do kamery i mikrofonu, Chrome będzie udostępniać podgląd w czasie rzeczywistym. Będą one także dostępne na stronie z informacjami o stronie.

Oprócz tego użytkownicy korzystający z kilku urządzeń będą mogli wybrać kamerę i mikrofon zgodnie z prośbą o pozwolenie, chyba że strona poprosi o dostęp do konkretnego urządzenia w getUserMedia().

Testowanie origin | Błąd śledzenia nr 330762482 | Wpis ChromeStatus.com

FedCM: Continuation API, Parameters API, Fields API, Wiele configURLs, Niestandardowe etykiety konta

Deweloperzy mogą rozpocząć testowanie origin pakietu funkcji FedCM na komputery, które mogą obejmować autoryzację. Pakiet składa się z interfejsu FedCM Continuation API, interfejsu Parameter API, interfejsu Fields API, wielu adresów configURL i etykiet konta niestandardowego. Przypomina to proces autoryzacji OAuth z oknem uprawnień udostępnianym przez dostawcę tożsamości.

Błąd śledzenia nr 40262526 | Wpis na stronie ChromeStatus.com

Kontrola uprawnień umieszczonych na stronie

Dodaj nowy element HTML, który współdziała z procesem uzyskiwania uprawnień.

Prośba o uprawnienia jest obecnie wyzwalana bezpośrednio przez JavaScript, a klient użytkownika nie ma wyraźnego sygnału dotyczącego zamiaru użytkownika. Zastosowanie elementu w treści, którego użytkownik używa do wyzwalania przepływu uprawnień, pozwala poprawić UX prośby o przyznanie użytkownikom uprawnień oraz zapewnić ścieżkę przywracania ze stanu uprawnień „odrzucone” w przypadku witryn.

Wpis na temat ChromeStatus.com

Wycofania i usuwanie

Utwórz i usuń składnię „assert” asercji importu

Wycofać słowo kluczowe assert i usunąć je na rzecz nowego słowa kluczowego with w składni atrybutu importu.

Oznacza to, że import m from 'foo' assert { type: 'json' } będzie generować błąd składni, a programiści będą musieli przejść na import m from 'foo' with { type: 'json' }.

Wpis na ChromeStatus.com | Specyfikacja

Więcej informacji

Chcesz więcej? Zapoznaj się z tymi dodatkowymi materiałami.

Pobierz Google Chrome

Pobierz Chrome na Androida, komputer lub iOS.