تحسين إضافات تعدد المهام باستخدام واجهة برمجة التطبيقات الجديدة "عرض علامات التبويب في وضع تقسيم الشاشة"

Anh Mac
Anh Mac Software Engineer

في فبراير 2026، طرح الإصدار 145 من Chrome ميزة "العرض المقسّم" المضمّنة التي تتيح للمستخدمين عرض علامات التبويب وإدارتها جنبًا إلى جنب في النافذة نفسها، ما يغني عن استخدام أدوات تابعة لجهات خارجية لإدارة نوافذ منفصلة لنظام التشغيل. على الرغم من أنّه يمكن للمستخدمين إضافة علامات تبويب وإزالتها يدويًا من طريقة العرض المقسّمة من خلال عناصر تحكّم المتصفّح، لم يكن بإمكان المطوّرين التحكّم آليًا في تخطيطات علامات التبويب الجديدة هذه في إضافات Chrome.

ميزة "تقسيم الشاشة" في Chrome
تتيح ميزة "تقسيم العرض" في Chrome للمستخدمين إدارة علامات التبويب جنبًا إلى جنب.

يسرّنا الإعلان عن إطلاق واجهة برمجة التطبيقات الجديدة "تقسيم العرض"، والتي ستتوفّر بدءًا من الإصدار 155 من Chrome. تم تطوير واجهة برمجة التطبيقات الجديدة هذه بالتعاون الوثيق مع Mozilla ومورّدي متصفّحات آخرين في مجموعة WebExtensions Community Group، وهي تتيح للإضافات رصد طرق العرض المقسّمة المضمّنة وإنشاؤها وإدارتها.

عرض توضيحي

آلية العمل

في السابق، كانت الإضافات التي توفّر تجارب متجاورة تعتمد على حلول بديلة غير مستقرة، مثل تغيير حجم نوافذ متعددة أصلية أو تضمين صفحات في عناصر <iframe> أو استخدام اللوحات الجانبية. أصبحت واجهة برمجة التطبيقات الجديدة "تقسيم العرض" تتكامل الآن مباشرةً مع واجهة برمجة التطبيقات الخاصة بعلامات التبويب في Chrome، ما يتيح إمكانات جديدة لإدارة تخطيط علامات التبويب.

أذونات البيان

تُعدّ واجهة برمجة التطبيقات Split View 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);

مزيد من المعلومات

نأمل أن تساهم هذه الإمكانية الجديدة في تعزيز سير العمل بشكل أكثر إنتاجية لإضافاتك. لبدء إنشاء إضافات تتضمّن ميزات العرض المقسّم، يمكنك الاطّلاع على مستندات Tabs API. إذا كانت لديك أي أسئلة أو كنت بحاجة إلى مساعدة بشأن Split View API، يُرجى الانتقال إلى مجموعة Google الخاصة بإضافات Chromium.

نتمنى لك تجربة تقسيم ممتعة.