Chrome 149 beta

Yayın tarihi: 6 Mayıs 2026

Aksi belirtilmediği sürece aşağıdaki değişiklikler Android, ChromeOS, Linux, macOS ve Windows için en yeni Chrome beta kanalı sürümünde geçerlidir. Burada listelenen özellikler hakkında daha fazla bilgiyi verilen bağlantılardan veya ChromeStatus.com'daki listeden edinebilirsiniz. Chrome, 6 Mayıs 2026 itibarıyla beta sürümündedir. Masaüstü için Google.com'dan, Android için ise Google Play Store'dan en son sürümü indirebilirsiniz.

CSS ve kullanıcı arayüzü

Tablolar için açık kenarlık rengi UA stil sayfası kuralını kaldırma

Bu değişiklik, border-color: gray CSS kuralını <table> öğesinin UA stil sayfasından kaldırır.

HTML spesifikasyonunda bu kural yer almaz ve bu durum, kenarlıkların yanlış bir şekilde varsayılan olarak currentColor olmamasına neden olur. Ne Firefox ne de Webkit, UA stil sayfalarında bu gray kenarlık rengi kuralına sahip olmadığından birlikte çalışabilirlik sorunları ortaya çıkıyor.

shape-outside'da path() ve shape() desteği

CSS shape-outside özelliğinde path() ve shape() şekil işlevleri için destek ekler. Bu işlevler, geliştiricilerin dikdörtgen koordinatlarını kullanarak kayan hariç tutma şekilleri tanımlamasına olanak tanır.

shape-outside'da rect() ve xywh() desteği

CSS shape-outside özelliğinde rect() ve xywh() temel şekil işlevleri için destek ekler. Bu işlevler, geliştiricilerin dikdörtgen koordinatlarını kullanarak kayan öğe dışlama şekilleri tanımlamasına olanak tanır. Böylece Chrome, bu özelliği zaten destekleyen Firefox ve Safari ile uyumlu hale gelir.

Web uygulaması kapsamı sistem vurgu rengi

CSS anahtar kelimeleri için sistem vurgu rengine erişimi kısıtlar ve accent-color: auto yalnızca bir web uygulaması ve ilk profil bağlamı içinde olmasını sağlar.

AccentColor ve AccentColorText CSS anahtar kelimeleri, kullanıcının sistem renklerini web'de geniş çapta gösterirken önemli bir parmak izi oluşturma vektörü oluşturur. Bu nedenle, yalnızca yüklü web uygulaması bağlamlarında kullanılabilirler. accent-color: auto içeren form kontrolleri de bu özellik kullanıma sunulduğunda bu kapsamla eşleşir. Bu, sistem renkleriyle ilgili olarak geliştiricilerin ve kullanıcıların beklentilerini daha tutarlı hale getirir ve AccentColor[Text] için parmak izi kısıtlamalarıyla uyumludur.

Kullanıcı etkileşiminde metin taşmasını kırpma

Bir kullanıcı, text-overflow: ellipsis ayarlanmış metinle etkileşime geçtiğinde (düzenleme veya imleçle gezinme) metin geçici olarak üç noktadan kırpmaya geçer. Böylece kullanıcı, gizli taşma içeriğini görebilir ve bu içerikle etkileşime geçebilir. Bu özellik, düzenlenebilir ve düzenlenemez tüm öğeler için geçerlidir. Form kontrolleri (textarea, input) için bu davranış zaten desteklenmektedir.

CSS boşluk süslemeleri

CSS boşluk süslemeleri, çok sütunlu düzendeki column-rule'a benzer şekilde, kapsayıcı düzenlerdeki (ör. ızgara ve flexbox) boşlukları stilize etmenize olanak tanır. Bu özellik, ızgara ve esnek kutu düzenlerindeki boşlukları şekillendirmek için şu anda geçici çözümler kullanması gereken web geliştiriciler tarafından çok istenmektedir.

image-rendering: crisp-edges

image-rendering: crisp-edges, resmin kontrastı ve kenarları koruyacak, renkleri yumuşatmayacak veya bulanıklık oluşturmayacak şekilde ölçeklendirilmesi gerektiğini gösterir.

Kullanıcı işlemi sözde sınıfı üst katman sınırı

Bu özellik, CSS Seçiciler Düzey 4 spesifikasyonunda açıklanan davranışı temsil eder. Bu spesifikasyonda, :hover, :active ve :focus-within öğelerin üst öğeleriyle eşleştiği ancak yalnızca üst öğe zincirindeki ilk üst katman öğesine kadar eşleştiği belirtilir. Chromium'daki değişiklik, bu kısıtlamayı üst katman öğeleri için uygular.

