کروم 107 بتا

موارد اضافی به API ضبط صفحه نمایش، درون‌یابی ویژگی‌های قالب شبکه CSS و موارد دیگر.

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

درونیابی ویژگی‌های grid-template CSS

در CSS Grid، ویژگی‌های grid-template-columns و grid-template-rows به توسعه‌دهندگان اجازه می‌دهند تا به ترتیب نام خطوط و اندازه ستون‌ها و ردیف‌های شبکه را تعریف کنند. به لطف مشارکت‌کنندگان ما در مایکروسافت، اکنون از درون‌یابی برای این ویژگی‌ها پشتیبانی می‌کنیم . طرح‌بندی‌های شبکه اکنون می‌توانند به راحتی بین حالت‌ها جابجا شوند، به جای اینکه در نیمه راه یک انیمیشن یا انتقال، دچار مشکل شوند.

کنترل‌های اشتراک‌گذاری صفحه نمایش با حفظ حریم خصوصی

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

DisplayMediaStreamConstraints.selfBrowserSurface

راهنمایی که به برنامه‌های وب اجازه می‌دهد تا به مرورگر دستور دهند که آیا هنگام فراخوانی getDisplayMedia() ، تب فعلی باید از لیست تب‌های ارائه شده به کاربر حذف شود یا خیر.

این امر به جلوگیری از خود-ضبطی تصادفی کمک می‌کند، زمانی که کاربران به طور تصادفی تبی را که برنامه در آن اجرا می‌شود انتخاب می‌کنند، یک اثر Hall-of-Mirrors ایجاد می‌شود که کاربران را گیج می‌کند و بحث با کاربران از راه دور را از مسیر اصلی خارج می‌کند.

DisplayMediaStreamConstraints.surfaceSwitching

گزینه‌ای را اضافه می‌کند تا به صورت برنامه‌نویسی کنترل شود که آیا کروم هنگام اشتراک‌گذاری صفحه، دکمه‌ای برای تعویض تب‌ها نشان دهد یا خیر. این گزینه به navigator.mediaDevices.getDisplayMedia() ارسال می‌شود.

دکمه‌ی «به‌جای اشتراک‌گذاری این برگه»، به کاربران اجازه می‌دهد تا به‌طور یکپارچه برگه‌ای را که به اشتراک می‌گذارند، تغییر دهند، بدون اینکه مجبور باشند دوباره برگه‌ی کنفرانس ویدیویی را انتخاب کنند، روی دکمه‌ای کلیک کنند تا دوباره getDisplayMedia() را اجرا کنند، یا یک برگه‌ی جدید را از لیست طولانی برگه‌ها انتخاب کنند. این رفتار به‌صورت مشروط در معرض دید قرار می‌گیرد زیرا همه برنامه‌های وب قادر به مدیریت این رفتار نیستند.

MediaTrackConstraintSet.displaySurface

وقتی تابع getDisplayMedia() فراخوانی می‌شود، مرورگر به کاربر حق انتخاب بین سطوح نمایش: تب‌ها، پنجره‌ها یا مانیتورها را می‌دهد. با استفاده از محدودیت displaySurface، برنامه وب اکنون می‌تواند به مرورگر اطلاع دهد که آیا ترجیح می‌دهد نوع خاصی از سطوح به طور برجسته‌تری به کاربر ارائه شود یا خیر.

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

وضعیت مسدود شدن رندر در زمان‌بندی منابع

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

کاراکترهای جایگزین در ریشه‌های سیاست مجوزها

این ویژگی پشتیبانی از wildcardها را در سیاست‌های مجوز با ساختار SCHEME://*.HOST:PORT (برای مثال، https://*.foo.com/) اضافه می‌کند، جایی که یک Origin معتبر می‌تواند از SCHEME://HOST:PORT (برای مثال، https://foo.com/) ساخته شود. این امر مستلزم آن است که HOST حداقل eTLD+1 (یک دامنه قابل ثبت) باشد. این بدان معناست که https://*.bar.foo.com/ کار می‌کند اما https://*.com/ کار نمی‌کند. wildcardها در بخش scheme و port پشتیبانی نمی‌شوند و https://*.foo.com/ به https://foo.com/ تفویض اختیار نمی‌کند. پیش از این، یک سیاست مجوز ممکن بود به شکل زیر باشد:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://cdn1.foo.com" "https://cdn2.foo.com")

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

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://*.foo.com")

