کروم ۱۴۶

تاریخ انتشار پایدار: ۱۰ مارس ۲۰۲۶

مگر اینکه خلاف آن ذکر شده باشد، تغییرات زیر در مورد نسخه پایدار کانال کروم ۱۴۶ برای اندروید، کروم او اس، لینوکس، مک او اس و ویندوز اعمال می‌شود.

سی‌اس‌اس و رابط کاربری

انیمیشن‌های اسکرول شونده

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

یک الگوی رایج در صفحات وب، شروع یک انیمیشن هنگام رسیدن به موقعیت اسکرول است. توسعه‌دهندگان اغلب این کار را با استفاده از جاوا اسکریپت انجام می‌دهند تا به صورت دستی تشخیص دهند که یک عنصر در نمای کانتینر اسکرول آن قرار دارد و یک انیمیشن مربوطه را شروع کنند (به عنوان مثال، آن عنصر را به نمای مورد نظر بکشند). بسیاری از این موارد استفاده به اطلاعات ارائه شده به صورت اعلانی متکی هستند. این ویژگی به شما امکان می‌دهد چنین تعاملاتی را به صورت اعلانی با CSS ایجاد کنید، که به عامل کاربر اجازه می‌دهد این تعامل را به یک نخ کارگر منتقل کند. API همچنین شامل رابط‌های جاوا اسکریپت است که به شما امکان می‌دهد این ویژگی را علاوه بر انیمیشن‌های CSS، به انیمیشن‌های وب نیز گسترش دهید.

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

ویژگی trigger-scope

ویژگی trigger-scope به شما امکان می‌دهد نام animation triggers اعلام شده توسط trigger-instantiating properties را محدود کنید.

Trigger-instantiating properties ، برای مثال، timeline-trigger ، نام‌هایی را اعلام می‌کنند که ویژگی animation-trigger می‌تواند برای اتصال انیمیشن‌ها به تریگرها به آنها ارجاع دهد. با این حال، این نام‌ها به طور پیش‌فرض سراسری هستند (شبیه به anchor-name )، و اغلب محدود کردن قابلیت مشاهده نام‌ها برای جداسازی تعاملات انیمیشن با تریگر مفید است.

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

meta name="text-scale"

اندازه فونت پیش‌فرض root element متناسب با تنظیمات مقیاس متن سیستم عامل و مرورگر تغییر می‌کند. این به صفحاتی که از بهترین شیوه‌ها در مورد font-relative units پیروی می‌کنند (یعنی rem و em برای اندازه فونت و عناصر صفحه که با تنظیمات اندازه متن کاربر سازگار می‌شوند استفاده می‌کنند) اجازه می‌دهد تا به تنظیمات مقیاس متن سطح سیستم عامل کاربر احترام بگذارند. این همچنین مکانیسم‌های مبتنی بر مرورگر موجود (یعنی بزرگنمایی تمام صفحه در ویندوز) و اکتشافات (یعنی اندازه‌گذاری خودکار متن در موبایل) را غیرفعال می‌کند. می‌توانید به مرورگر سیگنال دهید که صفحه به گونه‌ای ساخته شده است (یعنی با rem و em ) که به خوبی در تنظیمات اندازه فونت مختلف انتخاب شده توسط کاربر تغییر می‌کند. مشابه env(preferred-text-scale) که راهی برای دسترسی به مقیاس متن فراهم می‌کند، این API با فعال کردن مقیاس‌بندی با استفاده از اندازه فونت پیش‌فرض root element و غیرفعال کردن مقیاس‌بندی خودکار متن، این قابلیت را گسترش می‌دهد.

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

رجیستری عنصر سفارشی محدود شده

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

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

قابلیت‌ها

پر کردن targetURL در حین مدیریت فایل

پیاده‌سازی Launch Handler اکنون تضمین می‌کند که LaunchParams.targetURL هنگام راه‌اندازی یک PWA با مدیریت فایل، پر می‌شود. قبل از این تغییر، وقتی یک راه‌اندازی فایل به یک پنجره موجود هدایت می‌شد، این ویژگی تهی بود. این تغییر تضمین می‌کند که URL از فیلد action مانیفست (همان URL که سند در حال حاضر باید بارگذاری کند) برای مصرف‌کننده launchQueue در دسترس باشد.

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

توقف صف‌بندی مجدد LaunchParams در بارگذاری مجدد

جلوگیری از ارسال مجدد آخرین LaunchParams (شامل هندل‌های فایل) launchQueue هنگام بارگذاری مجدد صفحه توسط کاربر. پیش از این، رفرش صفحه، مصرف‌کننده راه‌اندازی را دوباره با داده‌های راه‌اندازی اولیه فعال می‌کرد. این تغییر تضمین می‌کند که بارگذاری مجدد به عنوان یک ناوبری استاندارد به جای یک "اجرای مجدد" در نظر گرفته شود و launchQueue با فایل‌های تکراری پر نخواهد شد، مگر اینکه یک رویداد راه‌اندازی فایل جدید رخ دهد.

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

دام

