chrome.app.window

Descrizione

Usa l'API chrome.app.window per creare finestre. Le finestre hanno un frame facoltativo con la barra del titolo e i controlli per le dimensioni. Non sono associate a nessuna finestra del browser Chrome. Per una dimostrazione di queste opzioni, vedi l'esempio di stato della finestra.

Tipi

AppWindow

Proprietà

  • contentWindow

    Finestra

    La "finestra" JavaScript dell'oggetto secondario creato.

  • id

    stringa

    L'ID con cui è stata creata la finestra.

  • innerBounds

    Posizione, dimensioni e vincoli dei contenuti della finestra, che non includono le decorazioni. Questa proprietà è una nuova versione di Chrome 36.

  • outerBounds

    Posizione, dimensioni e vincoli della finestra, incluse le decorazioni, come la barra del titolo e il frame. Questa proprietà è una nuova versione di Chrome 36.

  • clearAttention

    null

    Fai attenzione alla finestra.

    La funzione clearAttention ha questo aspetto:

    () => {...}

  • chiudi

    null

    Chiudi la finestra.

    La funzione close ha questo aspetto:

    () => {...}

  • drawAttention

    null

    Attira l'attenzione sulla finestra.

    La funzione drawAttention ha questo aspetto:

    () => {...}

  • obiettivo

    null

    Imposta lo stato attivo sulla finestra.

    La funzione focus ha questo aspetto:

    () => {...}

  • schermo intero

    null

    Visualizza la finestra a schermo intero.

    L'utente potrà ripristinare la finestra premendo ESC. Un'applicazione può impedire che lo stato a schermo intero venga lasciato quando viene premuto ESC richiedendo l'autorizzazione app.window.fullscreen.overrideEsc e annullando l'evento chiamando .preventDefault(), nei gestori di keydown e keyup, come questo:

    window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };

    Nota: window.fullscreen() attiverà l'intera finestra a schermo intero e non richiederà un gesto dell'utente. L'API HTML5 a schermo intero può essere utilizzata anche per attivare la modalità a schermo intero (vedi API web per maggiori dettagli).

    La funzione fullscreen ha questo aspetto:

    () => {...}

  • getBounds

    null

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Recupera i limiti interni della finestra come oggetto ContentBounds.

    La funzione getBounds ha questo aspetto:

    () => {...}

  • nascondi

    null

    Nascondi la finestra. Non fa nulla se la finestra è già nascosta.

    La funzione hide ha questo aspetto:

    () => {...}

  • isAlwaysOnTop

    null

    La finestra è sempre in alto?

    La funzione isAlwaysOnTop ha questo aspetto:

    () => {...}

    • returns

      booleano

  • isFullscreen

    null

    La finestra è a schermo intero? Questo si verifica se la finestra è stata creata a schermo intero o se è stata resa a schermo intero tramite le API AppWindow o HTML5.

    La funzione isFullscreen ha questo aspetto:

    () => {...}

    • returns

      booleano

  • isMaximized

    null

    La finestra è ingrandita?

    La funzione isMaximized ha questo aspetto:

    () => {...}

    • returns

      booleano

  • isMinimized

    null

    La finestra è ridotta a icona?

    La funzione isMinimized ha questo aspetto:

    () => {...}

    • returns

      booleano

  • massimizza

    null

    Ingrandisci la finestra.

    La funzione maximize ha questo aspetto:

    () => {...}

  • riduci a icona

    null

    Riduci a icona la finestra.

    La funzione minimize ha questo aspetto:

    () => {...}

  • moveTo

    null

    Ritirato da Chrome 43

    Usa outerBounds.

    Sposta la finestra nella posizione (left, top).

    La funzione moveTo ha questo aspetto:

    (left: number, top: number) => {...}

    • a sinistra

      numero

    • in alto

      numero

  • resizeTo

    null

    Ritirato da Chrome 43

    Usa outerBounds.

    Ridimensiona la finestra a width x height pixel.

    La funzione resizeTo ha questo aspetto:

    (width: number, height: number) => {...}

    • larghezza

      numero

    • altezza

      numero

  • restore

    null

    Ripristina la finestra uscendo da uno stato ingrandito, ridotto a icona o a schermo intero.

    La funzione restore ha questo aspetto:

    () => {...}

  • setAlwaysOnTop

    null

    Imposta se la finestra deve rimanere al di sopra della maggior parte delle altre finestre. Richiede l'autorizzazione alwaysOnTopWindows.

    La funzione setAlwaysOnTop ha questo aspetto:

    (alwaysOnTop: boolean) => {...}

    • alwaysOnTop

      booleano

  • setBounds

    null

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Imposta i limiti interni della finestra.

    La funzione setBounds ha questo aspetto:

    (bounds: ContentBounds) => {...}

  • setVisibleOnAllWorkspaces

    null

    Imposta se la finestra è visibile in tutte le aree di lavoro. (solo per le piattaforme che supportano questa funzionalità).

    La funzione setVisibleOnAllWorkspaces ha questo aspetto:

    (alwaysVisible: boolean) => {...}

    • alwaysVisible

      booleano

  • mostra

    null

    Mostra la finestra. Non fa nulla se la finestra è già visibile. Imposta lo stato attivo sulla finestra se focused è impostato su true o omesso.

    La funzione show ha questo aspetto:

    (focused?: boolean) => {...}

    • Focalizzati

      booleano facoltativo

