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
ObsoletaUtilizza innerBounds o outerBounds.
Recupera i limiti interni della finestra come oggetto
ContentBounds
.La funzione
getBounds
ha questo aspetto:() => {...}
-
returns
-
-
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 43Usa 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 43Usa outerBounds.
Ridimensiona la finestra a
width
xheight
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
ObsoletaUtilizza innerBounds o outerBounds.
Imposta i limiti interni della finestra.
La funzione
setBounds
ha questo aspetto:(bounds: ContentBounds) => {...}
-
limiti
-
-
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 valoreundefined
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 valoreundefined
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
ObsoletaUtilizza 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
ochrome
(il valore predefinito èchrome
). Pernone
, 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 utilizzareno-drag
per disattivare questo stile per gli elementi nidificati.L'utilizzo di
FrameOptions
è una novità nella versione M36. -
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 valoreid
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 perouterBounds
provocherà un errore.Questa proprietà è una nuova versione di Chrome 36.
-
maxHeight
numero facoltativo
ObsoletaUtilizza innerBounds o outerBounds.
Altezza massima della finestra.
-
maxWidth
numero facoltativo
ObsoletaUtilizza innerBounds o outerBounds.
Larghezza massima della finestra.
-
minHeight
numero facoltativo
ObsoletaUtilizza innerBounds o outerBounds.
Altezza minima della finestra.
-
minWidth
numero facoltativo
ObsoletaUtilizza 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 valoreid
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 perouterBounds
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
ObsoletaPiù 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 69Tutte 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 acolor
.La colorazione della cornice è una novità di Chrome 36.
-
tipo
stringa facoltativo
Tipo di frame:
none
ochrome
(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 utilizzareno-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
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()
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
-
createdWindow
-
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
-
AppWindow | non definito
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
-
AppWindow | non definito
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