API ناوبری: اضافه کردن post-commit handler از precommit

هنگام رهگیری ناوبری‌ها با رویداد navigate ، precommitHandlers و post-commit handlers معمولی به طور جداگانه ارسال می‌شوند.

این روش زمانی که فقط یکی از این دو وجود دارد، به خوبی کار می‌کند، اما زمانی که جریان شامل یک precommitHandler باشد که به یک post-commit handler منتهی می‌شود، می‌تواند دست و پا گیر باشد.

این افزونه یک بهبود ارگونومیک کوچک است که به شما امکان می‌دهد یک هندلر پس از کامیت را هنگام فراخوانی یک هندلر پیش از کامیت ثبت کنید.

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

گرافیک

WebGPU: بافت و نمونه‌برداری

یک ویژگی زبانی به WGSL، texture_and_sampler_let ، اضافه کنید که به شما امکان می‌دهد اشیاء texture و sampler را در یک اعلان let در WGSL ذخیره کنید.

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

WebGPU: پیوست‌های گذرا

این ویژگی، پس از اولین انتشار در مرورگر، به مشخصات WebGPU عملکردی اضافه می‌کند.

یک TRANSIENT_ATTACHMENT GPUTextureUsage جدید به شما امکان می‌دهد پیوست‌هایی ایجاد کنید که اجازه می‌دهند عملیات رندر در حافظه کاشی باقی بماند و از ترافیک VRAM و به طور بالقوه از تخصیص VRAM برای بافت‌ها جلوگیری شود.

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

حالت سازگاری با WebGPU

این حالت، زیرمجموعه‌ای از API WebGPU را اضافه می‌کند که می‌تواند APIهای گرافیکی قدیمی‌تر، مانند OpenGL و Direct3D11 را اجرا کند. با انتخاب این حالت و رعایت محدودیت‌های آن، می‌توانید دسترسی برنامه‌های WebGPU خود را به بسیاری از دستگاه‌های قدیمی‌تر که APIهای گرافیکی مدرن و صریحی که WebGPU اصلی به آن نیاز دارد، ندارند، گسترش دهید. برای برنامه‌های ساده، تنها تغییر مورد نیاز، مشخص کردن featureLevel compatibility هنگام فراخوانی requestAdapter است. برای برنامه‌های پیشرفته‌تر، ممکن است برخی اصلاحات برای تطبیق با محدودیت‌های این حالت ضروری باشد. از آنجایی که حالت سازگاری یک زیرمجموعه است، برنامه‌های حاصل نیز برنامه‌های WebGPU Core معتبر هستند و حتی روی مرورگرهایی که از حالت سازگاری پشتیبانی نمی‌کنند، اجرا می‌شوند.

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

جاوا اسکریپت

توالی‌یابی تکرارشونده

یک پیشنهاد TC39 برای ایجاد iterators با ترتیب‌گذاری iterators موجود. این مورد Iterator.concat ( ...items ) را معرفی می‌کند.

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

مداخله در مجوزهای گزینشی

وقتی به یک وب‌سایت اجازه دسترسی به یک API قدرتمند (مثلاً Bluetooth ، Camera ، Clipboard ، DisplayCapture ، Geolocation ، Microphone ، Serial و USB ) را می‌دهید، رضایت شما برای سایت در نظر گرفته شده است، نه لزوماً برای هر اسکریپت شخص ثالثی که در صفحه اجرا می‌شود. به طور خاص، اسکریپت‌های تبلیغاتی جاسازی‌شده که در فریم اصلی یا iframe های با منشاء یکسان اجرا می‌شوند، می‌توانند از مجوز صفحه برای دسترسی فرصت‌طلبانه به این داده‌های حساس استفاده کنند. ممکن است شما از دسترسی یک تبلیغ به اطلاعات خود آگاه نباشید.

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

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

حفظ مقادیر dropEffect از dragover به drop

HTML5 Drag and Drop API به برنامه‌های وب اجازه می‌دهد تا عملیات کشیدن و رها کردن را از طریق مجموعه‌ای از رویدادها مدیریت کنند: dragstart ، dragenter ، dragover ، dragleave ، drop و dragend . در طول این رویدادها، ویژگی dataTransfer.dropEffect نشان می‌دهد که کدام عملیات ( copy ، move ، link یا none ) باید انجام شود.

طبق HTML5 specification ، مقدار dropEffect که توسط برنامه‌های وب در طول آخرین رویداد dragover تنظیم شده است، باید در رویداد drop بعدی حفظ و در دسترس باشد.

با این حال، مرورگرهای مبتنی بر Chromium قبل از اجرای رویداد drop ، مقدار dropEffect برنامه وب را با عملیات مذاکره شده خود مرورگر بازنویسی می‌کردند، که این امر انطباق با مشخصات را نقض می‌کرد و کنترل شما بر رفتار کشیدن و رها کردن را محدود می‌کرد. این رفتار اکنون تغییر کرده است.

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

چندرسانه‌ای

API آمار پخش برای WebAudio