پشتیبانی از ویژگی rel در عناصر <form>

این ویژگی، ویژگی rel را به عناصر فرم اضافه می‌کند که مانع از نمایش window.opener در وب‌سایت‌هایی می‌شود که توسط عناصر فرم دارای rel=noopener هدایت می‌شوند و از ارسال هدر Referer با rel=noreferrer جلوگیری می‌کند.

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

این نسخه از کروم دارای دو نسخه آزمایشی جدید با منبع جدید بود.

API اعلانی PendingBeacon

یک رابط برنامه‌نویسی کاربردی Beacon با وضعیت (stateful beacon API) که به مرورگر اجازه می‌دهد زمان ارسال Beaconها را کنترل کند. Beacon مجموعه‌ای از داده‌ها است که بدون انتظار پاسخ خاصی به یک سرور backend ارسال می‌شود. اغلب مطلوب است که این داده‌ها در پایان بازدید کاربر از یک صفحه ارسال شوند، اما زمان مناسبی برای انجام آن فراخوانی "ارسال" وجود ندارد. این API ارسال را به خود مرورگر واگذار می‌کند، بنابراین می‌تواند از Beaconها در زمان بارگذاری صفحه یا پنهان شدن صفحه پشتیبانی کند، بدون اینکه توسعه‌دهنده مجبور باشد فراخوانی‌های ارسال را دقیقاً در زمان‌های مناسب پیاده‌سازی کند.

انتظار می‌رود این نسخه آزمایشی تا کروم ۱۰۹ ادامه داشته باشد. برای شرکت در این نسخه آزمایشی اینجا ثبت نام کنید .

سیاست-مجوزها: تخلیه

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

انتظار می‌رود این نسخه آزمایشی تا کروم ۱۰۹ ادامه داشته باشد. برای شرکت در این نسخه آزمایشی اینجا ثبت نام کنید .

منسوخ‌ها و حذف‌ها

این نسخه از کروم، منسوخ‌ها و حذف‌های ذکر شده در زیر را معرفی می‌کند. برای مشاهده فهرست منسوخ‌های برنامه‌ریزی شده، منسوخ‌های فعلی و حذف‌های قبلی، به ChromeStatus.com مراجعه کنید.

این نسخه از کروم یک ویژگی را منسوخ می‌کند.

انتظار-سی تی

Expect-CT یک هدر HTTP است که به وب‌سایت‌ها اجازه می‌دهد قبل از اینکه به‌طور پیش‌فرض اجرای شفافیت گواهی (Certificate Transparency) اجباری شود، آن را انتخاب کنند. همچنین دارای قابلیت گزارش‌دهی است تا به توسعه‌دهندگان در کشف پیکربندی‌های نادرست CT کمک کند.

هدر Expect-CT HTTP برای کمک به گذار به اجرای شفافیت گواهی جهانی (CT) طراحی شده بود، با این امکان که وب‌سایت‌های با ارزش بالا بتوانند قبل از الزام اجرای CT (توسط کروم) در تمام وب‌سایت‌های عمومی، در اجرای CT شرکت کنند یا برای امنیت بهتر گزارش دهند. با این حال، Expect-CT اکنون دیگر مفید نیست. کروم اکنون CT را در تمام وب‌سایت‌های عمومی الزامی می‌کند، بنابراین دیگر هیچ ارزش امنیتی برای Expect-CT وجود ندارد. هیچ مرورگر دیگری Expect-CT پیاده‌سازی نکرده است، بنابراین حذف آن نگرانی در مورد قابلیت همکاری ایجاد نمی‌کند.