‫Chrome 126

تاریخ انتشار نسخه پایدار: ۱۱ ژوئن ۲۰۲۴

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

CSS

انتقال‌های نمای بین‌سندی برای پیمایش‌های با مبدأ یکسان

قبلاً برای استفاده از View Transitions API باید معماری وب‌سایت خود را به SPA تغییر می‌دادید. دیگر این‌طور نیست. اکنون انتقال‌های نما به‌طور پیش‌فرض برای پیمایش‌های هم‌مبدأ فعال است. می‌توانید بین دو سند مختلف که مبدأ یکسانی دارند، انتقال نما ایجاد کنید.

برای فعال کردن انتقال نمای بین‌سندی، هر دو طرف باید موافقت کنند. برای انجام این کار، از قانون at @view-transition استفاده کنید و توصیف‌گر navigation را روی auto تنظیم کنید.

@view-transition {
  navigation: auto;
}

انتقال‌های نمای بین‌سندی از همان واحدهای سازنده و اصول انتقال‌های نمای درون‌سندی استفاده می‌کنند. عناصری که view-transition-name روی آن‌ها اعمال شده است ضبط می‌شوند و می‌توانید پویانمایی‌ها را بااستفاده از پویانمایی‌های CSS سفارشی‌سازی کنید.

انتقال‌های روان با View Transition API | ردیابی اشکال شماره ۱۳۷۲۵۸۴ | ورودی ChromeStatus.com | مشخصات

میاناهای برنامه‌سازی کاربردی وب

افزونه trigger-rumble در Gamepad API

میانای GamepadHapticActuator را گسترش می‌دهد تا قابلیت لرزش ماشه را در وب برای دسته‌های بازی سازگار نمایش دهد. این افزونه به برنامه‌های وب که از Gamepad API استفاده می‌کنند اجازه می‌دهد تا ماشه‌های دستگاه‌های دسته بازی را که به این قابلیت مجهز هستند نیز بلرزانند.

ردیابی اشکال شماره ۴۰۸۳۴۱۷۵ | ورودی ChromeStatus.com | مشخصات

برنامه‌های وب برگه‌دار ChromeOS

برنامه‌های وب پیشرو در پنجره مستقل فقط می‌توانند یک صفحه را در هر زمان باز کنند. برخی‌از برنامه‌ها انتظار دارند کاربران چندین صفحه را به‌طور هم‌زمان باز کنند. حالت زبانه‌دار نوار زبانه‌ای به برنامه‌های وب مستقل در ChromeOS اضافه می‌کند که امکان باز کردن هم‌زمان چند زبانه را فراهم می‌کند.

این ویژگی حالت نمایش جدیدی از "tabbed" و فیلد مانیفست جدیدی را اضافه می‌کند تا سفارشی‌سازی نوار برگه را امکان‌پذیر کند.

ردیابی اشکال شماره ۴۰۵۹۸۹۷۴ | ورودی ChromeStatus.com | مشخصات

روش toJSON() برای GeolocationCoordinates و GeolocationPosition

روش‌های .toJSON() را به میاناهای GeolocationCoordinates و GeolocationPosition اضافه می‌کند. این کار باعث فعال شدن سریال‌سازی این اشیاء با JSON.stringify() می‌شود.

ورودی ChromeStatus.com

میانای برتر Web IDL مربوط به WebGLObject

این ویژگی نوع WebGLObject را در همان زمینه‌هایی که WebGL API در آن‌ها آشکار می‌شود (در رشته اصلی و کارگران) آشکار می‌کند.

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

درحال فعال کردن مجدد میانای برنامه‌سازی کاربردی CloseWatcher و بستن درخواست‌های <dialog> و popover=""

CloseWatcher API امکان رسیدگی به درخواست‌های بستن را به‌صورت یکنواخت فراهم می‌کند، مانند کلید ESC در پلاتفرم‌های رایانه یا اشاره یا دکمه برگشت در Android. این ویژگی دراصل در Chrome 120 ارائه شد، اما به‌دلیل تعامل غیرمنتظره با <dialog> غیرفعال شد. این ویژگی در Chrome 126 پس‌از اعمال برخی بهبودها در رفتار آن برای به‌حداقل رساندن مشکلات مشاهده‌شده در آنجا، دوباره فعال شده است.

نسخه نمایشی | ردیابی اشکال شماره ۱۱۷۱۳۱۸ | ورودی ChromeStatus.com

Attribution Reporting API: خط‌مشی ارجاع‌دهنده برای درخواست‌های attributionsrc

با درخواست‌های attributionsrc مانند سایر زیرمنابع موجود در صفحه رفتار می‌شود.

قبلاً وقتی میانای برنامه‌سازی کاربردی ازطریق استفاده از اِسناد attributionsrc به‌عنوان بخشی از عناصر مختلف html (مانند <img>، <script>، <a>، یا window.open) فراخوانی می‌شد، ویژگی خط‌مشی ارجاع‌دهنده سطح منبع را که در عنصر <html> تنظیم شده بود نادیده می‌گرفت.

