chrome.types

Descripción

La API de chrome.types contiene declaraciones de tipos para Chrome.

Configuración de Chrome

El tipo ChromeSetting proporciona un conjunto común de funciones (get(), set() y clear()), así como un publicador de eventos (onChange) para la configuración del navegador Chrome. En los ejemplos de configuración de proxy, se muestra cómo se deben usar estas funciones.

Alcance y ciclo de vida

Chrome distingue tres tipos diferentes de parámetros de configuración del navegador:

regular
Los parámetros de configuración establecidos en el alcance de regular se aplican a las ventanas normales del navegador y las heredan las ventanas de incógnito si no se reemplazan. Estos parámetros de configuración se almacenan en el disco y permanecen vigentes hasta que la extensión principal los borra o se inhabilita o desinstala la extensión principal.
incognito_persistent
Los parámetros de configuración establecidos en el alcance de incognito_persistent solo se aplican a las ventanas de incógnito. En estos casos, anulan la configuración de regular. Estos parámetros de configuración se almacenan en el disco y permanecen vigentes hasta que la extensión principal los borra o hasta que se inhabilita o desinstala la extensión principal.
incognito_session_only
Los parámetros de configuración establecidos en el alcance de incognito_session_only solo se aplican a las ventanas de incógnito. En estos casos, se anulan los parámetros de configuración de regular y incognito_persistent. Estos parámetros de configuración no se almacenan en el disco y se borran cuando se cierra la última ventana de incógnito. Solo se pueden configurar cuando hay al menos una ventana de incógnito abierta.

Prioridad

Chrome administra la configuración en diferentes capas. En la siguiente lista, se describen las capas que pueden influir en la configuración efectiva, en orden creciente de prioridad.

  1. Configuración del sistema proporcionada por el sistema operativo
  2. Parámetros de la línea de comandos
  3. Configuración proporcionada por extensiones
  4. Políticas

Como lo indica la lista, es posible que las políticas anulen cualquier cambio que especifiques con tu extensión. Luego, puedes usar la función get() para determinar si tu extensión puede proporcionar un parámetro de configuración o si este parámetro se anularía.

Como se mencionó anteriormente, Chrome permite usar diferentes parámetros de configuración para las ventanas normales y las ventanas de incógnito. En el siguiente ejemplo, se ilustra el comportamiento. Supón que ninguna política anula la configuración y que una extensión puede establecer parámetros de configuración para ventanas normales (N) y para ventanas de incógnito (I).

  • Si solo se establece (R), estos parámetros de configuración son válidos para las ventanas normales y de incógnito.
  • Si solo se establece (I), estos parámetros de configuración solo se aplicarán a las ventanas de incógnito. Las ventanas normales usan la configuración determinada por las capas inferiores (opciones de línea de comandos y configuración del sistema).
  • Si se configuran (R) y (I), se usarán los parámetros de configuración respectivos para las ventanas normales y de incógnito.

Si dos o más extensiones quieren establecer el mismo parámetro de configuración en valores diferentes, la extensión instalada más recientemente tendrá prioridad sobre las demás. Si la extensión instalada más recientemente solo establece (I), las extensiones instaladas anteriormente pueden definir la configuración de las ventanas normales.

El valor vigente de un parámetro de configuración es el que resulta de considerar las reglas de prioridad. Chrome lo usa.

Tipos

ChromeSetting

Es una interfaz que permite acceder a un parámetro de configuración del navegador Chrome. Consulta accessibilityFeatures para ver un ejemplo.

Propiedades

  • onChange

    Event<functionvoidvoid>

    Se activa después de que cambia el parámetro de configuración.

    La función onChange.addListener se ve de la siguiente manera:

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

    • callback

      función

      El parámetro callback se ve de la siguiente manera:

      (details: object) => void

      • detalles

        objeto

        • incognitoSpecific

          booleano opcional

          Indica si el valor que cambió es específico de la sesión de incógnito. Esta propiedad solo estará presente si el usuario habilitó la extensión en el modo Incógnito.

        • levelOfControl

          Es el nivel de control del parámetro de configuración.

        • valor

          T

          Es el valor del parámetro de configuración después del cambio.

  • borrar

    void

    Borra el parámetro de configuración y restablece cualquier valor predeterminado.

    La función clear se ve de la siguiente manera:

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

    • detalles

      objeto

      Parámetro de configuración que se borrará.

      • alcance

        Dónde borrar el parámetro de configuración (el valor predeterminado es regular).

    • returns

      Promise<void>

      Chrome 96 y versiones posteriores
  • get

    void

    Obtiene el valor de un parámetro de configuración.

    La función get se ve de la siguiente manera:

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

    • detalles

      objeto

      Es el parámetro de configuración que se debe tener en cuenta.

      • Incógnito

        booleano opcional

        Indica si se debe devolver el valor que se aplica a la sesión de incógnito (el valor predeterminado es falso).

    • returns

      Promise<object>

      Chrome 96 y versiones posteriores
  • set

    void

    Establece el valor de un parámetro de configuración.

    La función set se ve de la siguiente manera:

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

    • detalles

      objeto

      Parámetro de configuración que se cambiará.

      • alcance

        Dónde establecer el parámetro de configuración (predeterminado: regular).

      • valor

        T

        Es el valor del parámetro de configuración. Ten en cuenta que cada parámetro de configuración tiene un tipo de valor específico, que se describe junto con el parámetro. Una extensión no debe establecer un valor de un tipo diferente.

    • returns

      Promise<void>

      Chrome 96 y versiones posteriores

ChromeSettingScope

Chrome 44 y versiones posteriores

Es el alcance de ChromeSetting. Uno de

  • regular: Es el parámetro de configuración del perfil normal (que hereda el perfil de incógnito si no se anula en otro lugar).
  • regular\_only: Configuración solo para el perfil normal (no se hereda en el perfil de incógnito)
  • incognito\_persistent: Es el parámetro de configuración del perfil de incógnito que se mantiene después de reiniciar el navegador (anula las preferencias normales).
  • incognito\_session\_only: Es un parámetro de configuración del perfil de Incógnito que solo se puede establecer durante una sesión de Incógnito y se borra cuando finaliza la sesión de Incógnito (anula las preferencias normales y las de incognito_persistent).

Enum

"regular"

"regular_only"

"incognito_persistent"

"incognito_session_only"

LevelOfControl

Chrome 44 y versiones posteriores

Uno de

  • not\_controllable: No se puede controlar con ninguna extensión
  • controlled\_by\_other\_extensions: Controlado por extensiones con mayor prioridad
  • controllable\_by\_this\_extension: Se puede controlar con esta extensión.
  • controlled\_by\_this\_extension: Controlado por esta extensión

Enum

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"