גרסה 126 של Chrome

תאריך השקה יציב: 11 ביוני 2024

אם לא צוין אחרת, השינויים הבאים חלים על הגרסה היציבה של Chrome 126 ל-Android, ל-ChromeOS, ל-Linux, ל-macOS ול-Windows.

CSS

מעברים בין תצוגות של מסמכים שונים בניווטים ממקור זהה

בעבר, הייתם צריכים ליצור מחדש ארכיטקטורה של האתר ל-SPA כדי להשתמש ב-View מעברים API. הם לא נספרים כך יותר. מעברים מתצוגה מופעלים עכשיו כברירת מחדל לניווטים מאותו מקור. אפשר ליצור מעבר תצוגה בין שני מסמכים שונים שהם אותו מקור.

כדי לאפשר מעבר בין תצוגות של מסמכים שונים, צריך להביע הסכמה לשני הצדדים. כדי לעשות את זה, צריך להשתמש בכלל @view-transition ב-@ ולהגדיר את התיאור של navigation כ-auto.

@view-transition {
  navigation: auto;
}

מעברים בין תצוגות מסמכים משתמשים באותם אבני בניין ועקרונות כמו מעברים בין תצוגות באותו מסמך. רכיבים שהופעלה בהם האפשרות view-transition-name מתועדים, ואפשר להתאים אישית את האנימציות באמצעות אנימציות CSS.

מעברים חלקים באמצעות View עוברים API | באג מעקב מס' 1372584 | רשומת ChromeStatus.com | מפרט

ממשקי API לאינטרנט

תוסף טריגר ל-Gamepad API

הרחבת הממשק של GamepadHapticActuator כדי לחשוף את יכולות הטריגרים (trigger-rumble) באינטרנט לגיימפאד תואם. התוסף הזה מאפשר לאפליקציות אינטרנט לנצל את ה-Gamepad API כדי לרטוט גם את הטריגרים של מכשירי בקר משחקים שמצוידים בפונקציונליות הזו.

באג מס' 40834175 במעקב | רשומה של ChromeStatus.com | מפרט

אפליקציות אינטרנט בכרטיסיות של ChromeOS

לאפליקציות PWA בחלון עצמאי אפשר לפתוח רק דף אחד בכל פעם. חלק מהאפליקציות מצפים שהמשתמשים יפתחו דפים רבים בו-זמנית. במצב כרטיסיות, רצועת כרטיסיות לאפליקציות אינטרנט עצמאיות ב-ChromeOS מאפשרת לפתוח כמה כרטיסיות בבת אחת.

התכונה מוסיפה מצב תצוגה חדש של "tabbed" ושדה מניפסט חדש כדי לאפשר התאמות אישיות בשורת הכרטיסיות.

באג מעקב מס' 40598974 | רשומה של ChromeStatus.com | מפרט

שיטת toJSON() עבור GeolocationCoordinates ו-GeolocationPosition

הוספת methods של .toJSON() לממשקים GeolocationCoordinates ו-GeolocationPosition. כך אפשר לבצע סריאליזציה לאובייקטים האלה באמצעות JSON.stringify().

רשומה של ChromeStatus.com

ממשק-על של WebGLObject Web IDL

התכונה הזו חושפת את הסוג WebGLObject באותם הקשרים שבהם WebGL API נחשף – ב-thread הראשי ובעובדים.

רשומת ChromeStatus.com | מפרט

הפעלה מחדש של ה-API של CloseWatcher וסגירת בקשות עבור <dialog> ו-popover=""

ה-API של CloseWatcher מאפשר טיפול בבקשות סגירה, כמו המקש ESC בפלטפורמות מחשב, או תנועת החזרה או לחצן החזרה ב-Android, באופן אחיד. התכונה הזו נשלחה במקור ב-Chrome 120, אבל הושבתה בגלל אינטראקציה לא צפויה עם <dialog>. הוא הופעל מחדש ב-Chrome 126 אחרי כמה שיפורים בהתנהגות שלו כדי למזער את הבעיות שמופיעות בו.

הדגמה | באג מעקב מס' 1171318 | רשומת ChromeStatus.com

Attribution Reporting API: המדיניות לגבי הגורם המפנה בבקשות attributionsrc

בקשות של attributionsrc מטופלות כמו למשאבי משנה אחרים בדף.