با این تغییر، درخواست attributionsrc اکنون همان خط‌مشی ارجاع‌دهنده سطح منبع را که در <img>، <script>، <a>، یا window.open تنظیم شده است اعمال خواهد کرد.

این کار به فناوری‌های تبلیغات امکان می‌دهد کنترل بیشتری بر این داشته باشند که آیا می‌خواهند درباره اطلاعات ارجاع‌دهنده در درخواست‌های attributionsrc خود محدودیت بیشتر یا کمتری اعمال کنند یا نه.

ورودی ChromeStatus.com

رسانه

پشتیبانی از محتوی MP4 برای MediaRecorder

پشتیبانی از ادغام صدا و ویدیو در محفظه‌های MP4 با MediaRecorder را اضافه می‌کند.

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

پارامترهای OpusEncoderConfig signal و application

پارامترهای OpusEncoderConfig.signal و OpusEncoderConfig.application مستقیماً به دکمه‌های رمزگذار خاص پیاده‌سازی نگاشت می‌شوند. این ویژگی‌ها به نویسندگان وب اجازه می‌دهند تا نکاتی را درباره نوع داده‌ای که کدگذاری می‌شود و زمینه‌ای که داده در آن استفاده می‌شود ارائه دهند.

signal می‌تواند یکی از "auto"، "music"، "voice" باشد. این تنظیمات کدبند را برای بهترین عملکرد در کدبندی نوع مشخصی از داده‌ها پیکربندی می‌کند. application می‌تواند یکی از "voip"، "audio"، "lowdelay" باشد. این نمایه رمزگذار را به‌گونه‌ای پیکربندی می‌کند که به قابل‌فهم بودن گفتار، بازتولید وفادارانه ورودی اصلی، یا حداقل تأخیر اولویت دهد.

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

JavaScript

پشتیبانی visualViewport onscrollend

رویداد جاوا اسکریپت scrollend فعال می‌شود تا نشان دهد عملیات پیمایش به پایان رسیده است.

میانای visualViewport شامل یک گرداننده رویداد onscrollend است که باید هنگام پایان عملیات پیمایش در visualViewport فراخوانده شود. ‫Chrome ازقبل از افزودن شنونده رویداد scrollend ازطریق visualViewport.addEventListener("scrollend") پشتیبانی می‌کند. این کار فقط امکان افزودن شنونده رویداد بااستفاده از visualViewport.onscrollend را فراهم می‌کند.

ردیابی اشکال شماره ۳۲۵۳۰۷۷۸۵ | ورودی ChromeStatus.com

حریم خصوصی

تراز کردن navigator.cookieEnabled با مشخصات

navigator.cookieEnabled درحال‌حاضر نشان می‌دهد که آیا «نماینده کاربر تلاش می‌کند کوکی‌ها را مدیریت کند» یا نه. تغییری در Chrome که به‌عنوان بخشی از منسوخ شدن کوکی طرف سوم (3PCD) ارائه می‌شود، باعث می‌شود که نشان دهد آیا دسترسی به کوکی پارتیشن‌بندی‌نشده امکان‌پذیر است یا نه (باعث می‌شود در اکثر iframeهای بین‌سایتی مقدار false برگرداند). باید رفتار قبلی navigator.cookieEnabled را که فقط نشان می‌داد کوکی‌ها برای سایت فعال یا غیرفعال هستند بازیابی کنیم و برای نشان دادن اینکه آیا دسترسی به کوکی‌های پارتیشن‌بندی‌نشده امکان‌پذیر است یا نه، به عملکرد بین‌فروشنده‌ای document.hasStorageAccess تکیه کنیم.

ردیابی اشکال شماره ۳۳۵۵۵۳۵۹۰ | ورودی ChromeStatus.com | مشخصات

دسترس‌پذیری

پشتیبانی از «چارچوب دسترس‌پذیری خودکارسازی واسط کاربر» در Windows

برنامه‌های کمکی مدرن در Microsoft Windows از چارچوب دسترس‌پذیری «خودکارسازی واسط کاربر» پلاتفرم برای تعامل با واسط‌های کاربر برنامه‌های دیگر استفاده می‌کنند. تاکنون، Chromium از چارچوب قدیمی‌تر Microsoft Active Accessibility (MSAA) و IAccessible2 (IA2) برای این منظور پشتیبانی می‌کرد که منجر به بروز مشکلاتی در ابزارهای دسترس‌پذیری در Windows می‌شد.

برای حل این مشکل، Microsoft با تیم Chrome همکاری کرده است تا از چارچوب «خودکارسازی واسط کاربر» (UIA) مستقیماً در Windows پشتیبانی کند و ارتباط ابزارهای دسترس‌پذیری با مرورگر را آسان‌تر کند. عرضه تدریجی نسخه پایدار را از Chrome نسخه ۱۲۶ شروع خواهیم کرد. این کار باعث می‌شود «دسترسی صوتی» در همه مرورگرهای مبتنی بر Chromium کار کند و تجربه کاربری را برای همه ابزارهای دسترس‌پذیری مبتنی بر UIA، مثل «راوی» و «ذره‌بین»، بهبود می‌بخشد.

