Chrome 126

Kararlı sürümün yayın tarihi: 11 Haziran 2024

Aksi belirtilmedikçe aşağıdaki değişiklikler Android, ChromeOS, Linux, macOS ve Windows için Chrome 126 kararlı kanal sürümünde geçerlidir.

CSS

Aynı kaynaklı gezinmeler için dokümanlar arası görünüm geçişleri

Önceden, View Transitions API'yi kullanmak için web sitenizi SPA olarak yeniden tasarlamanız gerekiyordu. Bu durum artık geçerli değil. Görüntüleme geçişleri artık aynı kaynaklı gezinmeler için varsayılan olarak etkinleştirilmiştir. Aynı kaynağa ait iki farklı doküman arasında görünüm geçişi oluşturabilirsiniz.

Belgeler arası görünüm geçişini etkinleştirmek için her iki tarafın da etkinleştirmesi gerekir. Bunu yapmak için @view-transition kuralını kullanın ve navigation tanımlayıcısını auto olarak ayarlayın.

@view-transition {
  navigation: auto;
}

Dokümanlar arası görünüm geçişleri, aynı doküman görünüm geçişleriyle aynı yapı taşlarını ve ilkeleri kullanır. view-transition-name uygulanmış öğeler yakalanır ve animasyonları CSS animasyonlarını kullanarak özelleştirebilirsiniz.

View Transition API ile sorunsuz geçişler | Hata izleme #1372584 | ChromeStatus.com girişi | Spesifikasyon

Web API'leri

Gamepad API trigger-rumble uzantısı

Uyumlu oyun kumandaları için web'de tetikleyici titreşim özelliğini kullanıma sunmak üzere GamepadHapticActuator arayüzünü genişletir. Bu uzantı, Gamepad API'den yararlanan web uygulamalarının, bu işlevle donatılmış oyun kumandası cihazlarının tetikleyicilerini de titreştirmesine olanak tanır.

Takip hatası #40834175 | ChromeStatus.com girişi | Spesifikasyon

ChromeOS sekmeli web uygulamaları

Bağımsız bir penceredeki PWA'larda aynı anda yalnızca bir sayfa açık olabilir. Bazı uygulamalar, kullanıcıların aynı anda birçok sayfa açmasını bekler. Sekmeli mod, ChromeOS'teki bağımsız web uygulamalarına bir sekme şeridi ekleyerek aynı anda birden fazla sekmenin açılmasına olanak tanır.

Bu özellik, sekme şeridinde özelleştirmelere izin vermek için yeni bir "tabbed" görüntüleme modu ve yeni bir manifest alanı ekler.

Hata izleme #40598974 | ChromeStatus.com girişi | Spesifikasyon

GeolocationCoordinates ve GeolocationPosition için toJSON() yöntemi

GeolocationCoordinates ve GeolocationPosition arayüzlerine .toJSON() yöntemleri eklendi. Bu sayede, bu nesneler JSON.stringify() ile serileştirilebilir.

ChromeStatus.com girişi

WebGLObject Web IDL süper arayüzü

Bu özellik, WebGL API'nin kullanıma sunulduğu bağlamlarda (ana iş parçacığı ve çalışanlar) WebGLObject türünü kullanıma sunar.

ChromeStatus.com girişi | Spesifikasyon

CloseWatcher API'yi yeniden etkinleştirme ve <dialog> ile popover="" için istekleri kapatma

CloseWatcher API'si, masaüstü platformlardaki ESC tuşu veya Android'deki geri hareketi ya da düğmesi gibi kapatma isteklerinin tek tip bir şekilde işlenmesini sağlar. Bu özellik ilk olarak Chrome 120'de kullanıma sunulmuştu ancak <dialog> ile beklenmedik bir etkileşim nedeniyle devre dışı bırakılmıştı. Chrome 126'da, bu sorunları en aza indirmek için davranışında bazı iyileştirmeler yapıldıktan sonra yeniden etkinleştirildi.

Demo | İzleme hatası #1171318 | ChromeStatus.com girişi

Attribution Reporting API: attributionsrc istekleri için yönlendiren politikası

attributionsrc istekleri, sayfadaki diğer alt kaynaklar gibi değerlendirilir.

Daha önce API, çeşitli HTML öğelerinin (ör. <img>, <script>, <a> veya window.open) bir parçası olarak attributionsrc özelliğinin kullanımı yoluyla çağrıldığında <html> öğesinde ayarlanan kaynak düzeyindeki yönlendiren politikası özelliğini yoksayıyordu.

