Eerder dit jaar, in februari 2026, introduceerde Chrome 145 de native Split View , waarmee gebruikers tabbladen naast elkaar in hetzelfde venster kunnen bekijken en beheren. Hierdoor is het niet langer nodig om tools van derden te gebruiken voor het beheren van aparte vensters van het besturingssysteem. Hoewel gebruikers handmatig tabbladen kunnen toevoegen en verwijderen uit een Split View via de browserinstellingen, was het voor ontwikkelaars niet mogelijk om deze nieuwe tabbladindelingen programmatisch te beheren in Chrome-extensies.

We zijn verheugd de nieuwe Split View API aan te kondigen, beschikbaar vanaf Chrome 155! Deze nieuwe API is ontwikkeld in nauwe samenwerking met Mozilla en andere browserleveranciers in de WebExtensions Community Group en stelt extensies in staat om ingebouwde split views te detecteren, te creëren en te beheren.
Demo
Hoe het werkt
Voorheen waren extensies die naast elkaar weergaven van vensters mogelijk maakten afhankelijk van kwetsbare oplossingen zoals het aanpassen van de grootte van meerdere native vensters, het insluiten van pagina's in <iframe> -elementen of het gebruik van zijpanelen. Nu integreert de nieuwe Split View API direct met de Tabs API van Chrome, waardoor nieuwe mogelijkheden voor het beheren van tabbladindelingen beschikbaar komen.
Manifesteer machtigingen
De Split View API maakt deel uit van de namespace browser.tabs en vereist geen speciale machtigingen om te gebruiken.
Het identificeren van gesplitste meningen
Elk Tab object bevat een splitViewId eigenschap . Als het tabblad deel uitmaakt van een gesplitste weergave, deelt het een unieke identificatiecode met het bijbehorende tabblad; anders is de standaardwaarde splitViewId -1.
// 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);
Algemene beperkingen
Om twee tabbladen in een gesplitste weergave te kunnen combineren, moeten ze aan de volgende vereisten voldoen:
- Tabbladen moeten naast elkaar staan (of aangemaakt worden).
- Tabbladen mogen niet al in een gesplitste weergave staan.
- Tabbladen moeten dezelfde status hebben
pinned,windowIdengroupId.
Omgekeerd behouden twee tabbladen, wanneer ze niet gesplitst zijn, dezelfde pinned status, windowId en groupId , evenals hun relatieve positionering ten opzichte van elkaar.
Gesplitste weergaven maken
Er zijn twee manieren waarop een extensie een nieuwe gesplitste weergave kan creëren:
- Maak een nieuw tabblad aan dat wordt gesplitst met een bestaand tabblad met behulp van de nieuwe parameter
splitWithTabIdinbrowser.tabs.create. - Combineer twee bestaande tabbladen met de nieuwe
browser.tabs.createSplit-methode.
Voorbeelden
Je kunt een nieuw tabblad maken met behulp van splitWithTabId om het te splitsen met een bestaand tabblad.
await browser.tabs.create({splitWithTabId: existingTab.id});
Standaard wordt het nieuwe tabblad rechts van het bestaande tabblad aangemaakt.
Om een nieuw tabblad links van het bestaande tabblad te maken, stelt u de index in op de index van dat tabblad:
await browser.tabs.create({splitWithTabId: existingTab.id, index: existingTab.index});
Je kunt ook een nieuwe gesplitste weergave maken door twee bestaande tabbladen te combineren.
await browser.tabs.createSplit([existingTab1.id, existingTab2.id]);
Niet-splitsende gesplitste weergaven
Om een gesplitste weergave in twee onafhankelijke tabbladen te splitsen, kan een extensie de nieuwe methode browser.tabs.unsplit gebruiken.
const splitViewId = browser.tabs.createSplit([tab1.id, tab2.id]);
// Unsplitting the split view into two independent tabs
await browser.tabs.unsplit(splitViewId);
Leer meer
We hopen dat deze nieuwe functionaliteit de productiviteit van uw extensies aanzienlijk zal verhogen. Om aan de slag te gaan met het bouwen van extensies met split-view-functionaliteit, raadpleegt u de Tabs API- documentatie. Als u vragen heeft of hulp nodig heeft met de Split View API, kunt u terecht bij de Chromium-extensies Google Group.
Veel plezier met splitsen!