chroomtypes

Beschrijving

De chrome.types API bevat typedeclaraties voor Chrome.

Chrome-instellingen

Het ChromeSetting type biedt een gemeenschappelijke reeks functies ( get() , set() en clear() ) evenals een gebeurtenisuitgever ( onChange ) voor instellingen van de Chrome-browser. De voorbeelden van proxy-instellingen laten zien hoe deze functies moeten worden gebruikt.

Reikwijdte en levenscyclus

Chrome maakt onderscheid tussen drie verschillende soorten browserinstellingen:

regular
Instellingen die in het regular bereik zijn ingesteld, zijn van toepassing op gewone browservensters en worden overgenomen door incognitovensters als ze niet worden overschreven. Deze instellingen worden op schijf opgeslagen en blijven van kracht 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 incognitovensters. Hiervoor overschrijven ze regular instellingen. Deze instellingen worden op schijf opgeslagen en blijven van kracht 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 incognitovensters. Hiervoor overschrijven ze regular en incognito_persistent instellingen. Deze instellingen worden niet op schijf opgeslagen en worden gewist wanneer het laatste incognitovenster wordt gesloten. Ze kunnen alleen worden ingesteld als er minimaal één incognitovenster geopend is.

Voorrang

Chrome beheert instellingen op verschillende lagen. De volgende lijst beschrijft de lagen die de effectieve instellingen kunnen beïnvloeden, in oplopende volgorde van prioriteit.

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

Zoals de lijst aangeeft, kan het beleid alle wijzigingen die u opgeeft bij uw extensie overrulen. U kunt de functie get() gebruiken om te bepalen of uw extensie een instelling kan leveren of dat deze instelling wordt overschreven.

Zoals eerder besproken, staat Chrome het gebruik van verschillende instellingen toe voor gewone vensters en incognitovensters. Het volgende voorbeeld illustreert het gedrag. Stel dat geen enkel beleid de instellingen overschrijft en dat een extensie instellingen voor gewone vensters (R) en instellingen voor incognitovensters (I) kan instellen.

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

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

De effectieve waarde van een instelling is de waarde die voortvloeit uit het overwegen van de voorrangsregels. Het wordt gebruikt door Chrome.

Soorten

ChromeSetting

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

Eigenschappen

  • opWijzigen

    Gebeurtenis<functionvoidvoid>

    Wordt geactiveerd nadat de instelling is gewijzigd.

    De onChange.addListener -functie ziet er als volgt uit:

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

    • terugbellen

      functie

      De callback parameter ziet er als volgt uit:

      (details: object) => void

      • details

        voorwerp

        • incognitoSpecifiek

          Booleaans optioneel

          Of de waarde die is gewijzigd specifiek is voor de incognitosessie. Deze eigenschap is alleen aanwezig als de gebruiker de extensie in de incognitomodus heeft ingeschakeld.

        • niveauVanControl

          Het controleniveau van de instelling.

        • waarde

          T

          De waarde van de instelling na de wijziging.

  • duidelijk

    leegte

    Belofte

    Wist de instelling en herstelt eventuele standaardwaarden.

    De clear functie ziet er als volgt uit:

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

    • details

      voorwerp

      Welke instelling moet worden gewist.

      • domein

        Waar u de instelling kunt wissen (standaard: normaal).

    • terugbellen

      functie optioneel

      De callback parameter ziet er als volgt uit:

      () => void

    • retourneert

      Beloof <nietig>

      Chroom 96+

      Beloften worden ondersteund in Manifest V3 en hoger, maar er zijn callbacks beschikbaar voor achterwaartse compatibiliteit. U kunt niet beide gebruiken bij dezelfde functieaanroep. De belofte wordt opgelost met hetzelfde type dat wordt doorgegeven aan de callback.

  • krijgen

    leegte

    Belofte

    Haalt de waarde van een instelling op.

    De get functie ziet er als volgt uit:

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

    • details

      voorwerp

      Welke instelling u moet overwegen.

      • incognito

        Booleaans optioneel

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

    • terugbellen

      functie optioneel

      De callback parameter ziet er als volgt uit:

      (details: object) => void

      • details

        voorwerp

        Details van de huidige effectieve waarde.

        • incognitoSpecifiek

          Booleaans optioneel

          Of de effectieve waarde specifiek is voor de incognitosessie. Deze eigenschap is alleen aanwezig als de incognito eigenschap in de details van get() waar was.

        • niveauVanControl

          Het controleniveau van de instelling.

        • waarde

          T

          De waarde van de instelling.

    • retourneert

      Beloof<object>

      Chroom 96+

      Beloften worden ondersteund in Manifest V3 en hoger, maar er zijn callbacks beschikbaar voor achterwaartse compatibiliteit. U kunt niet beide gebruiken bij dezelfde functieaanroep. De belofte wordt opgelost met hetzelfde type dat wordt doorgegeven aan de callback.

  • set

    leegte

    Belofte

    Stelt de waarde van een instelling in.

    De set functie ziet er als volgt uit:

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

    • details

      voorwerp

      Welke instelling u wilt wijzigen.

      • domein

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

      • waarde

        T

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

    • terugbellen

      functie optioneel

      De callback parameter ziet er als volgt uit:

      () => void

    • retourneert

      Beloof <nietig>

      Chroom 96+

      Beloften worden ondersteund in Manifest V3 en hoger, maar er zijn callbacks beschikbaar voor achterwaartse compatibiliteit. U kunt niet beide gebruiken bij dezelfde functieaanroep. De belofte wordt opgelost met hetzelfde type dat wordt doorgegeven aan de callback.

ChromeSettingScope

Chroom 44+

Het bereik van de ChromeSetting. Een van

  • regular : instelling voor het reguliere profiel (dat wordt overgenomen door het incognitoprofiel als het niet elders wordt overschreven),
  • regular\_only : instelling alleen voor het reguliere profiel (niet overgenomen door het incognitoprofiel),
  • incognito\_persistent : instelling voor het incognitoprofiel dat het opnieuw opstarten van de browser overleeft (overschrijft de reguliere voorkeuren),
  • incognito\_session\_only : instelling voor het incognitoprofiel dat alleen kan worden ingesteld tijdens een incognitosessie en wordt verwijderd wanneer de incognitosessie eindigt (overschrijft de reguliere en incognito_persistent voorkeuren).

Enum

"normaal"

"normaal_alleen"

"incognito_persistent"

"incognito_session_only"

LevelOfControl

Chroom 44+

Een van

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

Enum

"niet_controleerbaar"

"gecontroleerd_door_andere_extensies"

"controleerbaar_door_deze_extensie"

"gecontroleerd_door_deze_extensie"