کروم 132

تاریخ انتشار پایدار: 14 ژانویه 2025

مگر اینکه خلاف آن ذکر شده باشد، تغییرات زیر برای انتشار کانال پایدار Chrome 132 برای Android، ChromeOS، Linux، macOS و Windows اعمال می‌شود.

HTML و DOM

برای پاپاورها و دیالوگ ها در اسناد غیرفعال استثنا قرار دهید

پیش از این فراخوانی showPopover() یا showModal() در یک popover یا گفتگو که در یک سند غیرفعال قرار دارد، بی‌صدا با شکست مواجه می‌شود. هیچ استثنایی وجود نخواهد داشت، اما از آنجایی که سند غیرفعال است، هیچ پاپاور یا دیالوگی نشان داده نخواهد شد. از Chrome 132، این موقعیت‌ها اکنون InvalidStateError را ایجاد می‌کنند.

باگ ردیابی #373684393 | ورودی ChromeStatus.com | مشخصات

رویدادهای تغییر دیالوگ

دانستن اینکه چه زمانی عناصر <dialog> باز و بسته می‌شوند، مفید است و popover قبلاً ToggleEvent دارد که با باز یا بسته شدن پاپ‌اور ارسال می‌شود. قبلاً، برای تشخیص زمانی که یک <dialog> باز می‌شود، باید یک ناظر جهش را ثبت می‌کردید تا باز بودن را بررسی کند، با این حال، در جایی که یک رویداد آسان‌تر می‌شود، این کار بسیار زیادی است.

این تغییر شامل همان ToggleEvent است که popovers ارسال می کند، اما برای عناصر <dialog> : وقتی showModal یا show فراخوانی می شود، <dialog> یک ToggleEvent با newState=open ارسال می کند. هنگامی که یک <dialog> بسته می شود (با استفاده از فرم، دکمه یا تماشاگر نزدیک)، باید یک ToggleEvent با newState=closed ارسال کند.

باگ ردیابی #41494780 | ورودی ChromeStatus.com | مشخصات

تصحیح انتخاب isCollapsed در Shadow DOM

انتخاب isCollapsed باید درست برگردد اگر و فقط اگر لنگر و فوکوس یکسان باشند. این باید درست باشد چه انتخاب در داخل یک درخت نور یا سایه به پایان برسد.

نسخه ی نمایشی | باگ ردیابی #40400558 | ورودی ChromeStatus.com | مشخصات

CSS

CSS Anchor Positioning: anchor-size() در خصوصیات inset و margin مجاز می کند

در اصل، anchor-size() فقط در خواص اندازه مجاز بود. مشخصات تغییر کرد تا anchor-size() در insets و margins نیز مجاز کند.

باگ ردیابی #346521300 | ورودی ChromeStatus.com | مشخصات

حالت های نوشتن جانبی CSS

پشتیبانی از کلمات کلیدی sideways-rl و sideways-lr برای ویژگی CSS writing-mode . sideways-rl و sideways-lr برای نوشتن متن غیر CJK به صورت عمودی مفید هستند. آنها برخلاف vertical-rl و vertical-lr رفتارهای مطلوبی برای زبان های CJK ندارند.

حالت نوشتن MDN | باگ ردیابی #40501131 | ورودی ChromeStatus.com | مشخصات

در حال بارگذاری

Fetch: Request.bytes() و Response.bytes()

یک متد bytes() به رابط‌های Request و Response اضافه کنید، که یک وعده را برمی‌گرداند که با Uint8Array حل می‌شود. در حالی که Request و Response دارای یک متد arrayBuffer() هستند، نمی‌توانید مستقیماً از بافر بخوانید. برای خواندن آن باید یک view مانند Uint8Array ایجاد کنید. روش bytes() ارگونومی دریافت بدنه Request و Response را بهبود می بخشد.

باگ ردیابی #340206277 | ورودی ChromeStatus.com | مشخصات

Strict-Transport-Security را برای localhost نادیده بگیرید

