שיפור תוספים לריבוי משימות באמצעות ה-API החדש של תצוגה מפוצלת של כרטיסיות

Anh Mac
Anh Mac

בתחילת השנה, בפברואר 2026, בגרסה 145 של Chrome הושקה תצוגה מפוצלת מקורית, שמאפשרת למשתמשים לראות ולנהל כרטיסיות זו לצד זו באותו חלון, בלי להסתמך על כלים של צד שלישי לניהול חלונות נפרדים של מערכת ההפעלה. המשתמשים יכולים להוסיף ולהסיר כרטיסיות באופן ידני מתצוגה מפוצלת באמצעות אמצעי הבקרה של הדפדפן, אבל מפתחים לא יכולים לשלוט באופן פרוגרמטי בפריסות החדשות של הכרטיסיות בתוספי Chrome.

תצוגה מפוצלת ב-Chrome.
התצוגה המפוצלת ב-Chrome מאפשרת למשתמשים לנהל כרטיסיות זו לצד זו.

אנחנו שמחים להודיע על השקת Split View API חדש, שזמין החל מגרסה 155 של Chrome. ממשק ה-API החדש הזה פותח בשיתוף פעולה הדוק עם Mozilla וספקי דפדפנים אחרים בקבוצת הקהילה WebExtensions, והוא מאפשר לתוספים לזהות, ליצור ולנהל תצוגות מפוצלות מובנות.

הדגמה (דמו)

איך זה עובד

בעבר, תוספים שיוצרים חוויות שימוש זו לצד זו הסתמכו על פתרונות עקיפים לא אמינים, כמו שינוי הגודל של כמה חלונות מקוריים, הטמעה של דפים ברכיבי <iframe> או שימוש בחלוניות צדדיות. עכשיו, ה-API החדש של התצוגה המפוצלת משולב ישירות עם Tabs API של 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 extensions.

בהצלחה בפיצול!