בעבר, כשה-API הופעל באמצעות שיוך attributionsrc כחלק מרכיבי HTML שונים (כמו <img>, <script>, <a> או window.open), הוא מתעלם ממאפיין המדיניות של הגורם המפנה ברמת המשאב שמוגדר ברכיב <html>.

בעקבות השינוי הזה, בקשת attributionsrc תחיל עכשיו את אותה מדיניות לגורם מפנה ברמת המשאב שהוגדרה ב-<img>, ב-<script>, ב-<a> או ב-window.open.

זה מאפשר לטכנולוגיות הפרסום שליטה רבה יותר אם הם רוצים להגביל יותר או פחות את פרטי הגורם המפנה בבקשות attributionsrc.

רשומה של ChromeStatus.com

מדיה

תמיכה בקונטיינר MP4 ב-MediaRecorder

הוספת תמיכה במיזוג אודיו ווידאו לתוך קונטיינרים של MP4 באמצעות MediaRecorder.

MediaRecorder | ערך ChromeStatus.com | מפרט

הפרמטרים signal ו-application של OpusEncoderConfig

הפרמטרים OpusEncoderConfig.signal ו-OpusEncoderConfig.application ממופים ישירות להטמעה של כפתורי מקודד ספציפיים. המפתחות האלה מאפשרים לכותבי האתרים לספק רמזים לגבי סוג הנתונים שמקודדים, ואיזה הקשר נעשה בנתונים.

signal יכול להיות אחד מהערכים "auto", "music", "voice". הוא מגדיר את המקודד כך להניב את הביצועים הטובים ביותר בקידוד של סוג הנתונים שצוין. application יכול להיות אחד מהערכים "voip", "audio" ו-"lowdelay". היא מגדירה את המקודד כך שהעדפה של יכולת הדיבור תהיה תקינה, שחזור מהימן של הקלט המקורי או זמן אחזור מינימלי.

רשומת ChromeStatus.com | מפרט

JavaScript

התמיכה של visualViewport onscrollend

האירוע scrollend של JavaScript מופעל כדי לציין שפעולת גלילה הסתיימה.

הממשק visualViewport כולל handler של אירועים מסוג onscrollend שצריך להפעיל כשפעולת גלילה ב-visualViewport מסתיימת. ב-Chrome כבר יש תמיכה בהוספת פונקציות event listener בקצה הגלילה דרך visualViewport.addEventListener("scrollend"). כך אפשר גם להוסיף האזנה לאירועים באמצעות visualViewport.onscrollend.

באג מס' 325307785 במעקב | רשומה של ChromeStatus.com

פרטיות

יישור עם navigator.cookieEnabled עם המפרט

navigator.cookieEnabled מציין כרגע אם "סוכן המשתמש מנסה לטפל בקובצי cookie" בהקשר נתון. שינוי ב-Chrome: תהליך המשלוח במסגרת ההוצאה משימוש של קובצי Cookie של צד שלישי (3PCD), יגרום לשינוי הזה לציין אם תיתכן גישה לקובצי Cookie ללא חלוקת משנה (וכתוצאה מכך היא תחזיר את הערך FALSE ברוב מסגרות ה-iframe של האתרים השונים). עלינו לשחזר את ההתנהגות הקודמת של navigator.cookieEnabled שצוינה רק אם קובצי cookie הופעלו או הושבתו באתר, ולהסתמך על הפונקציה document.hasStorageAccess של ספקים שונים כדי לציין אם ניתן לגשת לקובצי cookie ללא חלוקה למחיצות.

באג מס' 335553590 במעקב | רשומה של ChromeStatus.com | מפרט

נגישות

תמיכה במסגרת הנגישות לאוטומציה של ממשק המשתמש ב-Windows

אפליקציות מסייעות מודרניות ב-Microsoft Windows משתמשות במסגרת הנגישות לאוטומציה של ממשק המשתמש של הפלטפורמה כדי לפעול באופן הדדי עם ממשקי משתמש של אפליקציות אחרות. עד עכשיו Chromium תמך בגרסה הישנה של Microsoft Active Accessibility (MSAA) וב-IAccessible2 (IA2) למטרה הזו, והיא גרמה לבעיות בכלי הנגישות ב-Windows.