هدرهای پاسخ Strict-Transport-Security (STS) می توانند برای سرورهای وب لوکال هاست مشکل ایجاد کنند زیرا STS در سراسر میزبان و در همه پورت ها اعمال می شود. این باعث ایجاد مشکلات سازگاری برای توسعه دهندگان وب در آزمایش محلی می شود. همچنین بر کاربران نهایی که از بسته‌های نرم‌افزاری استفاده می‌کنند که معمولاً سرورهای وب لوکال هاست را به دلایل زودگذر راه‌اندازی می‌کنند، تأثیر می‌گذارد. به عنوان مثال، ارتباط یک نشانه اعتبار از ورود به وب به یک بسته نرم افزاری محلی. اگر یک شنونده محلی Strict-Transport-Security روی یک پاسخ لوکال هاست تنظیم کند، بدون در نظر گرفتن پورت، برای همه درخواست های بعدی لوکال هاست اعمال می شود.

Chrome 132 این مشکل را با نادیده گرفتن سرصفحه‌های Strict-Transport-Security در پاسخ‌های URL‌های میزبان محلی حل می‌کند.

باگ ردیابی #41251622 | ورودی ChromeStatus.com

رسانه ها

همه صفحه ها را ضبط کنید

با استفاده از getAllScreensMedia() از تمام صفحه های متصل به دستگاه عکس بگیرید.

چندین بار فراخوانی getDisplayMedia() به حرکات چندگانه کاربر نیاز دارد، کاربر را مجبور می‌کند تا هر بار صفحه بعدی را انتخاب کند، و به برنامه تضمین نمی‌کند که همه صفحه‌ها انتخاب شده‌اند. متد getAllScreensMedia() در همه این جبهه ها بهبود می یابد.

این ویژگی فقط روی دسکتاپ ارسال می شود.

طراحی سند | باگ ردیابی #40216442 | ورودی ChromeStatus.com | مشخصات

ضبط عنصر

با توجه به ویدئویی MediaStreamTrack که از طریق ابزارهای از قبل موجود برای شروع ضبط برگه به ​​دست آمده است، Element Capture اجازه می دهد تا آهنگ را تغییر دهید تا فقط یک زیردرخت از DOM را که از یک عنصر مشخص شروع می شود، ضبط کند.

API شباهت‌هایی با Region Capture API دارد، اما انعطاف‌پذیری بیشتری برای برنامه‌ها فراهم می‌کند، زیرا محتوای مسدود و مسدود شده هر دو از ضبط حذف می‌شوند.

نسخه ی نمایشی | باگ ردیابی #270230413 | ورودی ChromeStatus.com | مشخصات

API های وب

PushMessageData::bytes()

رابط PushMessageData از رابط Body تقلید می‌کند، که در اوایل سال جاری با متد bytes() جدید اصلاح شد، طبق این اصل که APIها معمولاً باید بافرهای بایت را به عنوان Uint8Arrays بفروشند. Chrome 132 با ارائه دسترسی bytes() در رابط PushMessageData نیز با رابط Body هماهنگ می شود.

MDN PushMessageData: متد bytes() | باگ ردیابی #373336950 | ورودی ChromeStatus.com | مشخصات

ظروف اسکرول قابل فوکوس روی صفحه کلید

عرضه این ویژگی (از Chrome 130) به دلیل رگرسیون دسترسی متوقف شد. این مشکل برطرف شده است و این ویژگی با Chrome 132 به کار خود ادامه می‌دهد.

اسکرول های قابل فوکوس صفحه کلید | باگ ردیابی #40113891 | ورودی ChromeStatus.com | مشخصات

Device Posture API

این API به توسعه دهندگان کمک می کند تا وضعیت فعلی یک دستگاه تاشو را تشخیص دهند. وضعیت دستگاه ، موقعیت فیزیکی است که دستگاه در آن قرار می گیرد و ممکن است علاوه بر زاویه، از حسگرها نیز گرفته شود.

از افزایش قابلیت استفاده از یک وب سایت با پرهیز از ناحیه تا، تا فعال کردن موارد استفاده نوآورانه برای وب، دانستن وضعیت یک دستگاه می تواند به توسعه دهندگان کمک کند تا محتوای خود را برای دستگاه های مختلف تنظیم کنند.

محتوا را می توان مصرف و مرور کرد حتی زمانی که دستگاه صاف نیست، در این صورت ممکن است توسعه دهنده بخواهد بسته به وضعیت وضعیتی که دستگاه در آن استفاده می شود، طرح متفاوتی برای آن ارائه دهد.

Git Repo | باگ ردیابی #40124716 | ورودی ChromeStatus.com | مشخصات

جستجوهای ذخیره شده در sharedStorage.selectURL

