تاريخ النشر: 13 تشرين الثاني (نوفمبر) 2024
تنطبق التغييرات التالية على أحدث إصدار من الإصدار التمهيدي ل Chrome على نظام التشغيل Android وChromeOS وLinux وmacOS وWindows، ما لم يُذكر خلاف ذلك. يمكنك الاطّلاع على مزيد من المعلومات عن الميزات المدرَجة هنا من خلال الروابط المقدَّمة أو من القائمة على ChromeStatus.com. يُرجى العِلم أنّ الإصدار 132 من Chrome هو إصدار تجريبي اعتبارًا من 13 تشرين الثاني (نوفمبر) 2024. يمكنك تنزيل أحدث إصدار من الرابط Google.com لأجهزة الكمبيوتر المكتبي أو من Google Play Store على أجهزة Android.
CSS
يضيف هذا الإصدار ميزتَين جديدتَين في CSS.
موضع عنصر الربط في CSS: السماح باستخدام anchor-size()
في السمتَين inset
وmargin
في الأصل، كان يُسمح باستخدام anchor-size()
في سمات المقاييس فقط. تم تعديل المواصفات للسماح باستخدام anchor-size()
في الأجزاء المضمّنة والهوامش أيضًا.
أوضاع الكتابة بالعرض في CSS
إتاحة الكلمات الرئيسية sideways-rl
وsideways-lr
لخدمة مقارنة الأسعار (CSS)
writing-mode
يُعدّ sideways-rl
وsideways-lr
مفيدَين لكتابة نص غير CJK
بشكل عمودي. ولا تتضمّن سلوكيات مواتية للّغات CJK على عكس
vertical-rl
وvertical-lr
.
واجهات برمجة تطبيقات الويب
التقاط كل الشاشات
التقاط جميع الشاشات المتصلة حاليًا بالجهاز باستخدام
getAllScreensMedia()
يتطلّب استدعاء getDisplayMedia()
عدة مرات إيماءات متعددة من المستخدمين، ويصعّب عليهم اختيار الشاشة التالية في كل مرة، ولا يضمن للتطبيق اختيار كل الشاشات. تُحسِّن طريقة getAllScreensMedia()
كل هذه الجوانب.
تتوفّر هذه الميزة على أجهزة الكمبيوتر المكتبي فقط.
أحداث تبديل مربّع الحوار
من المفيد معرفة وقت فتح عناصر <dialog>
وإغلاقها، وpopover
تتضمّن ToggleEvent
التي يتم إرسالها عند فتح نافذة منبثقة أو إغلاقها.
في السابق، لرصد وقت فتح <dialog>
، كان عليك تسجيل مراقب
للتحوّل للتحقّق من الفتح، ولكنّ هذا يتطلّب الكثير من العمل، في حين أنّه يمكن استخدام حدث
بطريقة أسهل.
يتضمن هذا التغيير ToggleEvent
نفسه الذي ترسله النوافذ المنبثقة، ولكن لعناصر
<dialog>
: عند استدعاء showModal
أو show
، ترسِل <dialog>
ToggleEvent
مع newState=open
. عند إغلاق <dialog>
(باستخدام
النموذج أو الزر أو أداة مراقبة الإغلاق)، من المفترض أن يتم إرسال ToggleEvent
مع
newState=closed
.
التقاط العناصر
في حال توفّر فيديو MediaStreamTrack
تم الحصول عليه من خلال وسائل حالية لبدء تسجيل
علامات التبويب، تتيح ميزة "تسجيل العناصر" تغيير المقطع الصوتي لتسجيل شجيرة فرعية فقط
من DOM بدءًا من عنصر معيّن.
تتشابه واجهة برمجة التطبيقات مع واجهة برمجة التطبيقات Region Capture API، ولكنها توفّر مرونة أكبر للتطبيقات، لأنّها تستبعد كلّ من المحتوى الذي يحجب الرؤية والمحتوى الذي يتم حجبه من عملية الالتقاط.
ميزات تفويض FedCM
يجمع هذا الإطار بعض الميزات التي يمكن لموفّري الهوية استخدامها لتنفيذ خطوات التفويض، مثل السماح للمستخدم بمنح إذن الوصول إلى تقويمه لجهة خارجية تعتمد على خدماته. وهذه القيود تحديدًا هي كالآتي:
- يجب أن يكون موفِّر خدمة المصادقة قادرًا على عرض طلب مخصّص للإذن (Continuation API).
- يحتاج مقدّم الطلبات إلى طريقة قابلة للتوسيع للتواصل مع موفِّر الهوية بشأن ما يريد الوصول إليه (واجهة برمجة التطبيقات للمَعلمات).
- يجب أن يكون بإمكان مقدّم الخدمة المعني تخصيص النص الذي يشير إلى موفِّر خدمة تحديد الهوية الذي يشارك "الاسم وعنوان البريد الإلكتروني وصورة الملف الشخصي" أو إخفاءه، لأنّه في هذه الحالة يطلب معلومات مختلفة (واجهة برمجة التطبيقات للحقول).
- قد يريد موفِّر الهوية استخدام نقطة نهاية مختلفة لتنفيذ عملية التفويض (عناوين URL متعددة لإعدادات).
- قد تكون بعض الحسابات مؤهَّلة لأحد عمليّتَي المصادقة والتفويض فقط، لذا يجب أن تتوفّر طريقة لعرض حسابات مختلفة في العمليّتَين (واجهة برمجة تطبيقات تصنيفات الحسابات).
واجهة برمجة التطبيقات لميزة "وضع المراسلة المُدارة من جهة العميل" وواجهة برمجة التطبيقات لاستخدام حسابات أخرى
اثنتان من الإضافات الجديدة لخدمة FedCM:
- الوضع: يسمح وضع
active
للمواقع الإلكترونية باستدعاء FedCM داخل زر النقر (على سبيل المثال، النقر على زر تسجيل الدخول إلى موفِّر الهوية)، ما يتطلّب من FedCM ضمان استجابته دائمًا من خلال واجهة مستخدم مرئية. يؤدي استدعاء واجهة برمجة التطبيقات FedCM API في الوضع النشط إلى توجيه المستخدمين إلى تسجيل الدخول إلى موفِّر هوية (IdP) عندما يكونون مسجّلين الخروج. بالإضافة إلى ذلك، بما أنّه يتمّ استدعاء الوضع النشط ضمن إيماءة مستخدِم صريحة، تكون واجهة المستخدِم أيضًا أكثر بروزًا (مثل الوضع المتوسّط ووضع النافذة المنبثقة) مقارنةً بواجهة المستخدِم من الوضع السلبي (الذي لا يتطلّب إيماءة مستخدِم ويمكن استدعاؤه عند تحميل الصفحة). - استخدام حساب آخر: باستخدام هذه الإضافة، يمكن لموفِّر الهوية السماح للمستخدمين بتسجيل الدخول إلى حسابات أخرى.
Fetch: Request.bytes()
وResponse.bytes()
أضِف طريقة bytes()
إلى الواجهات Request
وResponse
، والتي تعرض
وعدًا يتم حلّه باستخدام Uint8Array. على الرغم من أنّ Request
وResponse
يتضمّنان arrayBuffer()
، لا يمكنك القراءة مباشرةً من مخزن مؤقت. عليك
إنشاء عرض مثل Uint8Array
لقراءته. تعمل طريقة bytes()
على تحسين
سهولة الحصول على نص الطلب والردّ.
الوصول إلى نظام الملفات في Android وWebView
تتيح واجهة برمجة التطبيقات هذه للمطوّرين إنشاء تطبيقات فعّالة تتفاعل مع التطبيقات (غير المخصّصة للويب) الأخرى على جهاز المستخدم باستخدام نظام ملفات الجهاز. بعد أن يمنح المستخدم تطبيقات الويب إذن الوصول، تسمح واجهة برمجة التطبيقات هذه للتطبيق بقراءة التغييرات أو حفظها مباشرةً في الملفات والمجلدات التي اختارها المستخدم. بالإضافة إلى قراءة ملفاتك وكتابتها، توفّر واجهة برمجة التطبيقات هذه إمكانية فتح دليل وتعداد محتوياته، بالإضافة إلى تخزين معرّفات الملفات والأدلة في IndexedDB لاستعادة إمكانية الوصول إلى المحتوى نفسه في وقت لاحق.
إمكانية الوصول إلى نظام الملفات: تم تضمين هذه الميزة في الإصدار 86 من Chrome المخصّص للكمبيوتر المكتبي، وأصبح بإمكانك استخدامها على Android وWebView في الإصدار 132 من Chrome.
تجاهل Strict-Transport-Security لخادم localhost
يمكن أن تتسبّب رؤوس استجابة Strict-Transport-Security
(STS) في حدوث مشاكل في
خوادم الويب على المضيف المحلي لأنّ بروتوكول STS ينطبق على مستوى المضيف على جميع المنافذ. ويؤدي ذلك
إلى حدوث مشاكل في التوافق لدى مطوّري الويب الذين يجرون الاختبارات على الأجهزة المحلية. ويؤثر ذلك أيضًا
في المستخدمين النهائيين الذين يستخدمون حِزم البرامج التي تبدأ عادةً localhost
خوادم الويب لأسباب مؤقتة. على سبيل المثال، إرسال رمز مصادقة
من عملية تسجيل الدخول على الويب إلى حزمة برامج محلية إذا ضبط مستمع محلي واحد Strict-Transport-Security
في استجابة localhost، سيتم تطبيقه على جميع طلبات localhost اللاحقة بغض النظر عن المنفذ.
يحلّ الإصدار 132 من Chrome هذه المشكلة من خلال تجاهل رؤوس Strict-Transport-Security
في الردود الواردة من عناوين URL الخاصة بالخادم المحلي.
حاويات التمرير التي يمكن التركيز عليها باستخدام لوحة المفاتيح
تم إيقاف طرح هذه الميزة (بدءًا من الإصدار 130 من Chrome) بسبب تدهور تسهيل الاستخدام. تم حلّ هذه المشكلة، وسنواصل طرح الميزة مع الإصدار 132 من Chrome.
العنصر النائب لقائمة المسموح بها التلقائية في سياسة أذونات Private State Tokens API
يتم حظر الوصول إلى Private State Token API من خلال ميزات سياسة الأذونات.
يُعدّل الإصدار 132 من Chrome القائمة المسموح بها التلقائية لكل من ميزتَي private-state-token-issuance
وprivate-state-token-redemption
من self
إلى *
(العلامة النائبة).
PushMessageData::bytes()
تحاكي واجهة PushMessageData
واجهة Body
التي تم تعديلها
في وقت سابق من هذا العام باستخدام طريقة bytes()
جديدة، وذلك وفقًا لمبدأ أنّ واجهات برمجة التطبيقات
يجب أن توفّر بشكل عام وحدات تخزين بايتات على أنّها Uint8Arrays
. يعيد Chrome 132 التوافق مع واجهة
Body
من خلال توفير ملحق bytes()
في واجهة PushMessageData
أيضًا.
طلبات البحث المحفوظة في sharedStorage.selectURL
يتيح sharedStorage.selectURL()
الآن حفظ طلبات البحث وإعادة استخدامها على أساس
كل صفحة، حيث يتم تحصيل ميزانيتَي التحميل لكل صفحة في المرة الأولى التي يتم فيها تنفيذ
طلب بحث محفوظ، ولكن ليس في عمليات التنفيذ اللاحقة لطلب البحث المحفوظ أثناءتحميل
الصفحة نفسه. ويتم ذلك باستخدام مَعلمة savedQuery
في
خيارات selectURL()
التي تحدّد اسم طلب البحث.
طرح استثناء لنوافذ المنبثقة ومربّعات الحوار في المستندات غير النشطة
في السابق، كان استدعاء showPopover()
أو showModal()
في نافذة منبثقة أو مربّع حوار
يقع ضمن مستند غير نشط سيؤدي إلى تعذّر التنفيذ بدون إشعار. لن يتم طرح أي استثناء، ولكن بما أنّ المستند غير نشط، لن يتم عرض أي نافذة منبثقة أو مربّع حوار. اعتبارًا من Chrome 132، تؤدي هذه الحالات الآن إلى ظهور InvalidStateError
.
واجهة برمجة التطبيقات WebAuthn Signal API
السماح للأطراف التي تعتمد على WebAuthn بإرسال معلومات عن بيانات الاعتماد الحالية إلى مقدّمي خدمات تخزين بيانات الاعتماد، حتى تتمكّن من تعديل بيانات الاعتماد غير الصحيحة أو التي تم إبطالها أو إزالتها من واجهة المستخدم الخاصة بمقدّم الخدمة والنظام
مزيد من المعلومات حول واجهة برمجة التطبيقات Signal API لمفاتيح المرور على أجهزة Chrome المكتبية
WebGPU: دمج الزخارف العائمة بسعة 32 بت
تتيح ميزة float32-blendable
GPU دمج مواد عرض وحدة معالجة الرسومات بتنسيقات r32float
و
rg32float
وrgba32float
.
WebGPU: إتاحة GPUAdapterInfo من GPUDevice
تعرِض سمة GPUDevice adapterInfo
GPUAdapterInfo
نفسه المستخدَم في كائن
GPUAdapter
.
WebGPU: استخدام عرض الزخرفة
تُضيف هذه السمة حقلًا اختياريًا لإنشاء عرض نسيج WebGPU لطلب مجموعة فرعية من علامات الاستخدام من النسيج المصدر.
يتم تلقائيًا اكتساب استخدام عرض النسيج من النسيج المصدر، ولكن هناك تنسيقات عرض يمكن أن تكون غير متوافقة مع المجموعة الكاملة من الاستخدامات المكتسَبة. من خلال إضافة حقل استخدام إلى عملية إنشاء عرض النسيج، يمكن للمستخدم طلب مجموعة فرعية من استخدامات النسيج المصدر الصالحة لتنسيق العرض ومخصّصة للاستخدام المقصود لعرض النسيج.
يمكن أن تحسِّن عمليات تنفيذ WebGPU أيضًا إنشاء الموارد ذات المستوى المنخفض، و تحسِّن الأداء عند استخدام طرق العرض التي تتضمّن علامات استخدام أكثر تخصيصًا.
عمليات التجربة والتقييم الجديدة
في الإصدار 132 من Chrome، يمكنك تفعيل الإصدارات التجريبية الجديدة التالية.
Document-Isolation-Policy
يسمح Document-Isolation-Policy
للمستند بتفعيل crossOriginIsolation
لنفسه، بدون الحاجة إلى نشر ميزة "التعاون في عرض الإعلانات" أو ميزة "الموافقة على ملفات تعريف الارتباط"، وبغض النظر عن
حالةcrossOriginIsolation
الصفحة. تستند السياسة إلى عملية
عزل. بالإضافة إلى ذلك، سيتم تحميل موارد المستند الفرعية التي لا تستخدم بروتوكول مشاركة الموارد المشتركة المنشأ (CORS) من مصادر متعددة
إما بدون بيانات اعتماد أو يجب أن تتضمّن عنوان CORP.
نصائح صريحة حول عملية الترجمة باستخدام التعليقات السحرية
تتيح لك هذه الميزة إرفاق معلومات عن الدوال التي يجب تحليلها وتحويلها إلى رموز برمجية في ملفات JavaScript. سيتم ترميز المعلومات على أنّها تعليقات سحرية.
عمليات الإيقاف النهائي والإزالة
يُجري هذا الإصدار من Chrome عمليات الإيقاف النهائي والإزالة التالية. يُرجى الانتقال إلى ChromeStatus.com للاطّلاع على قوائم الميزات التي سيتم إيقافها نهائيًا في المستقبل، والميزات التي تم إيقافها نهائيًا في الوقت الحالي، والميزات التي تم إيقافها نهائيًا في السابق.
يزيل هذا الإصدار من Chrome ميزتَين.
لم يعُد "navigator.storage
" EventTarget
تمّ إنشاء navigator.storage
كـ EventTarget
لحدث الضغط على مساحة التخزين،
الذي لم يتجاوز مرحلة النموذج الأوّلي. تتم إزالة هذا الرمز غير القابل للتنفيذ
ونتيجةً لذلك، لن يطيل navigator.storage
مدة EventTarget
.
إزالة واجهات برمجة التطبيقات التي تتضمّن بادئات لعرض الفيديو بملء الشاشةHTMLVideoElement
إيقاف واجهات برمجة التطبيقات التي تتضمّن بادئات لعرض الفيديو بملء الشاشة في HTMLVideoElement نهائيًا من Chrome
وتم استبدالها بواجهة برمجة التطبيقات Element.requestFullscreen()
API التي تم إصدارها لأول مرة بدون بادئة في الإصدار 71 من Chrome في عام 2018. منذ عام 2024، أصبحت واجهات برمجة التطبيقات غير المزوّدة ببادئة متوافقة مع معظم المتصفحات.
تزيل الإصدار 132 من Chrome ما يلي من HTMLVideoElement
:
- سمة
webkitSupportsFullscreen
- سمة
webkitDisplayingFullscreen
- طريقة
webkitEnterFullscreen()
- طريقة
webkitExitFullscreen()
يُرجى ملاحظة اختلاف حالة الأحرف في "S" في FullScreen. - طريقة
webkitEnterFullScreen()
- طريقة
webkitExitFullScreen()
أصبحت هذه الطرق الآن أسماءً بديلة لواجهة برمجة التطبيقات الحديثة فقط. وقد انخفض استخدامه باستمرار على مرّ السنين.