Chrome 136

تاريخ الإصدار الثابت: 29 أبريل 2025

ما لم يُذكر خلاف ذلك، تنطبق التغييرات التالية على الإصدار 136 من Chrome في "القناة الثابتة" لنظام التشغيل Android وChromeOS وLinux وmacOS وWindows.

HTML وDOM

اللغات المتاحة في CanvasTextDrawingStyles

يقبل عنصر <canvas> DOM، مثل جميع عناصر DOM، سمة lang التي تُستخدَم لتحديد المعالجة الخاصة باللغة لاختيار الخط (عندما يكون للخطوط رموز خاصة باللغة المحلية). تلتزم المتصفّحات بهذه السمة. ومع ذلك، عند إنشاء OffscreenCanvas، لا تتوفّر طريقة لضبط معلومات اللغة، ما قد يؤدي إلى حالة تنتج فيها لوحة رسم خارج الشاشة نتيجة معروضة تختلف عن اللوحة التي يتم استخدام إخراجها فيها. تُضيف هذه الميزةسمة lang IDL إلى CanvasTextDrawingStyles لمنح المطوّرين التحكّم المباشر في لغة رسم النصوص والمقاييس.

تتبُّع الخطأ رقم 385006131 | إدخال ChromeStatus.com | المواصفات

CSS وواجهة المستخدم

سمة dynamic-range-limit

يتيح للصفحة الحد من الحد الأقصى للسطوع في محتوى النطاق العالي الديناميكية.

تتبُّع الخطأ رقم 1470298 | إدخال ChromeStatus.com | المواصفات

لمنع تسرُّب سجلّ تصفّح المستخدِم، يتمّ تصميم عناصر الربط على أنّها :visited فقط إذا تمّ النقر عليها من موقع وإطار المصدر هذاَين من المستوى الأعلى من قبل.

هناك استثناء "للروابط الذاتية"، حيث يمكن أن يتم :visited تنسيق الروابط التي تؤدي إلى صفحات الموقع الإلكتروني نفسه حتى إذا لم يتم النقر عليها في ملف الإطار وملف الموقع الإلكتروني بالمستوى الأعلى هذا بالضبط من قبل. لا يتم تفعيل هذا الاستثناء إلا في الإطارات أو الإطارات الفرعية ذات المصدر نفسه للإطارات ذات المستوى الأعلى. لا تزال مزايا الخصوصية متاحة لأنّ المواقع الإلكترونية تعرف من قبل الصفحات الفرعية التي زارها المستخدم، لذا لا يتم عرض أي معلومات جديدة. وقد تم تقديم هذا الطلب من قبل مستخدمي المنصة لتحسين تجربتهم.

تتبُّع الخطأ رقم 1448609 | إدخال ChromeStatus.com | المواصفات

print-color-adjust بدون بادئة

يتيح لك السمة print-color-adjust تعديل الألوان في صفحات الويب المطبوعة. هذا الإجراء هو نفسه الإجراء المُتّبع في -webkit-print-color-adjust المتوافقة مع Chrome، ولكن باستخدام اسم موحّد.

لا تتم إزالة الإصدار الذي يحمل البادئة -webkit-.

مستندات MDN | تتبُّع الخطأ رقم 376381169 | إدخال ChromeStatus.com | المواصفات

إعادة تسمية نوع string attr() إلى raw-string

قرّرت مجموعة عمل CSS استبدال النوع string attr() بraw-string.

وبالتالي، اعتبارًا من الإصدار 136 من Chrome، أصبح attr(data-foo string) attr(data-foo raw-string).

تتبُّع الخطأ رقم 400981738 | إدخال ChromeStatus.com | المواصفات

عنصر احتياطي var() غير مرتبط بالنوع

لا يتم التحقّق من الجزء الاحتياطي لدالة var() مقابل نوع السمة المخصّصة التي تتم الإشارة إليها.

تتبُّع الخطأ رقم 372475301 | إدخال ChromeStatus.com

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

إرسال أحداث النقر إلى المؤشر الذي تمّت معالجته

إذا تمّ رصد مؤشر أثناء إرسال الحدثpointerup، يتمّ الآن إرسال الحدثclick إلى الهدف الذي تمّ رصده بدلاً من أقرب مورّث مشترك لأحداثpointerdown وpointerup وفقًا لمواصفات حدث واجهة المستخدم.

بالنسبة إلى المؤشرات غير المسجّلة، يبقى استهداف click بدون تغيير.

تتبُّع الخطأ رقم 40851596 | إدخال ChromeStatus.com | المواصفات

تلميحات الترجمة الصريحة باستخدام التعليقات السحرية

يسمح بإرفاق معلومات عن الدوال التي يجب تحليلها و compilingها بشكل فوري في ملفات JavaScript.