Bu değişiklikle birlikte attributionsrc isteği artık <img>, <script>, <a> veya window.open içinde ayarlanan kaynak düzeyindeki yönlendiren politikasını uygulayacak.

Bu sayede reklam teknolojileri, attributionsrc isteklerindeki yönlendiren bilgileriyle ilgili olarak daha fazla veya daha az kısıtlayıcı olmak isteyip istemedikleri konusunda daha fazla kontrole sahip olur.

ChromeStatus.com girişi

Medya

MediaRecorder için MP4 kapsayıcı desteği

MediaRecorder ile ses ve videoyu MP4 kapsayıcılarında birleştirme desteği ekler.

MediaRecorder | ChromeStatus.com girişi | Spesifikasyon

OpusEncoderConfig signal ve application parametreleri

OpusEncoderConfig.signal ve OpusEncoderConfig.application parametreleri, doğrudan uygulamaya özel kodlayıcı düğmeleriyle eşlenir. Bunlar, web yazarlarının ne tür verilerin kodlandığı ve verilerin hangi bağlamda kullanıldığına dair ipuçları vermesine olanak tanır.

signal şunlardan biri olabilir: "auto", "music", "voice". Kodlayıcıyı, belirtilen veri türünü kodlarken en iyi performansı gösterecek şekilde yapılandırır. application şunlardan biri olabilir: "voip", "audio", "lowdelay". Kodlayıcıyı, konuşma anlaşılırlığı, orijinal girişin aslına uygun şekilde yeniden üretilmesi veya minimum gecikme süresi sağlayacak şekilde yapılandırır.

ChromeStatus.com girişi | Spesifikasyon

JavaScript

visualViewport onscrollend destek ekibi

scrollend JavaScript etkinliği, kaydırma işleminin sona erdiğini bildirmek için tetiklenir.

visualViewport arayüzü, visualViewport üzerinde kaydırma işlemi sona erdiğinde çağrılması gereken bir onscrollend etkinlik işleyici içerir. Chrome, visualViewport.addEventListener("scrollend") aracılığıyla scrollend etkinlik işleyici eklemeyi zaten desteklemektedir. Bu sayede visualViewport.onscrollend kullanarak da etkinlik işleyici ekleyebilirsiniz.

Hata izleme #325307785 | ChromeStatus.com girişi

Gizlilik

navigator.cookieEnabled özelliğini spesifikasyonla uyumlu hâle getirme

navigator.cookieEnabled şu anda "kullanıcı aracısının belirli bir bağlamda çerezleri işlemeye çalışıp çalışmadığını" gösterir. Chrome'da, üçüncü taraf çerezlerinin desteğinin sonlandırılması (3PCD) kapsamında yapılan bir değişiklik, bölünmemiş çerez erişiminin mümkün olup olmadığını belirtmesine neden olur (çoğu siteler arası iFrame'de yanlış değer döndürmesine neden olur). Yalnızca site için çerezlerin etkinleştirilip etkinleştirilmediğini belirten navigator.cookieEnabled öğesinin önceki davranışını geri yüklemeli ve bölümlenmemiş çerez erişiminin mümkün olup olmadığını belirtmek için tedarikçiler arası document.hasStorageAccess işlevini kullanmalıyız.

Hata izleme #335553590 | ChromeStatus.com girişi | Spesifikasyon

Erişilebilirlik

Windows'da UI Otomasyonu Erişilebilirlik Çerçevesi desteği

Microsoft Windows'daki modern yardımcı uygulamalar, diğer uygulamaların kullanıcı arayüzleriyle birlikte çalışmak için platformun UI Otomasyonu erişilebilirlik çerçevesini kullanır. Chromium, bu amaçla şimdiye kadar eski Microsoft Active Accessibility (MSAA) ve IAccessible2 (IA2) çerçevesini destekliyordu. Bu durum, Windows'daki erişilebilirlik araçlarıyla ilgili sorunlara yol açıyordu.

Microsoft, bu sorunu çözmek için Chrome ekibiyle birlikte çalışarak Windows'da Kullanıcı Arayüzü Otomasyonu (UIA) çerçevesini doğrudan destekledi ve erişilebilirlik araçlarının tarayıcıyla iletişim kurmasını kolaylaştırdı. Chrome 126 sürümünden itibaren kararlı sürümü kademeli olarak kullanıma sunmaya başlayacağız. Bu sayede Sesli Erişim, Chromium tabanlı tüm tarayıcılarda çalışabilecek ve Ekran Okuyucusu ile Büyüteç gibi UIA tabanlı tüm erişilebilirlik araçlarının kullanıcı deneyimi iyileştirilecek.

