chroomtypes

Beschrijving

De chrome.types API bevat typedeclaraties voor Chrome.

Chrome-instellingen

Het ChromeSetting type biedt een algemene set functies ( get() , set() en clear() ) en een gebeurtenispublisher ( onChange ) voor instellingen van de Chrome-browser. De voorbeelden van proxy-instellingen laten zien hoe deze functies bedoeld zijn om te worden gebruikt.

Omvang en levenscyclus

Chrome onderscheidt drie verschillende categorieën browserinstellingen:

regular
Instellingen die in de regular modus zijn ingesteld, gelden voor gewone browservensters en worden overgenomen door incognitovensters, tenzij ze worden overschreven. Deze instellingen worden op de schijf opgeslagen en blijven behouden totdat ze worden gewist door de betreffende extensie, of totdat de betreffende extensie wordt uitgeschakeld of verwijderd.
incognito_persistent
Instellingen die zijn ingesteld in het bereik incognito_persistent zijn alleen van toepassing op incognito-vensters. Voor deze vensters hebben ze voorrang op regular instellingen. Deze instellingen worden opgeslagen op de schijf en blijven behouden totdat ze worden gewist door de betreffende extensie, of totdat de betreffende extensie wordt uitgeschakeld of verwijderd.
incognito_session_only
Instellingen die zijn ingesteld in het bereik incognito_session_only zijn alleen van toepassing op incognito-vensters. Voor deze vensters hebben ze voorrang op regular en incognito_persistent -instellingen. Deze instellingen worden niet op de schijf opgeslagen en worden gewist wanneer het laatste incognito-venster wordt gesloten. Ze kunnen alleen worden ingesteld wanneer er ten minste één incognito-venster is geopend.

Voorrang

Chrome beheert instellingen op verschillende niveaus. De volgende lijst beschrijft de niveaus die van invloed kunnen zijn op de uiteindelijke instellingen, in oplopende volgorde van prioriteit.

  1. Systeeminstellingen geleverd door het besturingssysteem
  2. Opdrachtregelparameters
  3. Instellingen aangeboden door extensies
  4. Beleid

Zoals de lijst al aangeeft, kunnen beleidsregels wijzigingen die u met uw extensie doorgeeft, overrulen. U kunt de functie get() gebruiken om te bepalen of uw extensie een instelling kan bieden of dat deze instelling wordt overschreven.

Zoals eerder besproken, biedt Chrome de mogelijkheid om verschillende instellingen te gebruiken voor normale vensters en incognitovensters. Het volgende voorbeeld illustreert dit gedrag. Stel dat er geen beleid is dat de instellingen overschrijft en dat een extensie instellingen kan instellen voor normale vensters (R) en instellingen voor incognitovensters (I) .

  • Als alleen (R) is ingesteld, zijn deze instellingen van toepassing op zowel normale als incognito vensters.
  • Als alleen (I) is ingesteld, zijn deze instellingen alleen van toepassing op incognito-vensters. Normale vensters gebruiken de instellingen die door de onderliggende lagen worden bepaald (opdrachtregelopties en systeeminstellingen).
  • Als zowel (R) als (I) zijn ingesteld, worden de respectievelijke instellingen gebruikt voor normale en incognito vensters.

Als twee of meer extensies dezelfde instelling op verschillende waarden willen instellen, heeft de laatst geïnstalleerde extensie voorrang op de andere extensies. Als de laatst geïnstalleerde extensie alleen (I) instelt, kunnen de instellingen van normale vensters worden gedefinieerd door eerder geïnstalleerde extensies.

De effectieve waarde van een instelling is de waarde die voortvloeit uit het in acht nemen van de voorrangsregels. Deze waarde wordt gebruikt door Chrome.

Soorten

ChromeSetting

Een interface die toegang biedt tot een Chrome-browserinstelling. Zie accessibilityFeatures voor een voorbeeld.

Eigenschappen

  • bij wijziging

    Event<functionvoidvoid>

    Geactiveerd na de instellingswijzigingen.

    De functie onChange.addListener ziet er als volgt uit:

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

    • terugbelverzoek

      functie

      De callback parameter ziet er als volgt uit:

      (details: object) => void

      • details

        voorwerp

        • incognitoSpecifiek

          boolean optioneel

          Of de gewijzigde waarde specifiek is voor de incognito-sessie. Deze eigenschap is alleen aanwezig als de gebruiker de extensie in de incognito-modus heeft ingeschakeld.

        • niveauVanControl

          De mate van controle over de instelling.

        • waarde

          T

          De waarde van de instelling na de wijziging.

  • duidelijk

    leegte

    Hiermee worden de instellingen gewist en de standaardwaarden hersteld.

    De clear ziet er als volgt uit:

    (details: object) => {...}

    • details

      voorwerp

      Welke instelling moet ik wissen?

    • retourneert

      Promise<void>

      Chrome 96+

      Wordt opgeroepen na voltooiing van de opruimactie.

  • krijgen

    leegte

    Geeft de waarde van een instelling weer.

    De get -functie ziet er als volgt uit:

    (details: object) => {...}

    • details

      voorwerp

      Welke setting moet je overwegen?

      • incognito

        boolean optioneel

        Of de waarde die van toepassing is op de incognito-sessie moet worden geretourneerd (standaard false).

    • retourneert

      Promise<object>

      Chrome 96+
  • set

    leegte

    Hiermee wordt de waarde van een instelling ingesteld.

    De set ziet er als volgt uit:

    (details: object) => {...}

    • details

      voorwerp

      Welke instelling moet ik wijzigen?

      • domein

        Waar moet de instelling worden ingesteld (standaard: normaal).

      • waarde

        T

        De waarde van de instelling. Merk op dat elke instelling een specifiek waardetype heeft, dat samen met de instelling wordt beschreven. Een extensie mag geen waarde van een ander type instellen.

    • retourneert

      Promise<void>

      Chrome 96+

      Wordt opgeroepen na voltooiing van de ingestelde handeling.

ChromeSettingScope

Chrome 44+

Het bereik van de ChromeSetting. Een van de

  • regular : instelling voor het reguliere profiel (die wordt overgenomen door het incognito-profiel als deze niet elders wordt overschreven),
  • regular\_only : instelling alleen voor het normale profiel (wordt niet overgenomen door het incognito-profiel),
  • incognito\_persistent : instelling voor het incognito-profiel dat behouden blijft na het herstarten van de browser (overschrijft de normale voorkeuren),
  • incognito\_session\_only : instelling voor het incognito-profiel die alleen tijdens een incognito-sessie kan worden ingesteld en wordt verwijderd wanneer de incognito-sessie eindigt (overschrijft de reguliere en incognito_persistent voorkeuren).

Enum

"normaal"

"alleen-regulier"

"incognito_persistent"

"alleen incognito-sessie"

LevelOfControl

Chrome 44+

Een van

  • not\_controllable : kan door geen enkele extensie worden bestuurd.
  • controlled\_by\_other\_extensions : gecontroleerd door extensies met een hogere prioriteit
  • controllable\_by\_this\_extension : kan worden bestuurd door deze extensie
  • controlled\_by\_this\_extension : gecontroleerd door deze extensie

Enum

"niet_controleerbaar"

"gecontroleerd_door_andere_extensies"

"controleerbaar_door_deze_extensie"

"gecontroleerd door deze extensie"