Bounds

Proprietà

  • altezza

    numero

    Questa proprietà può essere utilizzata per leggere o scrivere l'altezza corrente dei contenuti o della finestra.

  • a sinistra

    numero

    Questa proprietà può essere utilizzata per leggere o scrivere la coordinata X corrente del contenuto o della finestra.

  • maxHeight

    numero facoltativo

    Questa proprietà può essere utilizzata per leggere o scrivere l'altezza massima attuale dei contenuti o della finestra. Un valore null indica "non specificato".

  • maxWidth

    numero facoltativo

    Questa proprietà può essere utilizzata per leggere o scrivere l'attuale larghezza massima del contenuto o della finestra. Un valore null indica "non specificato".

  • minHeight

    numero facoltativo

    Questa proprietà può essere utilizzata per leggere o scrivere l'altezza minima attuale dei contenuti o della finestra. Un valore null indica "non specificato".

  • minWidth

    numero facoltativo

    Questa proprietà può essere utilizzata per leggere o scrivere l'attuale larghezza minima dei contenuti o della finestra. Un valore null indica "non specificato".

  • in alto

    numero

    Questa proprietà può essere utilizzata per leggere o scrivere l'attuale coordinata Y del contenuto o della finestra.

  • larghezza

    numero

    Questa proprietà può essere utilizzata per leggere o scrivere l'attuale larghezza dei contenuti o della finestra.

  • setMaximumSize

    null

    Imposta i vincoli di dimensione massima dei contenuti o della finestra. È possibile impostare la larghezza o l'altezza massima su null per rimuovere il vincolo. Il valore undefined lascia invariato un vincolo.

    La funzione setMaximumSize ha questo aspetto:

    (maxWidth: number, maxHeight: number) => {...}

    • maxWidth

      numero

    • maxHeight

      numero

  • setMinimumSize

    null

    Imposta i vincoli di dimensione minima dei contenuti o della finestra. È possibile impostare la larghezza o l'altezza minima su null per rimuovere il vincolo. Il valore undefined lascia invariato un vincolo.

    La funzione setMinimumSize ha questo aspetto:

    (minWidth: number, minHeight: number) => {...}

    • minWidth

      numero

    • minHeight

      numero

  • setPosition

    null

    Imposta la posizione a sinistra e in alto dei contenuti o della finestra.

    La funzione setPosition ha questo aspetto:

    (left: number, top: number) => {...}

    • a sinistra

      numero

    • in alto

      numero

  • setSize

    null

    Imposta la larghezza e l'altezza dei contenuti o della finestra.

    La funzione setSize ha questo aspetto:

    (width: number, height: number) => {...}

    • larghezza

      numero

    • altezza

      numero