معرفی پشتیبانی از UIA در Windows

آزمایش‌های معرفی ویژگی جدید

‫FedCM به‌عنوان نشان اعتماد برای Storage Access API

‫FedCM و Storage Access API را با تبدیل کردن اعطای FedCM قبلی به دلیلی معتبر برای تأیید خودکار درخواست دسترسی به فضای ذخیره‌سازی تطبیق می‌دهد.

وقتی کاربری اجازه استفاده از هویت خود را با «ارائه‌دهنده هویت» (IdP) طرف سوم در «طرف متکی» (RP) اعطا می‌کند، بسیاری از «ارائه‌دهندگان هویت» برای عملکرد صحیح و ایمن به کوکی‌های طرف سوم نیاز دارند. هدف این پیشنهاد برآورده کردن این الزام به‌صورت خصوصی و ایمن ازطریق به‌روزرسانی بررسی‌های اجازه Storage Access API (SAA) است تا نه‌تنها اعطای اجازه داده‌شده توسط درخواست دسترسی به فضای ذخیره‌سازی را بپذیرد، بلکه اعطای اجازه داده‌شده توسط درخواست FedCM را نیز بپذیرد.

یکی از ویژگی‌های کلیدی این سازوکار محدود کردن اعطای اجازه به مواردی است که صریحاً توسط «طرف تکیه‌کننده» ازطریق خط‌مشی اجازه‌های FedCM مجاز شده‌اند. این کار کنترل هر فریم را برای «طرف تکیه‌کننده» اعمال می‌کند و از نظارت غیرفعال توسط «ارائه‌دهنده هویت» فراتر از قابلیت‌هایی که FedCM قبلاً اعطا کرده است جلوگیری می‌کند.

آزمایش معرفی ویژگی جدید | توضیح‌دهنده | ورودی ChromeStatus.com

انصراف از پیش‌نمایش رسانه

این آزمایش معرفی ویژگی جدید معکوس، سایت‌ها را از راه‌اندازی «پیش‌نمایش‌های رسانه» مستثنی می‌کند.

‫Chrome پیش‌نمایش‌های هم‌زمان از ورودی دوربین و میکروفون را در زمانی که وب‌سایت‌ها اجازه دوربین و میکروفون را درخواست می‌کنند ارائه می‌دهد. این موارد ازطریق pageinfo سایت نیز دردسترس خواهد بود.

علاوه‌براین، کاربرانی که چند دستگاه دارند می‌توانند هنگام درخواست اجازه‌ها، دوربین و میکروفون را انتخاب کنند، مگراینکه سایت دستگاه خاصی را ازطریق getUserMedia() درخواست کرده باشد.

آزمایش معرفی ویژگی جدید | اشکال ردیابی شماره ۳۳۰۷۶۲۴۸۲ | ورودی ChromeStatus.com

‫FedCM: Continuation API،‏ Parameters API،‏ Fields API،‏ Multiple configURLs،‏ Custom Account Labels

توسعه‌دهندگان می‌توانند در آزمایش معرفی ویژگی جدید برای مجموعه‌ای از ویژگی‌های FedCM رایانه شرکت کنند که می‌تواند شامل مجوزدهی باشد. این بسته شامل FedCM Continuation API،‏ Parameter API،‏ Fields API،‏ Multiple configURLs، و Custom Account Labels است. این کار تجربه شبیه به جریان مجوز OAuth را فعال می‌کند که شامل کادر گفتگوی اجازه ارائه‌شده توسط IdP است.

اشکال ردیابی شماره ۴۰۲۶۲۵۲۶ | ورودی ChromeStatus.com

کنترل اجازه جاسازی‌شده در صفحه

عنصر HTML جدیدی ارائه دهید که با جریان اجازه تعامل داشته باشد.

درحال‌حاضر پیام‌واره اجازه مستقیماً از جاوا اسکریپت راه‌اندازی می‌شود بدون اینکه نماینده کاربر سیگنال قوی‌ای از قصد کاربر داشته باشد. داشتن عنصر درون‌محتوایی که کاربر از آن برای راه‌اندازی جریان اجازه استفاده می‌کند، باعث بهبود تجربه کاربری پیام‌واره اجازه برای کاربران و همچنین مسیر بازیابی از وضعیت اجازه «ردشده» برای سایت‌ها می‌شود.

ورودی ChromeStatus.com

منسوخ شدن و حذف

منسوخ و حذف کردن نحو «assert» در عبارت وارد کردن

منسوخ کردن و برداشتن کلیدواژه assert به‌نفع کلیدواژه جدید with در نحو مشخصه وارد کردن.

یعنی import m from 'foo' assert { type: 'json' } اکنون SyntaxError را نشان می‌دهد و توسعه‌دهندگان باید به import m from 'foo' with { type: 'json' } تغییر دهند.

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

مطالعه بیشتر

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

بارگیری Google Chrome

Chrome را برای Android، رایانه، یا iOS بارگیری کنید.