Bu, aşağıdaki yapıda kullanıcı <button> öğesinin üzerine geldiğinde :hover sözde sınıfının <button> ve popover ile eşleşeceği ancak <main> öğesiyle eşleşmeyeceği anlamına gelir.

<main>
  <div popover>
    <button></button>
  </div>
</main>
<script>document.querySelector('[popover]').showPopover();</script>

Bu değişikliğin nedeni, genellikle üst katman öğelerinin görsel olarak üst öğeden bağlantısı kesilmiş bir konumda "başka bir yerde" oluşturulmasıdır. Bu nedenle, üst katman öğesinin üzerine gelindiğinde veya etkinleştirildiğinde üst öğenin stillerini değiştirmek genellikle mantıklı değildir.

Chromium'da gönderilen özelleştirilebilir select uygulaması, select ::picker() popover'ı için bu mantığı sabit kodlanmış olarak içerir. Bu özel durum mantığı, bu özellik ile daha genel davranış lehine kaldırılıyor.

path-length CSS özelliği olarak desteklenir.

Bu değişiklik, mevcut SVG pathLength sunum özelliğiyle eşlenen yeni bir CSS özelliği olan path-length'yi kullanıma sunar. pathLength öğesini destekleyen SVG geometri öğeleri (<path>, <circle>, <rect>, <line>, <polyline>, <polygon> ve <ellipse> dahil) için geçerlidir.

pathLength öğesini CSS özelliği olarak kullanıma sunmak, yazarların bunu stil sayfalarında, satır içi stillerde ve animasyonlarda belirtmesine olanak tanır. Böylece, normal CSS basamaklandırmasına, özgüllüğe, geçişlere ve animasyonlara katılabilir. Bu özellik, <textPath> boyunca çizgi oluşturma ve metin konumlandırma dahil olmak üzere toplam yol uzunluğuna bağlı tüm hesaplamaları etkiler.

CSS bildirimleri, standart CSS öncelik kurallarına göre sunum özelliğini geçersiz kılar. path-length öğesinin başlangıç değeri, yazar tarafından sağlanan bir yol uzunluğunun olmadığını gösteren ve 0 gibi açık bir sayısal değerden farklı olan none'dir.

Özellik devre dışı bırakıldığında yalnızca mevcut özellik davranışı korunur.

Web API'leri

Intl.Locale.prototype.variants

Intl.Locale.prototype.variants öğesini TC39 önerisinde belirtildiği şekilde ekleyin ve Intl.Locale oluşturucusunda seçenek paketindeki "varyantları" TC39 dil kimliği güncellemesinde belirtildiği şekilde kabul edin. ECMA402'deki değişiklikler pull isteği 960'ta, test262'deki test kodu ise pull isteği 4474'te birleştirildi.

Programatik kaydırma sözleri

Web geliştiriciler şu anda programatik olarak yapılan sorunsuz kaydırma işleminin ne zaman tamamlandığını bilemiyor. Bu özellik, programatik kaydırma yöntemlerinin, kaydırma tamamlandığında kesinti durumuyla çözülen Promise nesneleri döndürmesi sorununa çözüm sunar.

Ödeme isteği: Ödeme işleyicilerin dahili hataları bildirmesine izin verme

Ödeme İsteği API'si ile erişilen ödeme işleyicilerin, "kullanıcı iptal etti" ve "dahili ödeme uygulaması hatası" için farklı hatalar döndürmesini sağlar. Bu, web geliştiricilerin kullanıcılar için daha iyi akışlar oluşturmasına olanak tanır. Örneğin, dahili bir uygulama hatası oluştuğunda akışı yeniden deneme veya farklı bir akışa geri dönme gibi seçenekler sunulabilir. Kullanıcı iptal etmek isterse akış düzgün bir şekilde durdurulur.

Web tabanlı ödeme işleyici API'si, PaymentRequestEvent.respondWith öğesine iletilen sözü reddetmek için kullandığı hataya bağlı olarak bu farkı belirtebilir. Söz OperationError ile reddedilirse PaymentRequest.show() yöntemi kullanılarak satıcıya "internal app error" (dahili uygulama hatası) (OperationError) döndürülür. Aksi takdirde "user cancel" (kullanıcı iptali) (AbortError) döndürülür.

Yerel uygulama ödeme işleyici altyapısı da benzer şekilde güncellenir ancak web API'leri kapsamı dışındadır.

TSF'de Windows dokunmatik klavyesi için autocorrect="off" karakterine uyun

