الإصدار التجريبي من Chrome 122

تنطبق التغييرات التالية على أحدث إصدار تجريبي من Chrome، ما لم يُذكر خلاف ذلك. إصدار القناة لأنظمة التشغيل Android وChromeOS وLinux وmacOS وWindows. مزيد من المعلومات عن الميزات المذكورة هنا من خلال الروابط المتوفرة أو من القائمة على ChromeStatus.com. يتوفّر Chrome 122 كإصدار تجريبي اعتبارًا من 24 كانون الثاني (يناير) 2024. يمكنك تنزيل آخر الأخبار على Google.com لجهاز سطح المكتب أو في "متجر Google Play" على أجهزة Android

CSS

يوفّر هذا الإصدار ثلاث ميزات CSS جديدة.

لا تتطابق طلبات البحث في @عنصر CSS مع الميزات غير المتوافقة.

لن تختار أدوات اختيار @container التي تحتوي على طلبات بحث غير متوافقة أيًّا منها مطلقًا حاويات، مما يعني أنها لن تتطابق أبدًا.

هذا يعني أن هذا الاستعلام لن يطابق أي حاوية حتى لو كانت هناك أيضًا حجم الحاوية التي تتطابق مع طلب البحث للعرض. على سبيل المثال، الاستعلام التالي لن تتطابق أبدًا بسبب الميزة غير المعروفة:

@container (width > 0px) or (unknown) {}

هذا تغيير حديث على المواصفات لتجنّب التوافق مع معايير واجهة برمجة التطبيقات المشكلات.

العنصر الزائف ::backdrop في CSS المكتسب من العنصر المنشأ

العنصر الزائف ::backdrop المستخدم للتوريث من القيم الأولية. هذا يعني تعذَّر على ::backdrop استخدام قيم الخصائص المخصصة ما لم يتم تحديدها مباشرةً في إلى قاعدة ::backdrop. وقد تغيرت المواصفات الآن بحيث أصبحت السمة ::backdrop يكتسب من العنصر المصدر، فإن هذا التغيير يجعل Chrome تطابق التنفيذ مع المواصفات الجديدة.

شروط supports() في خدمة مقارنة الأسعار (CSS) لـ @import

يقبل @import الآن شرط supports(). إذا كان الشرط supports() غير متطابق، لن يتم جلب عملية الاستيراد.

@import "scroll-driven-animations.css" supports(animation-timeline: auto);

استعلامات الميزة المراد وضعها داخل supports() هي نفسها الاستعلامات المستخدمة مع @supports

واجهات برمجة تطبيقات الويب

واجهة برمجة تطبيقات Async Clipboard: قراءة محتوى HTML الذي لم يتم تصحيحه

يؤدي هذا الإجراء إلى إضافة unsanitized. في الطريقة read() للحصول على تنسيق HTML لم يتم تصحيحه. ما لم يتم رصد مواقع إلكترونية تضمين هذه السمة، سيتم تصحيح القراءة من الحافظة.

بشكل تلقائي، عند قراءة text/html أنواع MIME باستخدام واجهة برمجة التطبيقات غير المتزامنة، تم استدعاء sanitizer لإزالة المحتوى من ترميز HTML لأسباب أمنية والمخاوف والأنماط المضمنة في HTML. يؤدي هذا إلى وجود حمولة HTML كبيرة وفقدان دقة محتوى HTML عند قراءته من قِبل مطوري الويب أو تطبيقات الأجهزة الجوّالة.

عدم حذف عناصر نوع الملف في dataTransfer.clearData()

يحدّث Chrome ليتوافق مع المواصفات ويحدّد أنّ clearData() لا تؤثر في كائنات "الملفات". يؤدي إلى حذف فقط الكائنات النوع text.

FedCM: قطع الاتصال

تسمح بإلغاء ربط حساب تسجيل الدخول الموحّد باستخدام الموقع الإلكتروني للجهة الموثوقة. من خلال واجهة برمجة التطبيقات قطع الاتصال، يمكن للجهات المعتمدة إرسال إشعار إلى موفِّر الهوية تم إلغاء ربط الحساب الذي تم استخدامه سابقًا، وبالتالي سيتم استخدام هذا الحساب مرة أخرى عند استخدام تسجيل الدخول الموحّد، سيتم التعامل معه كحساب جديد.

إلغاء حدث تمرير الماوس القابل للتشغيل التفاعلي في إطار iframe

جعل أهداف أحداث الماوس غير مرتبطة بإلغاء حدث تمرير الماوس عند يتم سحب المؤشر خارج إطار iframe. عند سحب الماوس خارج إطار iframe، ترسل جميع المتصفّحات (بما في ذلك Chrome) حدثَي mousemove وmouseup إلى iframe. ومع ذلك، إذا تم إلغاء حدث خفض الماوس، يحتفظ Chrome اليوم باستثناء WebKit القديم الذي يفيد بأن أحداث تحريك الماوس وتمرير الماوس يتم إرسالها إلى الواجهة الخارجية الإطار. أزالت WebKit هذا الاستثناء العام الماضي ولم تعرض Mozilla هذا في السنوات الأخيرة. ستزيل هذه الميزة استثناء Chrome فقط من أجل لهذه الحالة الخاصة.

تطبيقات مساعدة المكرّر

