אם לא צוין אחרת, השינויים הבאים חלים על הגרסה החדשה ביותר של ערוץ הבטא של Chrome ל-Android, ל-ChromeOS, ל-Linux, ל-macOS ול-Windows. אפשר לקבל מידע נוסף על התכונות שמפורטות כאן בקישורים שסופקו או ברשימה בכתובת ChromeStatus.com. גרסת הבטא של Chrome 122 היא החל מ-24 בינואר 2024. ניתן להוריד את הגרסה העדכנית ביותר מ-Google.com למחשב או מחנות Google Play ל-Android.
CSS
בגרסה הזו נוספו שלוש תכונות CSS חדשות.
שאילתות @container של CSS עם תכונות לא נתמכות לעולם לא תואמות
סלקטורים של @container
שמכילים שאילתות לא נתמכות אף פעם לא יבחרו קונטיינרים, כלומר הם אף פעם לא יתאימו.
המשמעות היא שהשאילתה הזו אף פעם לא תתאים לאף מאגר תגים, גם אם קיים מאגר בגודל שתואם לשאילתת הרוחב. לדוגמה, השאילתה הבאה לעולם לא תתאים בגלל התכונה הלא ידועה:
@container (width > 0px) or (unknown) {}
זהו שינוי שבוצע לאחרונה במפרט כדי למנוע בעיות בתאימות להעברה.
פסאודו-רכיב ::backdrop
ב-CSS שעובר בירושה מהרכיב המקורי
הרכיב המדומה ::backdrop
המשמש לרשת מהערכים הראשוניים. כתוצאה מכך, ::backdrop
לא יכול להשתמש בערכים של מאפיינים מותאמים אישית אלא אם צוין ישירות בכלל ::backdrop
. המפרט השתנה כך ש-::backdrop
יורש מהרכיב המקורי. השינוי הזה גורם ליישום של Chrome להתאים למפרט החדש.
התנאים של שירות ה-CSS supports()
עבור @import
השדה @import
מקבל עכשיו תנאי supports()
. אם התנאי supports()
לא תואם, לא יתבצע אחזור של הייבוא.
@import "scroll-driven-animations.css" supports(animation-timeline: auto);
שאילתות התכונה שיש להזין בתוך supports()
זהות לאלו שבהן משתמשים עם @supports
ממשקי API לאינטרנט
Async Clipboard API: קריאת HTML לא מאובטח
מוסיף אפשרות unsanitized
ב-method read()
כדי לקבל פורמט HTML לא מאובטח. אלא אם אתרים
כוללים את המאפיין הזה, הקריאה מלוח העריכה תעבור חיטוי.
כברירת מחדל, כשקוראים סוגי MIME מסוג text/html
באמצעות ה-API האסינכרוני, ה-sanitier מופעל על מנת להסיר תוכן מתגי העיצוב של HTML בגלל בעיות אבטחה, והסגנונות מסומנים בתוך ה-HTML. המצב הזה מוביל למטען ייעודי (payload) גדול של HTML ולאובדן האיכות של תוכן HTML בזמן הקריאה על ידי מפתחי אתרים או אפליקציות לנייד.
לא למחוק אובייקטים מסוג File type ב-dataTransfer.clearData()
עדכון Chrome בהתאם spec, שבו מצוין ש-clearData()
לא משפיע על אובייקטים של קבצים. הפעולה הזו מוחקת רק את האובייקטים מסוג text
.
FedCM: ניתוק
מאפשרת ניתוק חשבון התחברות מאוחד באמצעות האתר של הצד הנסמך. באמצעות ה-API המתנתק, הצד הנסמך עשוי להודיע לספק הזהויות על כך שחשבון שהשתמשו בו בעבר מנותק עכשיו, ולכן כדי להשתמש שוב באותו חשבון עם התחברות מאוחדת צריך להתייחס לחשבון כאל חשבון חדש.
ביטול אירוע mousedown עם יכולת פעולה הדדית ב-iframe
כשגוררים את המצביע מחוץ ל-iframe, היעדים לאירועי העכבר לא משתנים בהתאם לביטול של אירוע mousedown. כשגוררים את העכבר מחוץ ל-iframe, כל הדפדפנים (כולל Chrome) שולחים את האירועים mousemove
ו-mouseup
ל-iframe. עם זאת, במקרה שאירוע mousedown מבוטל, כיום Chrome שומר על חריג ישן של WebKit שאירועי mousemove ו-mouseup נשלחים למסגרת החיצונית. החריגה הזו הוסרה על ידי WebKit בשנה שעברה, ו-Mozilla מעולם לא הציגה התנהגות זו בשנים האחרונות. התכונה הזו תסיר את החריג של Chrome בלבד במקרה המיוחד הזה.
עזרים לאיטרטור
כלים לעזרת איטרטור הם שיטות חדשות באב הטיפוס של האיטרטור, שמאפשרות שימוש כללי באיטרטורים וצריכה שלהם.
MessagePort.onclose
שינוי ב-Channel Messaging API, שמיידע את אחת מה-MessagePorts על כך שהיציאה השנייה נותקה. כלומר, מתבצעת קריאה ל-close()
, המסמך הושמד או שמתבצע איסוף אשפה.
תוספי RTCRtpSender setParameters() לבקשת יצירה של מסגרת מפתח
מוסיף פרמטר שני אופציונלי לקריאה RTCRtpSender.setParameters
של WebRTC, שניתן להשתמש בו כדי לבקש מהמקודד המשויך ליצור מסגרת מפתח.
הגדרת שיטות
שיטות הגדרה הן שיטות חדשות, כמו איחוד והצטלבות, שמתווספות למחלקה Set
המובנית ב-JavaScript.
ממשק API של קטגוריות אחסון
קטגוריות אחסון מאפשרות לאתרים לארגן את הנתונים במכשיר ב "קטגוריות" נפרדות, וכך סוכני המשתמש יכולים להוציא את הנתונים המקובצים בנפרד מאלה שנמצאים בקטגוריות אחרות. בנוסף, האתרים יכולים לנהל נתונים שקשורים מבחינה סמנטית. כל קטגוריית אחסון יכולה להכיל נתונים המשויכים לממשקי API קיימים לאחסון, כמו IndexedDB ו-CacheStorage.
URLTemplate: hasRegExpGroups
מאפשרת לבדוק אם ב-URLPattern
נעשה שימוש בקבוצת ביטויים רגולריים אחת או יותר של ECMAScript, ולכן ייתכן שהיא לא מתאימה לשימוש במקרים שבהם מנוע ECMAScript לא זמין (למשל, ממשקי API מתוכננים מסוימים).
זה משקף את מה שהמפתחים יכולים לדעת בכל מקרה מבדיקת הדפוס, אבל הגישה להטמעה של הבדיקה הזו ב-UA היא פשוטה יותר.
WebGL PaintBufferStorage
WebGL מאפשר רינדור למרקמים ולמאגרי עיבוד נתונים של פורמטים רבים של פיקסלים. לדוגמה: 8 ביט, נקודה צפה (floating-point) וקידוד sRGB.
כברירת מחדל, מאגר הנתונים הזמני של WebGL (מאגר הנתונים הזמני שמועבר למרכיב) הוא 8 ביט. התכונה PaintBufferStorage מאפשרת ל-WebGL להגדיר את פורמט הפיקסל של מאגר הנתונים הזמני, וכך המפתחים יכולים לבצע את הפעולות הבאות.
- כדאי להימנע מעותק נוסף כשממירים את הרינדור לפורמט ברירת המחדל של פיקסל למאגר נתונים זמני.
- משרטטים תוכן עם דיוק של יותר מ-8 ביטים.
התכונה השנייה פותחת כמה יישומים נוספים:
- תוכן של מכלול צבעים רחב מאוד, ללא אובדן דיוק.
- אפליקציות רפואיות שדורשות דיוק של יותר מ-8 ביטים.
- אפליקציות עם טווח דינמי גבוה (כשזמינות).
אנקפסולציה של מפתח X25519Kyber768 ל-TLS
הגנה על התנועה הנוכחית ב-TLS ב-Chrome מפני קריפטוגרפיה קוונטית עתידית, באמצעות פריסת האלגוריתם Kyber768 העמיד להסכם מפתחות (Kyber768). זהו הסכם מפתחות היברידי X25519 + Kyber768 שמבוסס על תקן IETF. המפרט וההשקה האלה לא נכללים ב-W3C. הסכם המפתח הזה יופעל כצופן TLS, ועליו להיות שקוף כלפי המשתמשים.
גרסאות מקור לניסיון מתבצעות
ב-Chrome 122 אפשר להביע הסכמה לשימוש בגרסאות המקור לניסיון החדשות הבאות.
תוספי היקף לאפליקציות אינטרנט
ניתן להגדיר היקף של אפליקציית אינטרנט (שמוגדר בשדה ההיקף) רק באמצעות נתיב ממקור אחד. היא משמשת כדי לקבוע אם המסמך הנוכחי של חלון האפליקציה הוא חלק מהאפליקציה. היא גם קובעת אילו כתובות URL מותרות בחברי מניפסט אחרים.
באמצעות scope_extensions, המפתחים יכולים להרחיב את התנהגות האפליקציה כך שתכלול מקורות נוספים, אם יש הסכמה בין המקור הראשי של אפליקציית אינטרנט לבין המקורות המשויכים.
הרשמה לגרסת המקור לניסיון של תוספי היקף באפליקציות אינטרנט
בקרת פני שטח שנקלטה
Captured Surface Control API מאפשר לאפליקציות אינטרנט להפיק אירועי גלגל בכרטיסייה או בחלון שצולמו, ולקרוא או לכתוב את רמת הזום של כרטיסייה שצולמה.
הרשמה לתקופת הניסיון של גרסת המקור של 'בקרת פני השטח' לצילום.