يتم ترميز المعلومات كتعليقات سحرية.

تتبُّع الخطأ رقم 13917 | إدخال ChromeStatus.com | المواصفات

دمج مُشغِّل التنقّل في مفتاح قسم ذاكرة التخزين المؤقت لبروتوكول HTTP

تم تعديل مخطّط مفاتيح التخزين المؤقت لبروتوكول HTTP في Chrome ليشمل قيمة is-cross-site-main-frame-navigation منطقية للحد من هجمات الكشف عن المعلومات على مستوى الموقع الإلكتروني التي تنطوي على الانتقال إلى المستوى الأعلى.

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

خطأ التتبّع رقم 398784714 | إدخال ChromeStatus.com | المواصفات

شريحة الجمهور المحمية: أدوات مساعدة في تحويل النص

نصوص عروض الأسعار وعمليات التقييم المستندة إلى شرائح الجمهور المحمية التي تتعامل مع WebAssembly يجب أن تحوّل البيانات من النوع سلسلة إلى صفائف بايت (ومنها) بكفاءة (على سبيل المثال، لتمرير سلاسل إلى WebAssembly وخارجه باستخدام "الذاكرة" ArrayBuffer). يقدّم ذلك وظيفتَين مستقلتَين، protectedAudience.encodeUtf8 و protectedAudience.decodeUtf8 لتنفيذ هذه المهام بكفاءة أكبر بكثير مما لو تم تنفيذها في JavaScript.

إدخال ChromeStatus.com

RegExp.escape

RegExp.escape هي طريقة ثابتة تأخذ سلسلة وتُعرِض إصدارًا مُشفَّرًا يمكن استخدامه كنمط داخل تعبير عادي.

على سبيل المثال:

const str = prompt("Please enter a string");
const escaped = RegExp.escape(str);
const re = new RegExp(escaped, 'g'); // handles reg exp special tokens with the replacement.
console.log(ourLongText.replace(re));

إدخال ChromeStatus.com | المواصفات

قواعد التوقّع: حقل العلامة

يتيح ذلك للمطوّرين إضافة حقل العلامة إلى قواعد التكهّن. يمكن استخدام هذا الحقل الاختياري لتتبُّع مصدر قواعد التكهّن. على سبيل المثال، لمعالجتها بشكل مختلف على خادم وسيط. سيتم إرسال أي علامات مرتبطة بتكهّن مع الرأس Sec-Speculation-Tags.

تتبُّع الخطأ رقم 381687257 | إدخال ChromeStatus.com | المواصفات

تعديل ProgressEvent لاستخدام النوع المزدوج لكل من loaded وtotal

يحتوي ProgressEvent على السمتَين loaded وtotal اللتين تشيرَين إلى مستوى التقدّم، ويكون نوعهما unsigned long long الآن.

باستخدام هذه الميزة، يتم تغيير نوع هاتين السمتَين إلى double بدلاً من ذلك، ما يمنح المطوّر مزيدًا من التحكّم في القيمة. على سبيل المثال، يمكن للمطوّرين الآن إنشاء ProgressEvent مع total‏= 1 وloaded يزداد من 0 إلى 1 تدريجيًا. يتوافق ذلك مع السلوك التلقائي لعنصر HTML‏ <progress> في حال حذف السمة max.

إدخال ChromeStatus.com | المواصفات

الخصوصية والأمان

تقارير سياسة الأذونات لإطارات iframe

إدخال نوع انتهاك جديد يُسمى "انتهاك محتمل لسياسة الأذونات"، لن ينظر هذا النوع إلا في سياسة الأذونات (بما في ذلك السياسة التي تسمح بالإبلاغ فقط) و سمة allow التي تم ضبطها في إطارات iframe لرصد التعارض بين سياسة الأذونات المُطبَّقة والأذونات التي تم نشرها في إطارات iframe.

تتبُّع الخطأ رقم 40941424 | إدخال ChromeStatus.com | المواصفات

تقليل البصمة الرقمية في معلومات عنوان Accept-Language

تقليل مقدار المعلومات التي تعرضها قيمة سطر عنوان Accept-Language في طلبات HTTP وفي navigator.languages بدلاً من إرسال قائمة كاملة باللغات المفضّلة للمستخدم في كل طلب HTTP، يُرسِل Chrome الآن اللغة المفضّلة للمستخدم في العنوان Accept-Language.

تتبُّع الخطأ رقم 1306905 | إدخال ChromeStatus.com

الهوية

تحديثات FedCM

السماح لـ FedCM بعرض موفّري هوية متعدّدين في مربّع الحوار نفسه، من خلال تضمين جميع موفّري الهوية في مكالمة get() نفسها ويمنحهم هذا الإجراء طريقة ملائمة لعرض جميع مقدّمي خدمات الحماية للهوية المتوافقين مع التطبيق للمستخدمين.

