chrome.types

توضیحات

chrome.types API حاوی اعلان‌های نوع برای Chrome است.

تنظیمات کروم

نوع ChromeSetting مجموعه ای متداول از توابع ( get() ، set() و clear() ) و همچنین یک ناشر رویداد ( onChange ) را برای تنظیمات مرورگر Chrome فراهم می کند. نمونه های تنظیمات پراکسی نشان می دهد که چگونه این توابع برای استفاده در نظر گرفته شده است.

دامنه و چرخه حیات

کروم بین سه محدوده مختلف تنظیمات مرورگر تمایز قائل می شود:

regular
تنظیمات تنظیم‌شده در محدوده regular برای پنجره‌های مرورگر معمولی اعمال می‌شود و در صورتی که رونویسی نشوند، توسط پنجره‌های ناشناس به ارث می‌رسند. این تنظیمات در دیسک ذخیره می شوند و تا زمانی که توسط برنامه افزودنی حاکم پاک شوند، یا برنامه افزودنی حاکم غیرفعال یا حذف نصب شوند، در جای خود باقی می مانند.
incognito_persistent
تنظیمات تنظیم‌شده در محدوده incognito_persistent فقط برای پنجره‌های ناشناس اعمال می‌شود. برای این موارد، تنظیمات regular را نادیده می گیرند. این تنظیمات در دیسک ذخیره می شوند و تا زمانی که توسط برنامه افزودنی حاکم پاک شوند، یا برنامه افزودنی حاکم غیرفعال یا حذف نصب شوند، در جای خود باقی می مانند.
incognito_session_only
تنظیمات تنظیم شده در محدوده incognito_session_only فقط برای پنجره های ناشناس اعمال می شود. برای این موارد، تنظیمات regular و incognito_persistent را نادیده می گیرند. این تنظیمات در دیسک ذخیره نمی شوند و با بسته شدن آخرین پنجره حالت ناشناس پاک می شوند. آنها را فقط زمانی می توان تنظیم کرد که حداقل یک پنجره حالت ناشناس باز باشد.

تقدم

Chrome تنظیمات را در لایه های مختلف مدیریت می کند. لیست زیر لایه هایی را که ممکن است بر روی تنظیمات مؤثر تأثیر بگذارند، به ترتیب اولویت تشریح می کند.

  1. تنظیمات سیستم توسط سیستم عامل ارائه شده است
  2. پارامترهای خط فرمان
  3. تنظیمات ارائه شده توسط برنامه های افزودنی
  4. سیاست ها

همانطور که فهرست نشان می‌دهد، سیاست‌ها ممکن است هرگونه تغییری را که با برنامه افزودنی خود مشخص کرده‌اید رد کند. می‌توانید از تابع get() برای تعیین اینکه آیا برنامه افزودنی شما قادر به ارائه تنظیمات است یا اینکه آیا این تنظیم لغو می‌شود استفاده کنید.

همانطور که قبلاً بحث شد، Chrome اجازه می دهد تا از تنظیمات مختلف برای ویندوزهای معمولی و پنجره های ناشناس استفاده کنید. مثال زیر این رفتار را نشان می دهد. فرض کنید هیچ خط مشی تنظیمات را لغو نمی کند و یک برنامه افزودنی می تواند تنظیمات را برای ویندوزهای معمولی (R) و تنظیمات برای پنجره های ناشناس (I) تنظیم کند.

  • اگر فقط (R) تنظیم شود، این تنظیمات هم برای پنجره های معمولی و هم برای پنجره های ناشناس موثر هستند.
  • اگر فقط (I) تنظیم شده باشد، این تنظیمات فقط برای پنجره های ناشناس موثر هستند. ویندوزهای معمولی از تنظیمات تعیین شده توسط لایه های پایین (گزینه های خط فرمان و تنظیمات سیستم) استفاده می کنند.
  • اگر هر دو (R) و (I) تنظیم شده باشند، تنظیمات مربوطه برای پنجره های معمولی و ناشناس استفاده می شود.

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

ارزش مؤثر یک تنظیم، ارزشی است که از در نظر گرفتن قوانین تقدم حاصل می شود. کروم از آن استفاده می کند.

انواع

ChromeSetting

رابطی که امکان دسترسی به تنظیمات مرورگر کروم را فراهم می کند. برای مثال accessibilityFeatures مراجعه کنید.