HTML autocorrect özelliği, web yazarlarının <input>, <textarea> ve contenteditable ana makineleri dahil olmak üzere düzenlenebilir öğelerde kullanıcı girişine otomatik düzeltme uygulanıp uygulanmayacağını kontrol etmesine olanak tanır. Windows'da dokunmatik klavye bu özelliği yoksayar ve kelimeleri her zaman otomatik olarak düzeltir. Örneğin, autocorrect="off" içeren bir öğede "truf" yazıp boşluk bırakıldığında "truf " korunmak yerine "true " elde edilir. Bu özellik, odaklanılan düzenlenebilir öğede autocorrect="off" ayarlandığında Chrome'un TSF entegrasyonunun dokunmatik klavye otomatik düzeltmelerini algılamasını ve geri almasını sağlar.

bfcache girişinde WebSocket bağlantısını kesme

Etkin WebSocket bağlantıları artık bir sayfanın geri/ileri önbelleğe (bfcache) girmesini engellemiyor. Tarayıcı, dokümanı uygunsuz olarak işaretlemek yerine bfcache girişinde bağlantıları kapatarak etkin WebSocket'ler içeren sayfaların depolanmasına ve geri yüklenmesine olanak tanır.

Request.isReloadNavigation özelliği

Fetch API'nin Request arayüzüne salt okunur boolean özelliği isReloadNavigation eklendi. Bu özellik, mevcut gezinme isteğinin kullanıcı tarafından tetiklenen bir yeniden yükleme olarak başlatılıp başlatılmadığını (ör. yenileme düğmesi location.reload() veya history.go(0) kullanılarak) gösterir. Bu sinyal, öncelikli olarak bir hizmet çalışanının FetchEvent içindeki istek nesnesinde gösterilir.

Eklentilerde, çapraz kaynak ve kısıtlanmış iframe'lerde SVG filtrelerini devre dışı bırakma

Bu lansman, SVG filtrelerinin kaynaklar arası veya kısıtlanmış iframe'lere (ör. korumalı alan iframe'leri) ve yerleştirilmiş eklentilere (ör. PDF'ler) uygulanmasını engeller. Bir çerçeve veya eklenti SVG filtresi efektiyle boyandığında, SVG filtresi içermeyen en yüksek üst öğeyi bulmak için efekt ağacında gezinilir ve bunun yerine bu efekt uygulanır.

Yeni kaynak denemeleri

Chrome 149'da aşağıdaki yeni origin denemelerini etkinleştirebilirsiniz.

İzin politikası: focus-without-user-activation

Yerleştiricilere, focus-without-user-activation izin politikasıyla yerleştirilmiş içeriklerdeki programatik odak üzerinde kontrol imkanı verir. Politika bir çerçeve için reddedildiğinde, kullanıcı etkinleştirme tarafından tetiklenmediği sürece programatik odaklanma çağrıları (element.focus(), autofocus, window.focus(), dialog.showModal() ve popover odaklanma) engellenir. Tıklama veya sekme ile geçiş gibi kullanıcı tarafından başlatılan odaklanma hiçbir zaman etkilenmez.

Politika, Permissions-Policy HTTP yanıt başlığı veya iframe allow özelliği kullanılarak ayarlanabilir. Odaklanma yetkisi desteklenir: Odaklanmış bir üst çerçeve, alt çerçevede politika reddedilmiş olsa bile odağı programatik olarak alt iFrame'e geçirebilir. Bir çerçeve odaklandığında ise kendi alt ağacında odağı hareket ettirebilir.

Gamepad event-driven input API

Bu teklif, uygulamaların daha düşük gecikmeyle gamepad girişi almasını sağlayan yeni bir etkinliğe dayalı modelle Gamepad API'sini genişletir. Geliştiriciler, navigator.getGamepads() kullanarak sık sık yoklama yapmak yerine artık cihazdan yeni giriş verileri geldiğinde tetiklenen bir rawgamepadinputchange etkinliğini dinleyebilir. Bu sayede, özellikle gecikmeye duyarlı uygulamalarda daha hızlı yanıt veren giriş işleme sağlanır.

WebAssembly özel tanımlayıcıları

WebAssembly'nin, kaynak düzeyindeki türlerle ilişkili verileri yeni özel tanımlayıcı nesnelerinde daha verimli bir şekilde depolamasına olanak tanır. Bu özel tanımlayıcılar, kaynak düzeyindeki türün WebAssembly nesneleri için prototiplerle yapılandırılabilir. Bu sayede, yöntemlerin bir WebAssembly nesnesinin prototip zincirine yüklenmesine ve normal yöntem çağrısı söz dizimi kullanılarak doğrudan JavaScript'ten çağrılmasına olanak tanınır. Prototip ve yöntemler, içe aktarılan yerleşik bir işlev kullanılarak bildirimsel olarak yapılandırılabilir.