يزيل الإصدار 136 من Chrome أيضًا إمكانية إضافة حساب آخر في الوضع التلقائي لإدارة الهوية وإمكانية الوصول (FedCM). تتيح هذه الميزة عرض زر استخدام حساب آخر بجانب حسابات موفِّري خدمات idenity provider الآخرين في أداة الاختيار. لا يتم استخدام هذه الميزة حاليًا، وقد أوضحت لنا محادثات تجربة المستخدم أنّ إتاحة هذه الميزة تؤدي إلى عملية أكثر تعقيدًا بدون فائدة كبيرة. ستظل هذه الميزة تعمل في الوضع النشط لإدارة المحتوى في علامة التبويب "الحملات على شبكة البحث".

تتبُّع الخطأ رقم 1348262 | إدخال ChromeStatus.com | المواصفات

الإنشاء الشَرطي لمصادقة الويب (عمليات ترقية مفاتيح المرور)

تتيح طلبات الإنشاء الشَرطية في WebAuthn للمواقع الإلكترونية ترقية بيانات اعتماد كلمة المرور الحالية إلى مفتاح مرور.

تتبُّع الخطأ رقم 377758786 | إدخال ChromeStatus.com | المواصفات

الصور والوسائط

AudioContext الحالة "توقّفت عملية التنزيل"

تضيف حالة "interrupted" إلى AudioContextState. تسمح هذه الحالة الجديدة لوكيل المستخدم بالتوقف مؤقتًا عن التشغيل أثناء الوصول الحصري إلى الصوت (VoIP) أو عند إغلاق غطاء الكمبيوتر المحمول.

تتبُّع الخطأ رقم 374805121 | إدخال ChromeStatus.com | المواصفات

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

واجهة برمجة تطبيقات ويب تتيح لتطبيقات الويب إجراء ما يلي:

  1. إعادة توجيه أحداث عجلة القيادة إلى علامة تبويب تم تسجيلها
  2. قراءة مستوى التكبير/التصغير لعلامة تبويب تم التقاطها وتغييره

تتبُّع الخطأ رقم 1466247 | إدخال ChromeStatus.com | المواصفات

CapturedSurfaceResolution

عرض نسبة وحدات البكسل لسطح العرض الذي تم التقاطه أثناء مشاركة الشاشة

تساعد هذه الميزة التطبيقات في الحفاظ على موارد النظام أو تعديل التوازن بين الجودة ومعدل نقل البيانات وفقًا لدرجات الدقة المادية والمنطقية للسطح الذي تم التقاطه.

تتبُّع الخطأ رقم 383946052 | إدخال ChromeStatus.com | المواصفات

التوافق مع برنامج ترميز H265 (HEVC) في WebRTC

بعد هذا التغيير، سينضم HEVC إلى VP8 وH.264 وVP9 وAV1 كبرامج ترميز متوافقة في WebRTC. ويمكن الاستعلام عن مدى توفّر الدعم باستخدام واجهة برمجة التطبيقات MediaCapabilities API.

تتبُّع الخطأ رقم 391903235 | إدخال ChromeStatus.com | المواصفات

تحديثات حول توافق برنامج ترميز H26x مع MediaRecorder

تتيح الآن واجهة برمجة التطبيقات MediaRecorder API في Chromium ترميز HEVC، ما يؤدي إلى تقديم سلسلة برامج الترميز hvc1.*، كما تضيف برامج ترميز جديدة (hev1.* وavc3.*) تتيح الفيديوهات بدرجة دقة متغيرة في MP4.

تمت إضافة ميزة ترميز HEVC على المنصة في WebCodecs في الإصدار M130 من Chromium. في إطار متابعة هذه المشكلة، تمت إضافة دعم لواجهة برمجة التطبيقات MediaRecorder API في Chromium. تتيح واجهة برمجة التطبيقات الآن استخدام نوعَي أدوات دمج MP4 وMatroska مع مواصفات مختلفة لنوع mime من HEVC وH.264. لا يتوفّر ترميز HEVC إلا إذا كان جهاز المستخدم ونظام التشغيل يتضمّنان الإمكانات اللازمة.

إدخال ChromeStatus.com

استخدِم DOMPointInit للرمز getCharNumAtPosition وisPointInFill وisPointInStroke.

يتوافق هذا التغيير مع أحدث مواصفات W3C لملف برمجي Chromium في ما يتعلّق باستخدام DOMPointInit بدلاً من SVGPoint في getCharNumAtPosition وisPointInFill وisPointInStroke.SVGGeometryElementSVGPathElement