BoundsSpecification

Proprietà

  • altezza

    numero facoltativo

    L'altezza dei contenuti o della finestra.

  • a sinistra

    numero facoltativo

    La coordinata X del contenuto o della finestra.

  • maxHeight

    numero facoltativo

    L'altezza massima dei contenuti o della finestra.

  • maxWidth

    numero facoltativo

    La larghezza massima dei contenuti o della finestra.

  • minHeight

    numero facoltativo

    L'altezza minima dei contenuti o della finestra.

  • minWidth

    numero facoltativo

    La larghezza minima dei contenuti o della finestra.

  • in alto

    numero facoltativo

    La coordinata Y del contenuto o della finestra.

  • larghezza

    numero facoltativo

    La larghezza dei contenuti o della finestra.

ContentBounds

Proprietà

  • altezza

    numero facoltativo

  • a sinistra

    numero facoltativo

  • in alto

    numero facoltativo

  • larghezza

    numero facoltativo

CreateWindowOptions

Proprietà

  • alwaysOnTop

    booleano facoltativo

    Se il valore è true, la finestra rimarrà al di sopra della maggior parte delle altre finestre. Se sono presenti più finestre di questo tipo, quella attualmente selezionata sarà in primo piano. Richiede l'autorizzazione alwaysOnTopWindows. Il valore predefinito è false.

    Chiama setAlwaysOnTop() nella finestra per modificare questa proprietà dopo la creazione.

  • limiti

    ContentBounds facoltativo

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Dimensioni e posizione dei contenuti nella finestra (esclusa la barra del titolo). Se viene specificato anche un ID ed è stata mostrata in precedenza una finestra con un ID corrispondente, al suo posto verranno utilizzati i limiti della finestra memorizzati.

  • Focalizzati

    booleano facoltativo

    Se il valore è true, la finestra verrà evidenziata quando verrà creata. Il valore predefinito è true.

  • cornice

    string | FrameOptions facoltativo

    Tipo di frame: none o chrome (il valore predefinito è chrome). Per none, la proprietà CSS -webkit-app-region può essere utilizzata per applicare la trascinabilità alla finestra dell'app. È possibile utilizzare -webkit-app-region: drag per contrassegnare le regioni trascinabili. Puoi utilizzare no-drag per disattivare questo stile per gli elementi nidificati.

    L'utilizzo di FrameOptions è una novità nella versione M36.

  • nascosto

    booleano facoltativo

    Se impostato su true, la finestra verrà creata in stato nascosto. Chiama show() sulla finestra per mostrarlo una volta creato. Il valore predefinito è false.

  • icona

    stringa facoltativo

    Chrome 54 e versioni successive .

    URL dell'icona della finestra. Una finestra può avere la propria icona quando showInShelf è impostato su true. L'URL deve essere un URL globale o un'estensione locale.

  • id

    stringa facoltativo

    ID per identificare la finestra. Questa informazione verrà utilizzata per ricordare le dimensioni e la posizione della finestra e ripristinare tale geometria all'apertura di una finestra con lo stesso ID. Se viene creata una finestra con un determinato ID mentre esiste già un'altra finestra con lo stesso ID, verrà attivata la finestra attualmente aperta anziché crearne una nuova.

  • innerBounds

    BoundsSpecification facoltativo

    Utilizzato per specificare la posizione iniziale, le dimensioni iniziali e i vincoli dei contenuti della finestra (escluse le decorazioni della finestra). Se viene specificato anche un id ed è stata mostrata in precedenza una finestra con un valore id corrispondente, verranno utilizzati i limiti memorizzati.

    Tieni presente che la spaziatura interna tra i limiti interni ed esterni è determinata dal sistema operativo. Di conseguenza, l'impostazione della stessa proprietà dei limiti sia per innerBounds che per outerBounds provocherà un errore.

    Questa proprietà è una nuova versione di Chrome 36.

  • maxHeight

    numero facoltativo

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Altezza massima della finestra.

  • maxWidth

    numero facoltativo

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Larghezza massima della finestra.

  • minHeight

    numero facoltativo

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Altezza minima della finestra.

  • minWidth

    numero facoltativo

    Obsoleta

    Utilizza innerBounds o outerBounds.

    Larghezza minima della finestra.

  • outerBounds

    BoundsSpecification facoltativo

    Utilizzato per specificare la posizione iniziale, le dimensioni iniziali e i vincoli della finestra (incluse le decorazioni della finestra come la barra del titolo e il frame). Se viene specificato anche un id ed è stata mostrata in precedenza una finestra con un valore id corrispondente, verranno utilizzati i limiti memorizzati.

    Tieni presente che la spaziatura interna tra i limiti interni ed esterni è determinata dal sistema operativo. Di conseguenza, l'impostazione della stessa proprietà dei limiti sia per innerBounds che per outerBounds provocherà un errore.

    Questa proprietà è una nuova versione di Chrome 36.

  • ridimensionabile

    booleano facoltativo

    Se impostato su true, la finestra potrà essere ridimensionata dall'utente. Il valore predefinito è true.

  • showInShelf

    booleano facoltativo

    Chrome 54 e versioni successive .

    Se impostato su true, la finestra avrà una propria icona barra delle app. In caso contrario, la finestra verrà raggruppata nella barra delle app con altre finestre associate all'app. Il valore predefinito è false. Se showInShelf è impostato su true, devi specificare un ID per la finestra.

  • singleton

    booleano facoltativo

    Obsoleta

    Più finestre con lo stesso ID non sono più supportate.

    Per impostazione predefinita, se specifichi un ID per la finestra, quest'ultima verrà creata soltanto se non esiste già un'altra finestra con lo stesso ID. Se esiste già una finestra con lo stesso ID, questa viene attivata. Se vuoi creare più finestre con lo stesso ID, puoi impostare questa proprietà su false.

  • stato

    Stato facoltativo

    Lo stato iniziale della finestra, che può essere già creata a schermo intero, ingrandita o ridotta a icona. Il valore predefinito è "normale".

  • tipo

    WindowType facoltativo

    Chrome 45 e versioni successive Ritirato da Chrome 69

    Tutte le finestre delle app utilizzano la shell tipo di finestra

    Tipo di finestra da creare.

  • visibleOnAllWorkspaces

    booleano facoltativo

    Se true ed è supportata dalla piattaforma, la finestra sarà visibile in tutte le aree di lavoro.