Windows'da UIA desteği sunuluyor

Yeni kaynak denemeleri

Storage Access API için güven sinyali olarak FedCM

Önceki bir FedCM iznini, depolama alanı erişim isteğini otomatik olarak onaylamak için geçerli bir neden haline getirerek FedCM ve Storage Access API'leri uyumlu hale getirir.

Bir kullanıcı, kimliğinin bir Güvenen Taraf'ta (RP) üçüncü taraf Kimlik Sağlayıcı (IdP) ile kullanılmasına izin verdiğinde birçok IdP'nin doğru ve güvenli bir şekilde çalışması için üçüncü taraf çerezleri gerekir. Bu teklif, Storage Access API (SAA) izin kontrollerini güncelleyerek bu şartı gizli ve güvenli bir şekilde karşılamayı amaçlar. Bu sayede, yalnızca depolama alanı erişim istemi tarafından verilen izin onayı değil, aynı zamanda FedCM istemi tarafından verilen izin onayı da kabul edilir.

Bu mekanizmanın önemli bir özelliği, iznin yalnızca RP tarafından FedCM izinler politikası aracılığıyla açıkça izin verilen durumlarla sınırlandırılmasıdır. Bu sayede RP için kare başına kontrol uygulanır ve IdP'nin FedCM'nin zaten sağladığı özelliklerin ötesinde pasif gözetim yapması engellenir.

Kaynak Denemesi | Açıklayıcı | ChromeStatus.com girişi

Medya önizlemelerinin kapsamı dışında kalmayı seçme

Bu ters kaynak denemesi, siteleri Medya Önizlemeleri'nin lansmanından hariç tutar.

Chrome, web siteleri kamera ve mikrofon izni istediğinde kamera ve mikrofon girişinin anlık önizlemelerini gösterir. Bunlar, sitenin sayfa bilgileri bölümünde de gösterilir.

Ayrıca, site getUserMedia() aracılığıyla belirli bir cihaz istemediği sürece birden fazla cihazı olan kullanıcılar, izin istendiğinde kamera ve mikrofon seçebilir.

Kaynak denemesi | Hata izleme #330762482 | ChromeStatus.com girişi

FedCM: Continuation API, Parameters API, Fields API, birden fazla configURL, özel hesap etiketleri

Geliştiriciler, yetkilendirme içerebilen bir masaüstü FedCM özellikleri paketi için kaynak denemesine katılmaya başlayabilir. Paket; FedCM Continuation API, Parameter API, Fields API, birden fazla configURL ve özel hesap etiketlerinden oluşur. Bu sayede, IdP tarafından sağlanan bir izin iletişim kutusunu içeren OAuth yetkilendirme akışına benzer bir deneyim sunulur.

Hata izleme #40262526 | ChromeStatus.com girişi

Sayfaya Yerleştirilmiş İzin Kontrolü

İzin akışıyla etkileşim kuran yeni bir HTML öğesi sağlayın.

İzin istemi şu anda kullanıcı aracısının kullanıcının niyetiyle ilgili güçlü bir sinyali olmadan doğrudan JavaScript'ten tetikleniyor. Kullanıcının izin akışını tetiklemek için kullandığı bir içerik içi öğenin bulunması, kullanıcılar için izin istemi kullanıcı deneyimini iyileştirir ve sitelerin "reddedildi" izin durumundan kurtulmasını sağlar.

ChromeStatus.com girişi

Kullanımdan kaldırmalar ve kaldırmalar

İçe aktarma onayı "assert" söz dizimini kullanımdan kaldırma ve silme

İçe aktarma özelliği söz diziminde yeni with anahtar kelimesi lehine assert anahtar kelimesinin desteği sonlandırıldı ve kaldırıldı.

Yani import m from 'foo' assert { type: 'json' } artık SyntaxError hatası verecek ve geliştiricilerin import m from 'foo' with { type: 'json' } değerine geçmesi gerekecek.

ChromeStatus.com girişi | Spesifikasyon

Daha fazla bilgi

Daha fazlasını mı arıyorsunuz? Şu ek kaynakları inceleyin.

Google Chrome'u indirin

Android, Masaüstü veya iOS için Chrome'u indirin.