Расширьте возможности расширений для многозадачности с помощью нового API для разделенного экрана вкладок.

Ань Мак
Anh Mac

В начале этого года, в феврале 2026 года, в Chrome 145 была представлена ​​встроенная функция Split View , которая позволяет пользователям просматривать и управлять вкладками рядом друг с другом в одном окне, устраняя необходимость в сторонних инструментах для управления отдельными окнами операционной системы. Хотя пользователи могут вручную добавлять и удалять вкладки в режиме разделенного экрана с помощью элементов управления браузера, разработчики не могли программно управлять этими новыми макетами вкладок в расширениях Chrome.

Разделенный экран в Chrome.
Функция разделенного экрана в Chrome позволяет пользователям управлять вкладками, расположенными рядом друг с другом.

Мы рады объявить о новом API для разделенного экрана, доступном начиная с Chrome версии 155! Разработанный в тесном сотрудничестве с Mozilla и другими разработчиками браузеров в рамках сообщества WebExtensions, этот новый API позволяет расширениям обнаруживать, создавать и управлять встроенными режимами разделенного экрана.

Демо

Как это работает

Ранее расширения, создающие интерфейсы с параллельным отображением, полагались на ненадежные обходные пути, такие как изменение размера нескольких окон, встраивание страниц в элементы <iframe> или использование боковых панелей. Теперь новый API Split View напрямую интегрируется с API вкладок Chrome, открывая новые возможности управления расположением вкладок.

Манифест разрешений

API для режима разделенного экрана является частью пространства имен browser.tabs , и для его использования не требуется никаких разрешений.

Выявление разделенных представлений

Каждый объект Tab содержит свойство splitViewId . Если вкладка является частью разделенного представления, она имеет тот же уникальный идентификатор, что и соответствующая ей вкладка; в противном случае, значение 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);

Общие ограничения

Для того чтобы две вкладки могли объединиться в режиме разделенного экрана, они должны соответствовать следующим требованиям:

  1. Вкладки должны располагаться (или создаваться) рядом друг с другом.
  2. Вкладки не должны быть уже в режиме разделенного экрана.
  3. Вкладки должны иметь одинаковое состояние pinned , windowId и groupId .

И наоборот, если две вкладки не разделены, они сохранят те же состояния pinned , windowId , groupId а также относительное расположение друг относительно друга.

Создание разделенных экранов

Расширение может создать новый режим разделенного экрана двумя способами:

  1. Создайте новую вкладку, которая будет разделена с помощью существующей вкладки, используя новый параметр splitWithTabId в browser.tabs.create .
  2. Соедините две существующие вкладки с помощью нового метода browser.tabs.createSplit .

Примеры

Вы можете создать новую вкладку, используя splitWithTabId , чтобы разделить ее с помощью существующей вкладки.

await browser.tabs.create({splitWithTabId: existingTab.id});

По умолчанию новая вкладка будет создана справа от существующей.

Чтобы создать новую вкладку слева от существующей, задайте индекс, равный индексу этой вкладки:

  await browser.tabs.create({splitWithTabId: existingTab.id, index: existingTab.index});

Также можно создать новый режим разделенного экрана, объединив две существующие вкладки.

  await browser.tabs.createSplit([existingTab1.id, existingTab2.id]);

Нераздельные разделенные изображения

Чтобы разделить разделенное окно на две независимые вкладки, расширение может использовать новый метод browser.tabs.unsplit .

const splitViewId = browser.tabs.createSplit([tab1.id, tab2.id]);
// Unsplitting the split view into two independent tabs
await browser.tabs.unsplit(splitViewId);

Узнать больше

Мы надеемся, что эта новая функция значительно повысит производительность ваших расширений. Чтобы начать создавать расширения с возможностью разделенного экрана, ознакомьтесь с документацией по API вкладок . Если у вас возникнут вопросы или потребуется помощь по API разделенного экрана, посетите группу Google по расширениям Chromium .

Удачных расставаний!