sharedStorage.selectURL() اکنون اجازه می‌دهد پرس‌و‌جوها ذخیره شوند و مجدداً بر اساس هر صفحه مورد استفاده قرار گیرند، جایی که دو بودجه بارگذاری هر صفحه در اولین باری که یک کوئری ذخیره شده اجرا می‌شود شارژ می‌شود، اما نه برای اجرای بعدی کوئری ذخیره شده در طول همان بارگذاری صفحه این کار با یک پارامتر savedQuery در گزینه های selectURL() که پرس و جو را نامگذاری می کند، انجام می شود.

باگ ردیابی #367440966 | ورودی ChromeStatus.com | مشخصات

خط مشی مجوزهای API Token State خصوصی ویلدکارت فهرست مجاز پیش‌فرض

دسترسی به Private State Token API توسط ویژگی های Permissions Policy محدود شده است. Chrome 132 فهرست مجاز پیش‌فرض را برای private-state-token-issuance و ویژگی‌های private-state-token-redemption از self به * به‌روزرسانی می‌کند (wildcard).

ورودی ChromeStatus.com | مشخصات

FedCM Mode API و استفاده از سایر API حساب

دو افزونه جدید برای FedCM:

  • حالت : حالت active به وب‌سایت‌ها اجازه می‌دهد با کلیک روی دکمه FedCM را فراخوانی کنند (به عنوان مثال، روی دکمه ورود به IdP کلیک کنید)، که به FedCM نیاز دارد تا تضمین کند که همیشه با یک رابط کاربری قابل مشاهده پاسخ می‌دهد. فراخوانی API FedCM در حالت فعال باعث می‌شود تا وقتی کاربران از سیستم خارج می‌شوند، به Identity Provider (IdP) وارد شوند. همچنین، از آنجایی که حالت فعال در یک ژست کاربر صریح فراخوانی می‌شود، رابط کاربری نیز در مقایسه با رابط کاربری از حالت غیرفعال (که نیازی به ژست کاربر ندارد و می‌توان آن را فراخوانی کرد) برجسته‌تر (مثلاً مرکزی و مدال) است. در بارگذاری صفحه).
  • استفاده از سایر حساب‌ها : با این برنامه افزودنی، یک IdP می‌تواند به کاربران اجازه ورود به حساب‌های دیگر را بدهد.

نسخه ی نمایشی | باگ ردیابی #370694829 | ورودی ChromeStatus.com | مشخصات

دسترسی به سیستم فایل برای Android و WebView

این API به توسعه دهندگان این امکان را می دهد تا با استفاده از سیستم فایل دستگاه، برنامه های قدرتمندی بسازند که با برنامه های دیگر (غیر وب) روی دستگاه کاربر تعامل داشته باشند. پس از اینکه کاربر به یک برنامه وب اجازه دسترسی داد، این API به برنامه اجازه می‌دهد تا تغییرات را مستقیماً در فایل‌ها و پوشه‌های انتخاب شده توسط کاربر بخواند یا ذخیره کند. فراتر از خواندن و نوشتن فایل‌ها، این API توانایی باز کردن دایرکتوری و شمارش محتویات آن و همچنین ذخیره فایل‌ها و دسته‌های دایرکتوری در IndexedDB را برای دسترسی مجدد به همان محتوا فراهم می‌کند.

دسترسی به سیستم فایل روی دسک‌تاپ در Chrome 86 ارسال شد، با Chrome 132 در Android و WebView در دسترس است.

API دسترسی به فایل سیستم | باگ ردیابی #40091667 | ورودی ChromeStatus.com | مشخصات

WebAuthn Signal API

به طرف‌های متکی به WebAuthn اجازه می‌دهد تا اطلاعات مربوط به اعتبارنامه‌های موجود را به ارائه‌دهندگان فضای ذخیره‌سازی اعتبارنامه بازگردانند تا اعتبارنامه‌های نادرست یا باطل شده را بتوان به‌روزرسانی یا از رابط کاربری ارائه‌دهنده و سیستم حذف کرد.

درباره Signal API برای کلیدهای عبور در رایانه رومیزی Chrome بیشتر بیاموزید.

نسخه ی نمایشی | باگ ردیابی #361751877 | ورودی ChromeStatus.com | مشخصات

رندر و گرافیک

WebGPU: ترکیب بافت های شناور 32 بیتی