FrameOptions

Proprietà

  • activeColor

    stringa facoltativo

    Consente di impostare il colore del frame della finestra quando è attiva. La colorazione della cornice è disponibile solo se il tipo di frame è chrome.

    La colorazione della cornice è disponibile solo se il tipo di frame è chrome.

    La colorazione della cornice è una novità di Chrome 36.

  • colore

    stringa facoltativo

    Consente di impostare il colore della cornice. La colorazione della cornice è disponibile solo se il tipo di frame è chrome.

    La colorazione della cornice è una novità di Chrome 36.

  • inactiveColor

    stringa facoltativo

    Consente di impostare in modo diverso il colore del frame della finestra quando non è attivo. La colorazione della cornice è disponibile solo se il tipo di frame è chrome.

    inactiveColor deve essere utilizzato insieme a color.

    La colorazione della cornice è una novità di Chrome 36.

  • tipo

    stringa facoltativo

    Tipo di frame: none o chrome (il valore predefinito è chrome).

    Per none, la proprietà CSS -webkit-app-region può essere utilizzata per applicare la trascinabilità alla finestra dell'app.

    È possibile utilizzare -webkit-app-region: drag per contrassegnare le regioni trascinabili. Puoi utilizzare no-drag per disattivare questo stile per gli elementi nidificati.

State

Stato di una finestra: normale, a schermo intero, ingrandita, ridotta a icona.

Enum

"normale"

"schermo intero"

"massimizzato"

"minimizzato"

WindowType

Chrome 45 e versioni successive .

Specifica il tipo di finestra da creare.

Enum