כדי לפתור את הבעיה, Microsoft עבדה עם צוות Chrome כדי לתמוך ישירות ב-framework של אוטומציה של ממשק המשתמש (UIA) ב-Windows, כדי שכלי הנגישות יוכלו לתקשר עם הדפדפן בקלות רבה יותר. אנחנו נתחיל השקה הדרגתית לרמה יציבה, החל מגרסה 126 של Chrome. כך התכונה Voice Access תוכל לפעול בכל הדפדפנים שמבוססים על Chromium ותשפר את חוויית המשתמש בכל כלי הנגישות שמבוססים על UIA, כמו 'קריין' ו'זכוכית מגדלת'.

חדש: תמיכה ב-UIA ל-Windows

גרסאות מקור חדשות לניסיון

FedCM כאות אמון ל-Storage Access API

התאמה בין ממשקי ה-API של FedCM ו-Storage Access על ידי מתן סיבה תקפה ל-FedCM לאישור אוטומטי של בקשת גישה לאחסון.

כשמשתמש מעניק הרשאה לשימוש בזהות שלו עם ספק זהויות (IdP) של צד שלישי בגורם נסמך (RP), ספקי IdP רבים נדרשים להשתמש בקובצי cookie של צד שלישי כדי לפעול בצורה תקינה ומאובטחת. המטרה של ההצעה הזו היא למלא את הדרישה הזו באופן פרטי ומאובטח באמצעות עדכון בדיקות ההרשאות של Storage Access API (SAA) כך שלא רק יקבלו את הענקת ההרשאה שמופיעה בהודעת הגישה לאחסון, אלא גם את הענקת ההרשאה שמופיעה בהודעת FedCM.

מאפיין מרכזי של המנגנון הזה מגביל את ההרשאה למקרים שבהם ה-RP אישר באופן מפורש באמצעות מדיניות ההרשאות של FedCM, אוכפים שליטה לפי פריים ב-RP ומונעים מעקב פסיבי של ה-IdP מעבר ליכולות שכבר מעניקות FedCM.

גרסת המקור לניסיון | הסבר | רשומת ChromeStatus.com

ביטול ההסכמה לתצוגה מקדימה של מדיה

גרסת המקור לניסיון ההפוך מחריגה אתרים מההשקה של 'תצוגות מקדימות של מדיה'.

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

בנוסף, משתמשים עם מספר מכשירים יוכלו לבחור מצלמה ומיקרופון בזמן בקשת ההרשאות, אלא אם האתר ביקש מכשיר ספציפי דרך getUserMedia().

גרסת מקור לניסיון | באג מעקב מס' 330762482 | רשומה של ChromeStatus.com

FedCM: ממשק API להמשיך, Parameters API, Fields API, כתובות URL מרובות, תוויות חשבון מותאמות אישית

המפתחים יכולים להתחיל להשתתף בגרסת המקור לניסיון של חבילת תכונות של FedCM למחשב שולחני שיכולות לכלול הרשאה. החבילה מורכבת מ-FedCM Continuation API, Parameter API, Fields API, Multiple configURLs ו-Custom Labels Labels. כך מתאפשרת חוויה דמוית תהליך הרשאה ב-OAuth, שבה מופיעה תיבת דו-שיח עם הרשאה מה-IdP.

באג מס' 40262526 במעקב | רשומה של ChromeStatus.com

בקרת הרשאות מוטמעות בדף

מספקים רכיב HTML חדש שמקיים אינטראקציה עם זרימת ההרשאות.

הבקשה להרשאה מופעלת כרגע ישירות מ-JavaScript, מבלי שלסוכן המשתמש יהיה אות ברור לכוונת המשתמש. רכיב בתוכן שהמשתמש משתמש בו כדי להפעיל את תהליך ההרשאה מאפשר לשפר את חוויית המשתמש של בקשת ההרשאה, וגם נתיב שחזור ממצב ההרשאה 'נדחתה' לאתרים.

רשומה של ChromeStatus.com

הוצאה משימוש והסרות

קידוד והסרה של תחביר טענת נכוֹנוּת של טענת נכוֹנוּת (assertion) של ייבוא

להוציא משימוש ולהסיר את מילת המפתח assert לטובת מילת המפתח החדשה with בתחביר של מאפייני הייבוא.

כלומר, הפקודה import m from 'foo' assert { type: 'json' } תקפיץ עכשיו את השגיאה SyntaxError והמפתחים צריכים לשנות ל-import m from 'foo' with { type: 'json' }.

רשומת ChromeStatus.com | מפרט

קריאה נוספת

רוצה עוד? תוכלו לעיין במקורות המידע הנוספים.

הורדת Google Chrome

אפשר להוריד את Chrome ל-Android, למחשב או ל-iOS.