Yeni Sekmeleri Bölünmüş Görünüm API'si ile çoklu görev uzantılarını geliştirme

Anh Mac
Anh Mac Software Engineer

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ü kullanıma sundu. Bu özellik sayesinde, ayrı işletim sistemi pencerelerini yönetmek için üçüncü taraf araçlara güvenmek gerekmiyor. Kullanıcılar, tarayıcı kontrolleri aracılığıyla bölünmüş görünümden sekmeleri manuel olarak ekleyip kaldırabilirken geliştiriciler, Chrome uzantılarında bu yeni sekme düzenlerini programatik olarak kontrol edemiyordu.

Chrome'da bölünmüş görünüm.
Chrome'daki bölünmüş görünüm, kullanıcıların sekmeleri yan yana yönetmesine olanak tanır.

Chrome 155'ten itibaren kullanılabilecek 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önetim özelliklerini etkinleştirmek 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:

  1. Sekmeler birbirine bitişik olmalı (veya bitişik oluşturulmalı)
  2. Sekmeler, bölünmüş görünümde olmamalıdır.
  3. Sekmeler aynı pinned, windowId ve groupId durumuna sahip olmalıdır.

Aksine, iki sekme ayrılmadığında birbirlerine göre konumlandırmalarıyla birlikte aynı pinned, windowId, groupId durumlarını korurlar.

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:

  1. browser.tabs.create içinde yeni splitWithTabId parametresini kullanarak mevcut bir sekmeyle bölünecek yeni bir sekme oluşturun.
  2. Mevcut iki sekmeyi yeni browser.tabs.createSplit yöntemiyle eşleyin.

Örnekler

Mevcut bir sekmeyle bölmek için splitWithTabId simgesini kullanarak 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 ayırma

Bir uzantı, bölünmüş görünümü iki bağımsız sekmeye ayırmak için yeni 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 belgelerini inceleyin. 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!