نسخه بتای کروم ۱۴۶

منتشر شده: ۱۱ فوریه ۲۰۲۶

مگر اینکه خلاف آن ذکر شده باشد، این تغییرات برای آخرین نسخه کانال بتای کروم برای اندروید، ChromeOS، لینوکس، macOS و ویندوز اعمال می‌شود. برای اطلاعات بیشتر در مورد این ویژگی‌ها، به لینک‌های ارائه شده یا لیست موجود در ChromeStatus.com مراجعه کنید. آخرین نسخه را برای دسکتاپ از Google.com یا برای اندروید از فروشگاه Google Play دانلود کنید.

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

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

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

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

برای اطلاعات بیشتر به CSS مراجعه کنید. انیمیشن‌های اسکرولی در راه هستند!

ویژگی trigger-scope

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

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

محدوده زمانی با نام "scroll"

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

API انیمیشن‌های اسکرول-رانده، ViewTimelines را معرفی کرد و محدوده‌هایی را نامگذاری کرد که به بخش‌هایی از ViewTimeline اشاره دارند که محدوده انیمیشن را تعریف می‌کنند.

با این حال، تمام محدوده‌های نامگذاری شده‌ی ارائه شده به بخشی از ViewTimeline که موضوع آن قابل مشاهده است، محدود شده بودند. نویسندگان اکنون می‌توانند به کل محدوده‌ی اسکرول که در زیر خط زمانی قرار دارد، اشاره کنند. این ویژگی یک محدوده‌ی نامگذاری شده‌ی scroll را به مجموعه‌ی موجود ( entry ، exit ، cover ، contain ) اضافه می‌کند.

پشتیبانی از ویژگی تورفتگی text-indent ) برای حالت‌های hanging و each-line

دو کلمه کلیدی اختیاری برای ویژگی text-indent قابلیت و کاربرد آن را افزایش می‌دهند.

کلمه کلیدی hanging میزان تورفتگی را به hanging تغییر می‌دهد، به این معنی که تمام خطوط به جز خط اول تورفتگی دارند.

کلمه کلیدی each-line باعث می‌شود که تورفتگی نه تنها روی خط اول، بلکه روی هر خط پس از شکست خط اجباری نیز تأثیر بگذارد.

API های وب

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

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

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

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

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

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

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

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

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

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

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

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

Intl.Locale.prototype.variants

Intl.Locale.prototype.variants را اضافه می‌کند و همچنین انواع موجود در option bag در سازنده‌ی Intl.Locale را می‌پذیرد.

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

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

meta name="text-scale"

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

مقادیر dropEffect را از رویدادهای dragover تا drop حفظ کنید

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

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

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

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

پارامترهای نوع MIME (برای مثال، مجموعه کاراکتر، مرز) را در هدرهای Content-Type URL داده طبق استاندارد Fetch حفظ می‌کند.

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

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

آزمایش‌های منشأ جدید

در کروم ۱۴۶، می‌توانید در این آزمایش‌های جدید با منشأ جدید شرکت کنید.

وب‌ان‌ان

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

برای دوره آزمایشی WebNN ثبت نام کنید.