أدوات مساعدة المكرّر هي طرق جديدة على النموذج الأولي للمكرر للسماح بالاستخدام العام واستهلاك المكررات.

MessagePort.onclose

تغيير في Channel Messaging API يؤدي إلى إشعار أحد منافذ MessagePorts أن المنفذ الآخر قد تم فصله. وهذا يعني أن close() يسمى تلف المستند المستحق أو تجميع النفايات في المنفذ.

إضافات RTCRtpSender setparams() لطلب إنشاء إطار رئيسي

إضافة مَعلمة ثانية اختيارية إلى طلب RTCRtpSender.setParameters في WebRTC يمكن استخدامه لكي تطلب من برنامج الترميز المرتبط إنشاء إطار رئيسي.

ضبط الطرق

طرق التعيين هي طرق جديدة مثل الاتحاد والتقاطع الذي تتم إضافته إلى لغة JavaScript فئة Set مدمجة.

واجهة برمجة تطبيقات حزم التخزين

تتيح حِزم التخزين للمواقع الإلكترونية تنظيم. البيانات على الجهاز إلى "مجموعات" منفصلة، مما يسمح لوكلاء المستخدم بإخراج وتجميع البيانات بشكل مستقل عن تلك الموجودة في مجموعات أخرى، وتفعيل المواقع إلى إدارة البيانات المرتبطة دلاليًا بشكل هندسي. يمكن لكل حزمة تخزين يحتوي على بيانات مرتبطة بواجهات برمجة تطبيقات التخزين المعمول بها مثل IndexedDB ذاكرة التخزين المؤقت.

عنوان URLPattern: hasRegExpGroups

السماح بالتحقق مما إذا كان URLPattern يستخدم واحدًا أو أكثر من رموز ECMAScript العادية وبالتالي قد لا تكون مناسبة للاستخدام في الحالات التي محرك ECMAScript غير متاح (مثل بعض واجهات برمجة التطبيقات المخطَّط لها القادمة). بعبارة أخرى، يعكس هذا شيئًا يمكن للمطورين معرفته على أي حال من وفحص النمط، ولكن إمكانية الوصول إلى تنفيذ UA لهذا التحقق يجعل ذلك أكثر وضوحًا.

مساحة التخزين المؤقتة لرسم WebGL

يتيح WebGL العرض في زخارف وعرض احتياطي للعديد من وحدات البكسل المختلفة والتنسيقات. على سبيل المثال، 8 بت، النقطة العائمة، بترميز sRGB.

المخزن المؤقت للرسم لـ WebGL (المخزن المؤقت الذي يتم تمريره إلى المكون) هو 8 بت تلقائيًا. تسمح ميزة drawBufferStorage لـ WebGL بتهيئة pixel الخاص بهذا المخزن المؤقت للرسم، ما يتيح للمطوّرين إجراء ما يلي.

  • تجنَّب استخدام نسخة إضافية عند تحويل العرض إلى الرسم التلقائي تنسيق بكسل المخزن المؤقت.
  • ارسم محتوى بدقة تزيد عن 8 بتات.

تتيح الميزة الأخيرة استخدام العديد من التطبيقات الإضافية:

  • محتوى سلسلة ألوان واسعة جدًا بدون فقدان الدقة.
  • تطبيقات طبية تتطلب دقة أكبر من 8 بت.
  • تطبيقات النطاق العالي الديناميكية (عند توفّرها)

تغليف المفتاح X25519Kyber768 لبروتوكول أمان طبقة النقل (TLS)

حماية زيارات بروتوكول أمان طبقة النقل (TLS) الحالية في Chrome من تحليل التشفير الكمي في المستقبل من خلال نشر خوارزمية اتفاق المفتاح المقاوم للكم Kyber768. هذا هو مفتاح مختلط X25519 + Kyber768 على أساس معيار مجموعة مهندسي شبكة الإنترنت (IETF). هذا النمط وتحديدها وإطلاقها تقع خارج نطاق W3C. ستكون هذه الاتفاقية الرئيسية كتشفير TLS، ويجب أن تكون شفافة للمستخدمين.

مراحل التجربة والتقييم قيد التقدم

في الإصدار 122 من Chrome، يمكنك تفعيل المصدر الجديد التالي: الفترات التجريبية.

إضافات نطاق تطبيقات الويب

لا يمكن تحديد نطاق تطبيق الويب (المحدّد من خلال حقل النطاق) إلا باستخدام مسار من مصدر واحد. ويُستخدم لتحديد ما إذا كانت نافذة التطبيق الحالية المستند جزء من التطبيق. يحدد أيضًا عناوين URL المسموح بها في أعضاء البيان الآخرين.

باستخدام scope_extensions، يمكن للمطوّرين القدرة على توسيع سلوكيات التطبيقات لتشمل مصادر أخرى إذا كانت هناك اتفاقية بين المصدر الأساسي لتطبيق الويب والمصادر المرتبطة به

التسجيل في مرحلة التجربة والتقييم في إضافات نطاق تطبيق الويب

تم التقاط عناصر التحكم في السطح

Captured Surface Control API للسماح لتطبيقات الويب بإنتاج أحداث مباشرة في علامة تبويب أو نافذة تم التقاطها، وقراءة أو كتابة مستوى التكبير/التصغير في علامة تبويب تم التقاطها.

سجِّل في مرحلة التجربة والتقييم في Captured Surface Control.