ویژگی پردازشگر گرافیکی float32-blendable باعث می شود بافت های گرافیکی با فرمت های r32float ، rg32float و rgba32float قابل ترکیب شوند.

باگ ردیابی #369649348 | ورودی ChromeStatus.com | مشخصات

WebGPU: نمایش GPUAdapterInfo از GPUDevice

ویژگی GPUDevice adapterInfo همان GPUAdapterInfo را به عنوان شیء GPUAdapter نشان می دهد.

باگ ردیابی #376600838 | ورودی ChromeStatus.com | مشخصات

WebGPU: استفاده از نمای بافت

یک فیلد اختیاری به ایجاد نمای بافت WebGPU اضافه می کند تا زیر مجموعه ای از پرچم های استفاده را از بافت منبع درخواست کند.

به طور پیش‌فرض، استفاده از نمای بافت از بافت منبع به ارث می‌رسد، اما قالب‌های نمایشی وجود دارند که می‌توانند با مجموعه کامل استفاده‌های ارثی ناسازگار باشند. افزودن یک فیلد استفاده به ایجاد نمای بافت به کاربر این امکان را می دهد که زیرمجموعه ای از کاربردهای بافت منبع را درخواست کند که با فرمت view معتبر هستند و مختص استفاده مورد نظر وی از نمای بافت هستند.

پیاده‌سازی WebGPU همچنین می‌تواند ایجاد منابع سطح پایین را بهینه کند و عملکرد را هنگام استفاده از نماهایی با پرچم‌های استفاده تخصصی‌تر بهبود بخشد.

باگ ردیابی #363903526 | ورودی ChromeStatus.com | مشخصات

آزمایش های مبدا

نکات کامپایل صریح با نظرات جادویی

این ویژگی به شما امکان می دهد اطلاعاتی در مورد اینکه کدام توابع باید مشتاقانه در فایل های جاوا اسکریپت تجزیه و کامپایل شوند را پیوست کنید. اطلاعات به عنوان نظرات جادویی کدگذاری می شود.

Origin Trial | توضیح دهنده | باگ ردیابی #42203853 | ورودی ChromeStatus.com

Document-Isolation-Policy

Document-Isolation-Policy به یک سند اجازه می دهد تا crossOriginIsolation بدون نیاز به استقرار COOP یا COEP و بدون توجه به وضعیت crossOriginIsolation برای خود فعال کند. این سیاست با انزوا فرآیند پشتیبانی می شود. علاوه بر این، منابع فرعی سند غیر CORS یا بدون اعتبار بارگیری می شوند یا باید سرآیند CORP داشته باشند.

Origin Trial | باگ ردیابی #333029146 | ورودی ChromeStatus.com | مشخصات

محرومیت ها و حذف ها

navigator.storage یک EventTarget برای رویداد Storage Pressure بود که هرگز از مرحله نمونه اولیه عبور نکرد. این کد مرده در حال حذف شدن است و در نتیجه، navigator.storage دیگر EventTarget گسترش نخواهد داد.

ورودی ChromeStatus.com | مشخصات

APIهای تمام صفحه پیشوند HTMLVideoElement حذف کنید

APIهای تمام صفحه پیشوند HTMLVideoElement از Chrome منسوخ شده اند.

آنها با Element.requestFullscreen() API جایگزین شدند، که برای اولین بار بدون پیشوند در کروم 71 در سال 2018 ارسال شد. از سال 2024، اکثر مرورگرها چند سالی است که از APIهای بدون پیشوند پشتیبانی می کنند.

Chrome 132 موارد زیر را از HTMLVideoElement حذف می کند:

  • ویژگی webkitSupportsFullscreen .
  • ویژگی webkitDisplayingFullscreen .
  • متد webkitEnterFullscreen()
  • متد webkitExitFullscreen() به حروف بزرگ «S» در تمام صفحه توجه کنید.
  • متد webkitEnterFullScreen()
  • متد webkitExitFullScreen()

این روش ها اکنون فقط نام مستعار برای API مدرن هستند. استفاده از آنها در طول سال ها به طور پیوسته کاهش یافته است.

ورودی ChromeStatus.com

در ادامه مطلب

به دنبال بیشتر هستید؟ این منابع اضافی را بررسی کنید.

گوگل کروم را دانلود کنید

Chrome را برای Android ، Desktop یا iOS دانلود کنید.