Bu yılın başlarında, Şubat 2026'da Chrome 145, kullanıcıların sekmeleri aynı pencerede yan yana görüntüleyip yönetebilmesini sağlayan yerel bölünmüş görünüm özelliğini kullanıma sundu. Bu özellik, ayrı işletim sistemi pencerelerini yönetmek için üçüncü taraf araçlara güvenme ihtiyacını ortadan kaldırıyor. Kullanıcılar, tarayıcı kontrolleri aracılığıyla bölünmüş görünümden sekmeleri manuel olarak ekleyip kaldırabilirken geliştiricilerin Chrome uzantılarında bu yeni sekme düzenlerini programatik olarak kontrol etmesi mümkün değildi.
Chrome 155'ten itibaren kullanıma sunulacak yeni Bölünmüş Görünüm API'sini duyurmaktan heyecan duyuyoruz. WebExtensions Community Group'taki Mozilla ve diğer tarayıcı satıcılarıyla yakın işbirliği içinde geliştirilen bu yeni API, uzantıların yerleşik bölünmüş görünümleri algılamasına, oluşturmasına ve yönetmesine olanak tanır.
Demo
İşleyiş şekli
Daha önce, yan yana deneyimler oluşturan uzantılar, birden fazla yerel pencereyi yeniden boyutlandırma, sayfaları <iframe> öğelerine yerleştirme veya yan panelleri kullanma gibi kırılgan geçici çözümlere dayanıyordu. Yeni Bölünmüş Görünüm API'si, yeni sekme düzeni yönetimi özelliklerini kullanıma sunmak için artık doğrudan Chrome'un Tabs API ile entegre ediliyor.
Manifest izinleri
Bölünmüş Görünüm API'si browser.tabs ad alanının bir parçasıdır ve kullanılmak için herhangi bir izin gerektirmez.
Bölünmüş görünümleri belirleme
Her Tab nesnesi bir splitViewId özelliği içerir.
Sekme bölünmüş görünümün bir parçasıysa eşlenmiş sekmesiyle benzersiz bir tanımlayıcıyı paylaşır. Aksi takdirde, splitViewId varsayılan olarak -1 olur.
// Querying all split views in the current windows
const tabs = await browser.tabs.query({ currentWindow: true });
const splitViews = tabs.map(tab => tab.splitViewId).filter(splitViewId => splitViewId !== -1);
Genel kısıtlamalar
İki sekmenin bölünmüş görünüme katılabilmesi için aşağıdaki koşulları karşılaması gerekir:
- Sekmeler birbirine bitişik olmalı (veya bitişik oluşturulmalıdır).
- Sekmeler bölünmüş görünümde olmamalıdır.
- Sekmeler aynı
pinned,windowIdvegroupIddurumuna sahip olmalıdır.
Aksine, iki sekme ayrılmadığında birbirlerine göre konumlarının yanı sıra aynı pinned,
windowId, groupId durumlarını korur.
Bölünmüş görünümler oluşturma
Bir uzantının yeni bir bölünmüş görünüm oluşturabileceği iki yöntem vardır:
browser.tabs.createiçinde yenisplitWithTabIdparametresini kullanarak mevcut bir sekmeyle bölünecek yeni bir sekme oluşturun.- Mevcut iki sekmeyi yeni
browser.tabs.createSplityöntemiyle eşleyin.
Örnekler
splitWithTabId simgesini kullanarak mevcut bir sekmeyle bölünmüş yeni bir sekme oluşturabilirsiniz.
await browser.tabs.create({splitWithTabId: existingTab.id});
Varsayılan olarak, yeni sekme mevcut sekmenin sağında oluşturulur.
Mevcut sekmenin solunda yeni bir sekme oluşturmak için dizini söz konusu sekmenin dizini olarak ayarlayın:
await browser.tabs.create({splitWithTabId: existingTab.id, index: existingTab.index});
Ayrıca, mevcut iki sekmeyi eşleştirerek yeni bir bölünmüş görünüm oluşturabilirsiniz.
await browser.tabs.createSplit([existingTab1.id, existingTab2.id]);
Bölünmüş görünümleri birleştirme
Bir uzantı, bölünmüş görünümü iki bağımsız sekmeye ayırmak için new browser.tabs.unsplit yöntemini kullanabilir.
const splitViewId = browser.tabs.createSplit([tab1.id, tab2.id]);
// Unsplitting the split view into two independent tabs
await browser.tabs.unsplit(splitViewId);
Daha fazla bilgi
Bu yeni özelliğin, uzantılarınız için daha verimli iş akışları oluşturmanıza yardımcı olacağını umuyoruz. Bölünmüş görünüm özelliklerine sahip uzantılar oluşturmaya başlamak için Tabs API belgelerine göz atın. Bölünmüş Görünüm API'si ile ilgili sorularınız varsa veya yardıma ihtiyacınız olursa Chromium uzantıları Google Grubu'nu ziyaret edin.
İyi bölmeler!