تتبُّع الخطأ رقم 40572887 | إدخال ChromeStatus.com | المواصفات

WebGPU: سمة GPUAdapterInfo isFallbackAdapter

تشير السمة المنطقية GPUAdapterInfo isFallbackAdapter إلى ما إذا كان المحوِّل لديه قيود أداء كبيرة مقابل توافق أوسع أو سلوك أكثر قابلية للتنبؤ أو خصوصية محسّنة. يُرجى العِلم أنّه قد لا يتوفّر مقوّم بديل في بعض الأنظمة.

تتبُّع الخطأ رقم 403172841 | إدخال ChromeStatus.com | المواصفات

التغييرات في المتصفّح

أشرطة تمرير سلسة

تعمل هذه الميزة على تحديث أشرطة التمرير في Chromium (كلاً من أشرطة التمرير التي تظهر على سطح الصفحة وأشرطة التمرير التي لا تظهر على سطح الصفحة) على نظامَي التشغيل Windows وLinux لتتوافق مع لغة التصميم Fluent في نظام التشغيل Windows 11.

سيتم تفعيل أشرطة التمرير Fluent غير المتراكبة تلقائيًا في Linux وWindows. ينطبق هذا التغيير على نظام التشغيل Linux أيضًا لأنّ تصميم شريط التمرير في Chromium على Linux كان يتماشى في السابق مع التصميم المُستخدَم على نظام التشغيل Windows. لا يزال يتم تحديد كيفية عرض شريط التمرير المتراكب في Fluent.

تتبُّع الخطأ رقم 1292117 | إدخال ChromeStatus.com

عمليات التجربة والتقييم

واجهة برمجة التطبيقات Audio Output Devices API: ‏ setDefaultSinkId()

تضيف هذه الميزة setDefaultSinkId() إلى MediaDevices، ما يتيح لمحاولة الإطار من المستوى الأعلى تغيير جهاز إخراج الصوت التلقائي المستخدَم من الإطارات الفرعية.

الإصدار التجريبي من الإصدار العلني | إدخال ChromeStatus.com | المواصفات

تفعيل تطبيقات الويب لفهم أوقات الأداء الثنائي

قد تواجه تطبيقات الويب توزيعًا ثنائيًا في أداء تحميل الصفحة، بسبب عوامل خارج نطاق تحكّم تطبيق الويب. على سبيل المثال:

  • عند تشغيل وكيل مستخدم لأول مرة (سيناريو "التشغيل من البارد")، يجب أن يؤدي العديد من مهام الإعداد المُكلِّفة التي تتنافس على الموارد في النظام.
  • يمكن أن تؤثر إضافات المتصفّح في أداء الموقع الإلكتروني. على سبيل المثال، تُشغِّل بعض الإضافات رمزًا إضافيًا على كل صفحة تزورها، ما قد يؤدي إلى زيادة استخدام وحدة المعالجة المركزية (CPU) وزيادة وقت الاستجابة.
  • عندما يكون الجهاز مشغولاً بتنفيذ مهام مكثفة، يمكن أن يؤدي ذلك إلى تباطؤ loadingتحميل صفحات الويب.

سيتيح الحقل الجديد confidence في العنصر PerformanceNavigationTiming للمطوّرين معرفة ما إذا كانت أوقات التنقّل تمثّل تطبيق الويب الخاص بهم.

الإصدار التجريبي من الإصدار الأول | تتبُّع الخطأ رقم 1413848 | إدخال ChromeStatus.com | المواصفات

تعديل على تنفيذ عرض النص في "لوحة الرسم"

وهذا التغيير ليس معروضًا على الويب.

تم إجراء تغيير جذري على تنفيذ CanvasRenderingContext2D measureText() وfillText() و strokeText(). قد يؤثر ذلك في الأداء، لذا نريد إجراء تجربة أصلية حتى تتمكّن التطبيقات التي تستخدم مساحة كبيرة من مساحة اللوحة من اختبار التنفيذ الجديد.

الإصدار التجريبي من الميزة | خطأ التتبّع رقم 389726691 | إدخال ChromeStatus.com

الميزات التي سيتم إيقافها نهائيًا والميزات التي تمت إزالتها

إزالة "HTMLFencedFrameElement.canLoadOpaqueURL()"

تم استبدال الطريقة HTMLFencedFrameElement canLoadOpaqueURL() بمحاولة navigator.canLoadAdAuctionFencedFrame() في عام 2023، وقد أدّى طلبها إلى ظهور تحذير في وحدة التحكّم بشأن الإيقاف النهائي منذ الإشارة إلى واجهة برمجة التطبيقات الجديدة. تمت إزالة الطريقة من الإصدار 136 من Chrome.

إدخال ChromeStatus.com