"shell"
Tipo di finestra predefinito.

"panel"
Finestra gestita dal sistema operativo (deprecata).

Metodi

canSetVisibleOnAllWorkspaces()

chrome.app.window.canSetVisibleOnAllWorkspaces()

Indica se la piattaforma attuale supporta la visibilità delle finestre in tutte le aree di lavoro.

Resi

  • booleano

create()

Promesso .
chrome.app.window.create(
  url: string,
  options?: CreateWindowOptions,
  callback?: function,
)

Le dimensioni e la posizione di una finestra possono essere specificate in vari modi. L'opzione più semplice è non specificare nulla, nel qual caso verranno usate una dimensione e una posizione dipendenti dalla piattaforma predefinite.

Per impostare posizione, dimensioni e vincoli della finestra, utilizza le proprietà innerBounds o outerBounds. I limiti interni non includono le decorazioni delle finestre. I limiti esterni includono la barra del titolo e il frame della finestra. Tieni presente che la spaziatura interna tra i limiti interni ed esterni è determinata dal sistema operativo. Pertanto, l'impostazione della stessa proprietà per i limiti interni ed esterni è considerata un errore (ad esempio, l'impostazione di entrambi i valori innerBounds.left e outerBounds.left).

Per ricordare automaticamente le posizioni delle finestre, puoi assegnare loro un ID. Se una finestra ha un ID, questo ID viene utilizzato per ricordare le dimensioni e la posizione della finestra ogni volta che viene spostata o ridimensionata. Queste dimensioni e posizione vengono quindi utilizzate al posto dei limiti specificati alla successiva apertura di una finestra con lo stesso ID. Se devi aprire una finestra con un ID in una posizione diversa da quella predefinita memorizzata, puoi crearla nascosta, spostarla nella posizione desiderata e mostrarla.

Parametri

  • url

    stringa

  • opzioni

    CreateWindowOptions facoltativo

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (createdWindow: AppWindow) => void

Resi

  • Promise<AppWindow>

    Chrome 117 e versioni successive .

    Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.

current()

chrome.app.window.current()

Restituisce un oggetto AppWindow per il contesto corrente dello script (ad es. oggetto "window" JavaScript). Questa operazione può essere chiamata anche su un handle al contesto di uno script per un'altra pagina, ad esempio: otherWindow.chrome.app.window.current().

Resi

get()

chrome.app.window.get(
  id: string,
)

Recupera un elemento AppWindow con l'ID specificato. Se non esiste alcuna finestra con l'ID specificato, viene restituito un valore nullo. Questo metodo è una novità di Chrome 33.

Parametri

  • id

    stringa

Resi

getAll()

chrome.app.window.getAll()

Ottiene un array di tutte le finestre dell'app attualmente create. Questo metodo è una novità di Chrome 33.

Resi

Eventi

onBoundsChanged

chrome.app.window.onBoundsChanged.addListener(
  callback: function,
)

Attivato quando la finestra viene ridimensionata.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onClosed

chrome.app.window.onClosed.addListener(
  callback: function,
)

Attivato quando la finestra è chiusa. Tieni presente che dovrebbe essere ascoltato da una finestra diversa dalla finestra che si chiude, ad esempio dalla pagina in background. Questo perché la finestra chiusa sarà in fase di abbattimento quando viene attivato l'evento, il che significa che non tutte le API nel contesto dello script della finestra funzioneranno correttamente.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onFullscreened

chrome.app.window.onFullscreened.addListener(
  callback: function,
)

Attivato quando la finestra viene visualizzata a schermo intero (tramite l'API AppWindow o HTML5).

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onMaximized

chrome.app.window.onMaximized.addListener(
  callback: function,
)

Attivato quando la finestra è ingrandita.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onMinimized

chrome.app.window.onMinimized.addListener(
  callback: function,
)

Attivato quando la finestra è ridotta a icona.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onRestored

chrome.app.window.onRestored.addListener(
  callback: function,
)

Attivato quando viene ripristinata la riduzione a icona o l'ingrandimento della finestra.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void