خواص

  • در تغییر

    رویداد<functionvoidvoid>

    پس از تغییر تنظیمات فعال شد.

    تابع onChange.addListener به نظر می رسد:

    (callback: function) => {...}

    • پاسخ به تماس

      تابع

      پارامتر callback به نظر می رسد:

      (details: object) => void

      • جزئیات

        شی

        • incognitoSpecific

          بولی اختیاری

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

        • levelOfControl

          سطح کنترل تنظیمات.

        • ارزش

          تی

          مقدار تنظیم پس از تغییر.

  • روشن

    باطل

    قول بده

    تنظیمات را پاک می کند و هر مقدار پیش فرض را بازیابی می کند.

    تابع clear به نظر می رسد:

    (details: object, callback?: function) => {...}

    • جزئیات

      شی

      کدام تنظیم پاک شود.

      • دامنه

        ChromeSettingScope اختیاری است

        محل پاک کردن تنظیمات (پیش‌فرض: معمولی).

    • پاسخ به تماس

      عملکرد اختیاری

      پارامتر callback به نظر می رسد:

      () => void

    • برمی گرداند

      قول<باطل>

      Chrome 96+

      Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

  • دریافت کنید

    باطل

    قول بده

    ارزش یک تنظیم را دریافت می کند.

    تابع get به نظر می رسد:

    (details: object, callback?: function) => {...}

    • جزئیات

      شی

      کدام تنظیم را در نظر بگیرید.

      • ناشناس

        بولی اختیاری

        آیا باید مقداری را که برای جلسه ناشناس اعمال می‌شود برگرداند (نادرست پیش‌فرض).

    • پاسخ به تماس

      عملکرد اختیاری

      پارامتر callback به نظر می رسد:

      (details: object) => void

      • جزئیات

        شی

        جزئیات ارزش فعلی موثر.

        • incognitoSpecific

          بولی اختیاری

          اینکه آیا مقدار مؤثر مختص جلسه ناشناس است. این ویژگی فقط در صورتی وجود خواهد داشت که خاصیت incognito در پارامتر details get() درست باشد.

        • levelOfControl

          سطح کنترل تنظیمات.

        • ارزش

          تی

          ارزش تنظیم.

    • برمی گرداند

      قول<object>

      Chrome 96+

      Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

  • مجموعه

    باطل

    قول بده

    مقدار یک تنظیم را تعیین می کند.

    تابع set به نظر می رسد:

    (details: object, callback?: function) => {...}

    • جزئیات

      شی

      کدام تنظیم را تغییر دهید.

      • دامنه

        ChromeSettingScope اختیاری است

        محل تنظیم تنظیمات (پیش‌فرض: معمولی).

      • ارزش

        تی

        ارزش تنظیم. توجه داشته باشید که هر تنظیم دارای یک نوع مقدار خاص است که همراه با تنظیم توضیح داده شده است. یک برنامه افزودنی نباید مقداری از نوع متفاوت تنظیم کند.

    • پاسخ به تماس

      عملکرد اختیاری

      پارامتر callback به نظر می رسد:

      () => void

    • برمی گرداند

      قول<باطل>

      Chrome 96+

      Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

ChromeSettingScope

Chrome 44+

محدوده ChromeSetting. یکی از

  • regular : تنظیم برای نمایه معمولی (که اگر در جای دیگری لغو نشود توسط نمایه ناشناس به ارث می رسد)
  • regular\_only : تنظیم فقط برای نمایه معمولی (که توسط نمایه ناشناس به ارث نمی رسد)،
  • incognito\_persistent : تنظیم نمایه ناشناس که از راه‌اندازی مجدد مرورگر جان سالم به در می‌برد (اولویت‌های معمولی را نادیده می‌گیرد)،
  • incognito\_session\_only : تنظیمی برای نمایه ناشناس که فقط در طول جلسه ناشناس تنظیم می‌شود و با پایان جلسه ناشناس حذف می‌شود (اولویت‌های معمولی و ناشناس را نادیده می‌گیرد).

Enum

"عادی"

"فقط_عادی"

"مداوم_ناشناس"

"oncognito_session_only"

LevelOfControl

Chrome 44+

یکی از

  • not\_controllable : توسط هیچ برنامه افزودنی قابل کنترل نیست
  • controlled\_by\_other\_extensions : توسط برنامه‌های افزودنی با اولویت بالاتر کنترل می‌شود
  • controllable\_by\_this\_extension : توسط این افزونه قابل کنترل است
  • controlled\_by\_this\_extension : توسط این افزونه کنترل می شود

Enum

"not_controlable"

"controlled_by_other_extensions"

"controlable_by_this_extension"

"controlled_by_this_extension"