این ویژگی یک ویژگی AudioContext.playbackStats اضافه می‌کند که یک شیء AudioPlaybackStats را برمی‌گرداند. این شیء آمار پخش صدا، به عنوان مثال، average latency ، minimum/maximum latency ، underrun duration و underrun count را ارائه می‌دهد. این API به برنامه‌های وب اجازه می‌دهد تا کیفیت پخش صدا را رصد کرده و اشکالات را تشخیص دهند.

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

شبکه

حفظ پارامتر نوع MIME URL داده

MIME type parameters (برای مثال، charset ، boundary ) را در هدرهای Content-Type همانطور که در Fetch Standard مشخص شده است، حفظ کنید.

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

عملکرد

LCP: مطابقت رفتار مشخص شده برای انتشار کاندیداها

الگوریتم LCP اکنون به جای بزرگترین تصویر در حال انتظار اما هنوز رنگ‌آمیزی نشده، کاندیداها را بر اساس بزرگترین تصویر رنگ‌آمیزی شده منتشر می‌کند. این ممکن است باعث شود کاندیداهای میانی بیشتری به جدول زمانی عملکرد منتشر شوند.

در هر فریم انیمیشن، پس از نمایش آن، الگوریتم LCP در صورت وجود بزرگترین متن یا تصویر جدید که در آن فریم نقاشی شده باشد، یک کاندید جدید (حداکثر یکی) را به جدول زمانی عملکرد منتشر می‌کند. این الگوریتم همچنین "بزرگترین تصویر در انتظار" را که بزرگترین تصویر در حال بارگذاری است، ردیابی می‌کند و از اندازه آن تصویر برای تعیین اینکه آیا کاندید جدید بزرگترین است یا خیر، استفاده می‌کند. این بدان معناست که یک تصویر بزرگ با بارگذاری آهسته می‌تواند از انتشار کاندیدهای LCP متوسط ​​​​جلوگیری کند و این کاندیدها اغلب اطلاعات مفیدی را برای شما فراهم می‌کنند تا پیشرفت بارگذاری را درک کنید.

این رفتار در طول Interop 2025 به عنوان یک تفاوت با سایر موتورها پدیدار شد و تیم موافقت کرد که بر اساس مجموعه عناصر تصویر و متن نقاشی شده برای آن فریم، حداکثر یک کاندید را در هر فریم منتشر کند.

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

امنیت

API ضدعفونی کننده

API ضدعفونی‌کننده راهی برای حذف محتوایی که ممکن است اسکریپت را از محتوای HTML دلخواه و ارائه شده توسط کاربر اجرا کند، ارائه می‌دهد. هدف، آسان‌تر کردن ساخت برنامه‌های وب عاری از XSS است.

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

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

وب‌ان‌ان

WebNN به برنامه‌ها و چارچوب‌های وب اجازه می‌دهد تا از سرویس‌های بومی سیستم عامل برای یادگیری ماشین و قابلیت‌های سخت‌افزاری اساسی موجود در رایانه شما برای پیاده‌سازی تجربیات یادگیری ماشینی سازگار، کارآمد و قابل اعتماد در وب استفاده کنند.

نسخه آزمایشی Origin | باگ ردیابی شماره ۴۰۲۰۶۲۸۷ | ورودی ChromeStatus.com | مشخصات

رابط برنامه‌نویسی عملکرد پردازنده

این API اطلاعاتی در مورد قدرت دستگاه شما را افشا می‌کند. این API برنامه‌های وب را هدف قرار می‌دهد که از این اطلاعات برای ارائه یک تجربه کاربری بهبود یافته استفاده می‌کنند، احتمالاً در ترکیب با API Compute Pressure که اطلاعاتی در مورد فشار یا میزان استفاده از CPU دستگاه ارائه می‌دهد و به برنامه‌ها اجازه می‌دهد تا به تغییرات فشار CPU واکنش نشان دهند.

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

قوانین حدس و گمان: فیلد form_submission

این، سینتکس speculation rules گسترش می‌دهد و به شما امکان می‌دهد فیلد form_submission را برای prerender مشخص کنید.

این فیلد مرورگر را هدایت می‌کند تا prerender به عنوان ارسال فرم آماده کند، بنابراین می‌تواند توسط ناوبری‌های ارسال فرم واقعی فعال شود. برای مثال، یک فرم جستجوی ساده منجر به ناوبری درخواست GET با /search?q=XXX می‌شود؛ توسعه‌دهندگان وب درخواست پشتیبانی از این قابلیت را داده‌اند.

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

گروه کانونی

ویژگی Focusgroup با استفاده از کلیدهای جهت‌نمای صفحه‌کلید، پیمایش فوکوس صفحه‌کلید را در میان مجموعه‌ای از عناصر قابل فوکوس تسهیل می‌کند.

برای کسب اطلاعات بیشتر در مورد گروه کانونی، به درخواست بازخورد توسعه‌دهنده: گروه کانونی مراجعه کنید.

نسخه آزمایشی Origin | باگ ردیابی شماره ۱۲۸۶۱۲۷ | ورودی ChromeStatus.com | مشخصات