تاريخ النشر: 3 نيسان (أبريل) 2025
تنطبق التغييرات التالية على أحدث إصدار من الإصدار التمهيدي ل Chrome على أجهزة Android وChromeOS وLinux وmacOS وWindows، ما لم يُذكر خلاف ذلك. يمكنك الاطّلاع على مزيد من المعلومات عن الميزات المدرَجة هنا من خلال الروابط المقدَّمة أو من القائمة على ChromeStatus.com. يُرجى العِلم أنّ الإصدار 136 من Chrome هو إصدار تجريبي اعتبارًا من 3 نيسان (أبريل) 2025. يمكنك تنزيل أحدث إصدار من الرابط Google.com على أجهزة الكمبيوتر المكتبي أو من "متجر Google Play" على أجهزة Android.
CSS وواجهة المستخدم
يضيف هذا الإصدار ست ميزات جديدة لتنسيق CSS وواجهة المستخدم.
خاصية dynamic-range-limit
في CSS
يتيح للصفحة الحد من الحد الأقصى للسطوع في محتوى النطاق العالي الديناميكية.
تجاهُل المسافة بين الأحرف في النصوص المكتوبة بخط اليد
تضيف هذه الميزة منطقًا لتجاهل إعدادات المسافة بين الأحرف للنص المكتوب بخط مائل، حتى إذا حدّدها المطوّر وفقًا للمواصفات، لضمان عدم تقسيم الكلمات بسبب المسافة بين الأحرف.
سجلّ تقسيم روابط :visited
لمنع تسرُّب سجلّ تصفّح المستخدِم، يتمّ تصميم عناصر الربط على أنّها
:visited
فقط إذا تمّ النقر عليها من هذا الموقع الإلكتروني وإطار
المصدر من المستوى الأعلى من قبل.
من خلال تنسيق الروابط التي تم النقر عليها في هذا الموقع الإلكتروني والإطار من قبل فقط، أصبحت
العديد من هجمات القناة الجانبية التي تم تطويرها للحصول على معلومات تنسيق :visited
الروابط
قديمة. ولم تعُد توفّر للمواقع الإلكترونية
معلومات جديدة عن المستخدمين.
مزيد من المعلومات حول هذه التحسينات على خصوصية روابط :visited
إعادة تسمية نوع string
attr()
إلى raw-string
قرّرت مجموعة عمل CSS استبدال نوع string
attr()
بraw-string
.
لذلك، غيّر Chrome بنية attr()
، بحيث أصبح attr(data-foo string)
attr(data-foo raw-string)
الآن.
العنصر الاحتياطي var()
غير المرتبط بنوع المحتوى
لا يتم التحقّق من الجزء الاحتياطي لدالة var()
مقابل نوع
السمة المخصّصة التي تتم الإشارة إليها.
print-color-adjust
بدون بادئة
تتيح لك السمة
print-color-adjust
تعديل الألوان في صفحات الويب المطبوعة. هذا الإجراء هو نفسه
الإجراء المُتّبع في -webkit-print-color-adjust
المتوافقة مع Chrome، ولكن باستخدام اسم
موحّد. لا تتم إزالة الإصدار الذي يحمل البادئة -webkit
.
واجهات برمجة التطبيقات على الويب
حالة AudioContext المتقطّعة
تضيف حالة "interrupted"
إلى AudioContextState
. تسمح هذه الحالة الجديدة لخدمة Universal Analytics بالتوقف مؤقتًا عن التشغيل في هذه السيناريوهات وتفعيل تطبيقات الويب للردّ بشكلٍ مناسب.
تقسيم عناوين URL الخاصة بكائنات ثنائية كبيرة (BLOB): الاسترجاع/التنقّل
كمتابعة لميزة "تقسيم مساحة التخزين"، تُنفِّذ هذه الميزة تقسيم إمكانية الوصول إلى عناوين URL لـ Blob باستخدام مفتاح التخزين (الموقع الإلكتروني من المستوى الأعلى ومصدر الإطار والقيمة المنطقية has-cross-site-ancestor)، باستثناء عمليات التنقّل من المستوى الأعلى التي ستظل مجزّأة حسب مصدر الإطار فقط. يشبه هذا السلوك السلوك الذي ينفّذه حاليًا كلّ من Firefox وSafari، وينسّق استخدام عنوان URL لملفّ Blob مع مخطّط التقسيم الذي تستخدمه واجهات برمجة تطبيقات التخزين الأخرى كجزء من ميزة تقسيم مساحة التخزين.
بالإضافة إلى ذلك، يتم الآن فرض noopener
على عمليات التنقّل من المستوى الأعلى التي يبدأها المشغّل
إلى عناوين URL الخاصة بالملفات الثنائية الكبيرة (Blob) حيث يكون الموقع الإلكتروني المقابل من مواقع إلكترونية متعددة مقارنةً بالموقع الإلكتروني
من المستوى الأعلى الذي ينفّذ عملية التنقّل. يؤدي ذلك إلى مواءمة Chrome مع السلوك المشابه في Safari، وتم تعديل المواصفات ذات الصلة لتعكس هذه التغيُّرات.
تسلسلات استدعاء الدوالّ في تقارير الأعطال من صفحات الويب التي لا تستجيب
تلتقط هذه الميزة تسلسل استدعاء JavaScript عندما تصبح صفحة الويب غير مستجيبة بسبب تشغيل رمز JavaScript لحلقة لا نهائية أو عملية حسابية طويلة جدًا. ويساعد ذلك المطوّرين في تحديد سبب عدم الاستجابة. يتم تضمين تسلسل استدعاء JavaScript في واجهة برمجة التطبيقات لإعداد تقارير الأعطال عندما يكون السبب هو عدم الاستجابة.
واجهة برمجة التطبيقات Captured Surface Control API
تتيح واجهة برمجة التطبيقات Captured Surface Control API لتطبيقات الويب إعادة توجيه أحداث عجلة الماوس إلى علامة تبويب تم التقاطها، وقراءة مستوى التكبير/التصغير لعلامة التبويب التي تم التقاطها و تغييره.
CapturedSurfaceResolution
تعرِض نسبة البكسل للسطح الذي تم التقاطه أثناء مشاركة الشاشة. ستساعد هذه الميزة التطبيقات في الحفاظ على موارد النظام أو تعديل التوازن بين الجودة وسعة النطاق وفقًا للدقة المادية والمنطقية للسطح الذي تم التقاطه.
إرسال أحداث النقر إلى المؤشر الذي تمّ التقاطه
في حال تمّ تسجيل مؤشر أثناء إرسال حدث pointerup
، سيتمّ إرسال حدث
click
إلى الهدف المسجَّل بدلاً من أقرب
سلف مشترك لحدثَي pointerdown
وpointerup
وفقًا لمواصفات
حدث واجهة المستخدم. بالنسبة إلى المؤشرات غير المسجَّلة، يظلّ هدف click
بدون تغيير.
تلميحات الترجمة الصريحة باستخدام التعليقات السحرية
يسمح هذا الخيار بإرفاق معلومات حول الدوال التي يجب تحليلها وتجميعها في ملفات JavaScript. سيتم ترميز المعلومات كتعليقات سحرية.
تعديلات على FedCM: إتاحة استخدام مزوّدي خدمات تحديد الهوية المتعدّدين، وإزالة ميزة "إضافة حساب آخر" في الوضع السلبي
من خلال هذا التعديل، يمكن أن يعرض FedCM مقدّمي هوية متعدّدين في مربّع الحوار نفسه.
يوفّر هذا للمطوّرين طريقة ملائمة لعرض جميع مقدّمي خدمات
الهوية المتوافقين للمستخدمين. نخطّط أولاً للتعامل مع الحالة البسيطة التي تتطلّب إشراك
جميع مقدّمي الخدمة في المكالمة نفسها على get()
. سنزيل أيضًا ميزة "إضافة حساب آخر" في الوضع التلقائي لإدارة العملاء الفيدرالية. تتيح هذه الميزة عرض زر
"استخدام حساب آخر" بجانب حسابات موفِّري خدمات التعريف الآخرين في أداة الاختيار. لا يتم استخدام الميزة حاليًا، وقد أوضحت لنا محادثات تجربة المستخدم أنّ السماح بهذه الميزة يؤدي إلى عملية أكثر تعقيدًا بدون فائدة كبيرة. ستظلّ هذه الميزة تعمل في الوضع النشط لإدارة المحتوى في شبكة البحث.
أشرطة تمرير سلسة
تعمل هذه الميزة على تحديث أشرطة التمرير في Chrome (كلاهما التراكب وغير التراكب) على Windows وLinux لتتوافق مع لغة التصميم Fluent في Windows 11. شريط التمرير الغير متراكب سيتم تفعيل شريط التمرير السلس تلقائيًا في Linux وWindows. ينطبق هذا التغيير على نظام التشغيل Linux أيضًا لأنّ تصميم شريط التمرير في Chrome على Linux كان متوافقًا في السابق مع التصميم المُستخدَم على نظام التشغيل Windows.
التوافق مع برنامج ترميز H265 (HEVC) في WebRTC
اعتبارًا من الإصدار 136 من Chrome، سينضم HEVC إلى VP8 وH.264 وVP9 وAV1 كبرامج ترميز متوافقة في WebRTC. ويمكن الاستعلام عن مدى توفّر الدعم باستخدام واجهة برمجة التطبيقات MediaCapabilities API.
يتميز برنامج الترميز الجديد هذا بكفاءة أكبر في الضغط (جودة أعلى لكل ملف برمجي) مقارنةً ببرامج الترميز من الجيل الأقدم، مثل VP8 وH264، كما يتوافق مع الأجهزة بشكلٍ جيد جدًا منذ أكثر من عقد من الزمن. ويؤدي ذلك إلى زيادة عمر البطارية والحد من خطر حدوث مشاكل في الأداء، وغالبًا ما يؤدي ذلك إلى تحسين تجربتك المرئية، وذلك استنادًا إلى أداء برنامج الترميز الأساسي للأجهزة، في الحالات التي لا تتوفّر فيها برامج ترميز VP9 أو AV1 للأجهزة.
تحديثات حول توافق برنامج ترميز H26x مع MediaRecorder
تتيح MediaRecorder API الآن ترميز HEVC، ما يؤدي إلى إدخال سلسلة ترميز hvc1.*
، كما تضيف برامج ترميز جديدة (hev1.*
وavc3.*
) تتيح الفيديو بدرجة دقة متباينة بتنسيق MP4. تمت إضافة ميزة ترميز HEVC على الأنظمة الأساسية في مكتبة WebCodecs في الإصدار 130 من Chrome. في إطار المتابعة، تمت إضافة دعم لواجهة برمجة التطبيقات
MediaRecorder API في Chromium. تتيح واجهة برمجة التطبيقات الآن استخدام نوعَي muxer
MP4 وMatroska مع مواصفات مختلفة لنوع mime من HEVC وH.264. لا يمكن استخدام ترميز HEVC إلا إذا كان جهاز المستخدم ونظام التشغيل يتيحان الإمكانات اللازمة.
تسجيل عناوين IP وإعداد تقارير عنها في Chrome Enterprise
تعمل خدمة Chrome Enterprise على تحسين إمكانات رصد الأمان والاستجابة للاختراقات من خلال جمع عناوين IP المحلية والبعيدة والإبلاغ عنها، وإرسال عناوين IP هذه إلى سجلّات التحقيق الأمني (SIT). بالإضافة إلى ذلك، ستسمح Chrome Enterprise للمشرفين بإرسال عناوين IP اختياريًا إلى مقدّمي خدمات إدارة البنية الأساسية لأمان المعلومات (SIEM) التابعين للجهة الأولى والجهات الخارجية باستخدام موصِّل إعداد تقارير Chrome Enterprise. وستتوفّر هذه الميزة لعملاء Chrome Enterprise Core.
دمج مُشغِّل التنقّل في مفتاح قسم ذاكرة التخزين المؤقت لبروتوكول HTTP
تم تعديل مخطّط مفاتيح ذاكرة التخزين المؤقت لبروتوكول HTTP في Chrome ليشمل قيمة is-cross-site-main-frame-navigation
منطقية للحدّ من هجمات الكشف عن المعلومات على مستوى الموقع الإلكتروني
التي تنطوي على الانتقال إلى المستوى الأعلى. وعلى وجه التحديد، سيؤدي ذلك إلى منع
الهجمات على مستوى الموقع الإلكتروني التي يمكن فيها للمهاجم بدء عملية انتقال من المستوى الأعلى إلى
صفحة معيّنة، ثم الانتقال إلى مورد معروف أنّ الصفحة تحمّله
من أجل استنتاج معلومات حسّاسة من توقيت التحميل. ويؤدي هذا التغيير أيضًا إلى تحسين
الخصوصية من خلال منع موقع إلكتروني ضار من استخدام عمليات التنقّل لاستنتاج ما إذا كان
المستخدِم قد زار موقعًا إلكترونيًا معيّنًا في السابق.
اللغات المتاحة في CanvasTextDrawingStyles
يقبل عنصر <canvas>
DOM، مثل جميع عناصر DOM، سمة lang
التي تُستخدَم لتحديد المعالجة الخاصة باللغة لاختيار الخط (عندما
يكون للخطوط رموز خاصة باللغة المحلية). تلتزم المتصفّحات بهذه السمة. ومع ذلك،
عند إنشاء OffscreenCanvas، لا تتوفّر طريقة لضبط معلومات اللغة،
ما قد يؤدي إلى حالة تنتج فيها لوحة شاشة غير مرئية نتيجة
معروضة تختلف عن اللوحة التي يتم استخدام إخراجها. تُضيف هذه الميزة سمة lang
IDL إلى CanvasTextDrawingStyles
لإتاحة التحكّم المباشر
في لغة رسم النصوص والمقاييس.
تقارير سياسة الأذونات لإطارات iframe
إدخال نوع انتهاك جديد يُسمى "انتهاك محتمل لسياسة الأذونات"،
لن ينظر هذا النوع إلا في سياسة الأذونات (بما في ذلك السياسة التي تسمح بالإبلاغ فقط) و
سمة allow
التي تم ضبطها في إطارات iframe لرصد التعارض بين سياسة الأذونات
المُطبَّقة والأذونات التي تم نشرها في إطارات iframe.
حصة مساحة تخزين متوقّعة تم الإبلاغ عنها
الإبلاغ عن حصة تخزين متوقّعة من Estimate API في StorageManager للمواقع الإلكترونية التي لا تملك أذونات تخزين غير محدودة من الممكن رصد وضع التصفّح لدى المستخدِم باستخدام حصة التخزين التي تم الإبلاغ عنها لأنّ مساحة التخزين المتوفّرة أصغر بكثير في وضع التصفّح المتخفي مقارنةً بالوضع العادي.
Private Aggregation API: Aggregate error reporting
هناك مجموعة من حالات الخطأ التي يمكن أن تحدث عند استخدام واجهة برمجة التطبيقات Private Aggregation API. على سبيل المثال، يمكن أن تنفد ميزانية الخصوصية، ما يمنع أي مساهمات أخرى في الرسم البياني الشريطي. تتيح هذه الميزة للمطوّرين تسجيل مساهمات في الرسم البياني الشريطي يجب عدم إرسالها إلا في حال حدوث نوع معيّن من الأخطاء. تتيح هذه الميزة قياس معدّل تكرار حالات الخطأ وتقسيم هذه القياسات حسب السمات ذات الصلة التي يحدّدها المطوّر (مثل إصدار الرمز البرمجي المنشور). بما أنّ الأخطاء نفسها قد تكون معلومات على مستوى الموقع الإلكتروني، لا يمكننا ببساطة عرضها على الصفحة للمستخدمين الذين لا لديهم ملفات تعريف ارتباط تابعة لجهات خارجية. بدلاً من ذلك، تعيد هذه الميزة استخدام مسارات الإبلاغ الحالية التي تم تجميعها وإضافة تشويش إليها من خلال "خدمة تجميع البيانات".
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));
قواعد التوقّع: حقل العلامة
يتيح للمطوّرين إضافة العلامة field
إلى قواعد التكهن. يمكن استخدام هذا الحقل الاختياري
لتتبُّع مصدر قواعد التكهّن. على سبيل المثال، لمعالجتها
بشكل مختلف على خادم وسيط. سيتم إرسال أي علامات مرتبطة بتكهّن
مع الرأس Sec-Speculation-Tags
.
سياسة صارمة للوصول إلى المصدر نفسه في واجهة برمجة التطبيقات Storage Access API
تعديل دلالات واجهة برمجة التطبيقات Storage Access API لاتّباع سياسة "المصدر نفسه"
بدقة وهذا يعني أنّ استخدام document.requestStorageAccess()
في إطار فقط
يربط ملفات تعريف الارتباط تلقائيًا بطلبات منشأ إطار iframe (وليس الموقع الإلكتروني). يُرجى العلم
أنّه قد يستمر استخدام سياسة CookiesAllowedForUrls
أو رؤوس الوصول إلى مساحة التخزين
لإلغاء حظر ملفات تعريف الارتباط على جميع المواقع الإلكترونية.
تعديل ProgressEvent
لاستخدام النوع المزدوج لكل من loaded
وtotal
يحتوي العنصر ProgressEvent
على السمتَين loaded
وtotal
اللتين تشيرَين إلى مستوى التقدّم،
وأصبح نوعهما الآن unsigned long long
. باستخدام هذه الميزة، يتم تغيير نوع
كلتا السمتَين إلى double
بدلاً من ذلك، ما يمنح المطوّر
مزيدًا من التحكّم في القيمة. على سبيل المثال، يمكن للمطوّرين الآن إنشاء حدث ملفّق لتقدّم بقيمة total
= 1 وloaded
= 0 يزداد تدريجيًا ليصل إلى loaded
= 1. يتوافق ذلك مع السلوك التلقائي لعنصر HTML
<progress>
في حال حذف السمة max.
استخدِم DOMPointInit
للرمز getCharNumAtPosition
وisPointInFill
وisPointInStroke
.
يتوافق هذا التغيير مع أحدث مواصفات W3C لملف برمجي Chromium في ما يتعلّق باستخدام DOMPointInit
بدلاً من SVGPoint
في getCharNumAtPosition
وisPointInFill
وisPointInStroke
.SVGGeometryElement
SVGPathElement
الإنشاء الشَرطي لمصادقة الويب (عمليات ترقية مفتاح المرور)
تتيح طلبات الإنشاء الشَرطية في WebAuthn للمواقع الإلكترونية ترقية بيانات اعتماد كلمة المرور الحالية إلى مفتاح مرور.
WebGPU: سمة GPUAdapterInfo
isFallbackAdapter
تشير السمة المنطقية GPUAdapterInfo
isFallbackAdapter
إلى ما إذا كان المحوِّل لديه قيود أداء كبيرة مقابل توافق أوسع أو سلوك أكثر قابلية للتنبؤ أو خصوصية محسّنة. يُرجى العِلم أنّه قد لا يتوفّر مقوّم بديل في بعض الأنظمة.
عمليات التجربة والتقييم الجديدة
في الإصدار 136 من Chrome، يمكنك تفعيل الإصدارات التجريبية الجديدة التالية.
واجهة برمجة التطبيقات Audio Output Devices API: setDefaultSinkId()
تضيف هذه الميزة setDefaultSinkId()
إلى MediaDevices، ما يتيح لمحاولة
المستوى الأعلى تغيير جهاز إخراج الصوت التلقائي المستخدَم من الإطارات الفرعية.
السماح لتطبيقات الويب بفهم أوقات الأداء الثنائي
قد تواجه تطبيقات الويب توزيعًا ثنائيًا في أداء تحميل الصفحة، بسبب عوامل خارج نطاق تحكّم تطبيق الويب. على سبيل المثال:
- عند تشغيل وكيل مستخدم لأول مرة (سيناريو "التشغيل من البارد")، يجب أن ينفِّذ العديد من مهام الإعداد المُكلِّفة التي تتنافس على الموارد في النظام.
- يمكن أن تؤثر إضافات المتصفّح في أداء الموقع الإلكتروني. على سبيل المثال، تُشغِّل بعض الإضافات رمزًا إضافيًا على كل صفحة تزورها، ما قد يؤدي إلى زيادة استخدام وحدة المعالجة المركزية (CPU) وزيادة وقت الاستجابة.
- عندما يكون الجهاز مشغولاً بتنفيذ مهام مكثفة، يمكن أن يؤدي ذلك إلى تباطؤ loadingتحميل صفحات الويب.
في هذه السيناريوهات، سيتنافس المحتوى الذي يحاول تطبيق الويب تحميله مع المهام الأخرى التي تتم على النظام. وهذا يجعل من الصعب رصد ما إذا كانت هناك مشاكل في الأداء داخل تطبيقات الويب نفسها أو بسبب عوامل خارجية.
سيتيح الحقل الجديد confidence
في العنصر PerformanceNavigationTiming
للمطوّرين معرفة ما إذا كانت أوقات التنقّل تمثل تطبيق الويب الخاص بهم.
بيانات اعتماد الجلسة المرتبطة بالجهاز
طريقة تتيح للمواقع الإلكترونية ربط جلسة بجهاز واحد بشكل آمن
ويسمح هذا الإجراء للخوادم بإنشاء جلسة مرتبطة بجهاز بشكل آمن. سيُجدّد المتصفّح الجلسَة بشكل دوري كما يطلب الخادم، مع تقديم دليل على امتلاك مفتاح خاص.
تعديل على تنفيذ عرض النص على اللوحة
تم استبدال العناصر الداخلية measureText()
وfillText()
و
strokeText()
في CanvasRenderingContext2D و
OffscreenCanvasRenderingContext2D بتنفيذ جديد يتيح بشكل أفضل
النص باتجاه RTL والتخزين المؤقت. وقد يؤثر ذلك في الأداء وإخراج النص باتجاه من اليسار إلى اليمين، لذلك،
تسمح هذه الفترة التجريبية للإصدار الأول لتطبيقات لوحة الرسم التي تتضمّن الكثير من النصوص بتجربة التنفيذ الجديد
والإبلاغ عن أي مشاكل قد تواجهها.
عمليات الإيقاف النهائي والإزالة
يُجري هذا الإصدار من Chrome عمليات الإيقاف النهائي والإزالة التالية. يُرجى الانتقال إلى ChromeStatus.com للحصول على قوائم بالميزات التي سيتم إيقافها نهائيًا في المستقبل والميزات التي تم إيقافها نهائيًا في الوقت الحالي والميزات التي تم إيقافها نهائيًا في السابق.
يوقف هذا الإصدار من Chrome ميزتَين نهائيًا.
إيقاف الحصول على معلومات اللغة المحلية
Intl Locale Info API هي اقتراح المرحلة 3 من ECMAScript TC39 لتحسين عنصر
Intl.Locale
من خلال عرض معلومات اللغة، مثل بيانات الأسبوع (أول
يوم في الأسبوع، ويوم بدء عطلة نهاية الأسبوع، ويوم نهاية عطلة نهاية الأسبوع، والحد الأدنى لليوم في
الأول أسبوع)، ودورة الساعة لاتجاه النص المستخدَمة في اللغة. يزيل هذا التغيير
بعض وظائف الحصول التي تم إيقافها نهائيًا في تغيير المواصفات منذ طرحها.
أزِل HTMLFencedFrameElement.canLoadOpaqueURL()
.
تم استبدال canLoadOpaqueURL()
بواجهة navigator.canLoadAdAuctionFencedFrame()
في عام 2023، وقد أدّى استدعاؤها إلى ظهور تحذير في وحدة التحكّم بشأن الإيقاف النهائي منذ ذلك الحين، ويشير هذا التحذير المطوّرين إلى واجهة برمجة التطبيقات الجديدة. لا يُفترَض أن تكون الوظيفة
مرفقة بعنصر HTMLFencedFrameElement
، بل يجب أن تكون مرفقة بعنصر
navigator
(الذي يحتوي على طرق أخرى للإطارات المُحدودة ومزادات الإعلانات).