Descrizione
Utilizza l'API chrome.app.window per creare finestre. Le finestre hanno una cornice facoltativa con barra del titolo e controlli di ridimensionamento. Non sono associate ad alcuna finestra del browser Chrome. Per una dimostrazione di queste opzioni, consulta l'esempio di stato della finestra.
Tipi
AppWindow
Proprietà
-
contentWindow
Finestra
L'oggetto "window" JavaScript per l'elemento secondario creato.
-
id
stringa
L'ID con cui è stata creata la finestra.
-
innerBounds
La posizione, le dimensioni e i vincoli dei contenuti della finestra, che non includono le decorazioni della finestra. Questa proprietà è nuova in Chrome 36.
-
outerBounds
La posizione, le dimensioni e i vincoli della finestra, che includono le decorazioni della finestra, come la barra del titolo e la cornice. Questa proprietà è una novità di Chrome 36.
-
clearAttention
void
Attenzione chiara alla finestra.
La funzione
clearAttentionha il seguente aspetto:() => {...} -
chiudi
void
Chiudi la finestra.
La funzione
closeha il seguente aspetto:() => {...} -
drawAttention
void
Attira l'attenzione sulla finestra.
La funzione
drawAttentionha il seguente aspetto:() => {...} -
messa a fuoco
void
Impostare lo stato attivo sulla finestra.
La funzione
focusha il seguente aspetto:() => {...} -
schermo intero
void
Visualizza la finestra a schermo intero.
L'utente potrà ripristinare la finestra premendo ESC. Un'applicazione può impedire l'uscita dallo stato a schermo intero quando viene premuto ESC richiedendo l'autorizzazione
app.window.fullscreen.overrideEsce annullando l'evento chiamando .preventDefault() nei gestori keydown e keyup, in questo modo:window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };Tieni presente che
window.fullscreen()farà sì che l'intera finestra venga visualizzata a schermo intero e non richiede un'attivazione dall'utente. L'API HTML5 per lo schermo intero può essere utilizzata anche per attivare la modalità a schermo intero (per maggiori dettagli, consulta API web).La funzione
fullscreenha il seguente aspetto:() => {...} -
getBounds
void
DeprecatoUtilizza innerBounds o outerBounds.
Recupera i limiti interni della finestra come oggetto
ContentBounds.La funzione
getBoundsha il seguente aspetto:() => {...}-
returns
-
-
nascondi
void
Nascondi la finestra. Non succede nulla se la finestra è già nascosta.
La funzione
hideha il seguente aspetto:() => {...} -
isAlwaysOnTop
void
La finestra è sempre in primo piano?
La funzione
isAlwaysOnTopha il seguente aspetto:() => {...}-
returns
booleano
-
-
isFullscreen
void
La finestra è a schermo intero? Questo valore sarà true se la finestra è stata creata a schermo intero o è stata impostata a schermo intero tramite le API
AppWindowo HTML5 per lo schermo intero.La funzione
isFullscreenha il seguente aspetto:() => {...}-
returns
booleano
-
-
isMaximized
void
La finestra è ingrandita?
La funzione
isMaximizedha il seguente aspetto:() => {...}-
returns
booleano
-
-
isMinimized
void
La finestra è ridotta a icona?
La funzione
isMinimizedha il seguente aspetto:() => {...}-
returns
booleano
-
-
massimizza
void
Ingrandisci la finestra.
La funzione
maximizeha il seguente aspetto:() => {...} -
riduci a icona
void
Riduci a icona la finestra.
La funzione
minimizeha il seguente aspetto:() => {...} -
moveTo
void
Ritirato da Chrome 43Utilizza outerBounds.
Sposta la finestra nella posizione (
left,top).La funzione
moveToha il seguente aspetto:(left: number, top: number) => {...}
-
sinistra
numero
-
in alto
numero
-
-
resizeTo
void
Ritirato da Chrome 43Utilizza outerBounds.
Ridimensiona la finestra a
widthxheightpixel.La funzione
resizeToha il seguente aspetto:(width: number, height: number) => {...}
-
larghezza
numero
-
altezza
numero
-
-
ripristina
void
Ripristina la finestra, uscendo da uno stato di ingrandimento, riduzione a icona o schermo intero.
La funzione
restoreha il seguente aspetto:() => {...} -
setAlwaysOnTop
void
Imposta se la finestra deve rimanere sopra la maggior parte delle altre finestre. Richiede l'autorizzazione
alwaysOnTopWindows.La funzione
setAlwaysOnTopha il seguente aspetto:(alwaysOnTop: boolean) => {...}
-
alwaysOnTop
booleano
-
-
setBounds
void
DeprecatoUtilizza innerBounds o outerBounds.
Imposta i limiti interni della finestra.
La funzione
setBoundsha il seguente aspetto:(bounds: ContentBounds) => {...}
-
bounds
-
-
setVisibleOnAllWorkspaces
void
Imposta se la finestra è visibile in tutte le aree di lavoro. (Solo per le piattaforme che supportano questa funzionalità).
La funzione
setVisibleOnAllWorkspacesha il seguente aspetto:(alwaysVisible: boolean) => {...}
-
alwaysVisible
booleano
-
-
mostra
void
Mostra la finestra. Non succede nulla se la finestra è già visibile. Attiva la finestra se
focusedè impostato su true o se viene omesso.La funzione
showha il seguente aspetto:(focused?: boolean) => {...}
-
Focalizzati
boolean facoltativo
-
Bounds
Proprietà
-
altezza
numero
Questa proprietà può essere utilizzata per leggere o scrivere l'altezza corrente dei contenuti o della finestra.
-
sinistra
numero
Questa proprietà può essere utilizzata per leggere o scrivere la coordinata X corrente dei contenuti o della finestra.
-
maxHeight
number optional
Questa proprietà può essere utilizzata per leggere o scrivere l'altezza massima corrente dei contenuti o della finestra. Un valore pari a
nullindica "non specificato". -
maxWidth
number optional
Questa proprietà può essere utilizzata per leggere o scrivere la larghezza massima corrente dei contenuti o della finestra. Un valore pari a
nullindica "non specificato". -
minHeight
number optional
Questa proprietà può essere utilizzata per leggere o scrivere l'altezza minima corrente dei contenuti o della finestra. Un valore pari a
nullindica "non specificato". -
minWidth
number optional
Questa proprietà può essere utilizzata per leggere o scrivere la larghezza minima corrente dei contenuti o della finestra. Un valore pari a
nullindica "non specificato". -
in alto
numero
Questa proprietà può essere utilizzata per leggere o scrivere la coordinata Y corrente dei contenuti o della finestra.
-
larghezza
numero
Questa proprietà può essere utilizzata per leggere o scrivere la larghezza corrente dei contenuti o della finestra.
-
setMaximumSize
void
Imposta i vincoli di dimensione massima dei contenuti o della finestra. La larghezza o l'altezza massima può essere impostata su
nullper rimuovere il vincolo. Un valoreundefinedlascerà un vincolo invariato.La funzione
setMaximumSizeha il seguente aspetto:(maxWidth: number, maxHeight: number) => {...}
-
maxWidth
numero
-
maxHeight
numero
-
-
setMinimumSize
void
Imposta i vincoli di dimensione minima dei contenuti o della finestra. La larghezza o l'altezza minima può essere impostata su
nullper rimuovere il vincolo. Un valoreundefinedlascerà un vincolo invariato.La funzione
setMinimumSizeha il seguente aspetto:(minWidth: number, minHeight: number) => {...}
-
minWidth
numero
-
minHeight
numero
-
-
setPosition
void
Imposta la posizione sinistra e superiore dei contenuti o della finestra.
La funzione
setPositionha il seguente aspetto:(left: number, top: number) => {...}
-
sinistra
numero
-
in alto
numero
-
-
setSize
void
Imposta la larghezza e l'altezza dei contenuti o della finestra.
La funzione
setSizeha il seguente aspetto:(width: number, height: number) => {...}
-
larghezza
numero
-
altezza
numero
-
BoundsSpecification
Proprietà
-
altezza
number optional
L'altezza dei contenuti o della finestra.
-
sinistra
number optional
La coordinata X dei contenuti o della finestra.
-
maxHeight
number optional
L'altezza massima dei contenuti o della finestra.
-
maxWidth
number optional
La larghezza massima dei contenuti o della finestra.
-
minHeight
number optional
L'altezza minima dei contenuti o della finestra.
-
minWidth
number optional
La larghezza minima dei contenuti o della finestra.
-
in alto
number optional
La coordinata Y dei contenuti o della finestra.
-
larghezza
number optional
La larghezza dei contenuti o della finestra.
ContentBounds
Proprietà
-
altezza
number optional
-
sinistra
number optional
-
in alto
number optional
-
larghezza
number optional
CreateWindowOptions
Proprietà
-
alwaysOnTop
boolean facoltativo
Se impostato su true, la finestra rimarrà sopra la maggior parte delle altre finestre. Se sono presenti più finestre di questo tipo, la finestra attualmente attiva sarà in primo piano. Richiede l'autorizzazione
alwaysOnTopWindows. Il valore predefinito è false.Chiama
setAlwaysOnTop()sulla finestra per modificare questa proprietà dopo la creazione. -
bounds
ContentBounds facoltativo
DeprecatoUtilizza innerBounds o outerBounds.
Dimensioni e posizione dei contenuti nella finestra (esclusa la barra del titolo). Se viene specificato anche un ID e in precedenza è stata mostrata una finestra con un ID corrispondente, verranno utilizzati i limiti memorizzati della finestra.
-
Focalizzati
boolean facoltativo
Se impostato su true, la finestra verrà attivata al momento della creazione. Il valore predefinito è true.
-
cornice
string | FrameOptions facoltativo
Tipo di frame:
noneochrome(il valore predefinito èchrome). Pernone, la proprietà CSS-webkit-app-regionpuò essere utilizzata per applicare la trascinabilità alla finestra dell'app.-webkit-app-region: dragpuò essere utilizzato per contrassegnare le regioni trascinabili.no-dragpuò essere utilizzato per disattivare questo stile sugli elementi nidificati.L'utilizzo di
FrameOptionsè una novità di M36. -
boolean facoltativo
Se impostato su true, la finestra verrà creata in uno stato nascosto. Chiama show() sulla finestra per mostrarla una volta creata. Il valore predefinito è false.
-
icona
stringa facoltativa
Chrome 54 e versioni successiveURL 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 URL locale dell'estensione.
-
id
stringa facoltativa
ID per identificare la finestra. Verrà utilizzato per ricordare le dimensioni e la posizione della finestra e ripristinare questa geometria quando viene aperta 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
ide in precedenza è stata mostrata una finestra con unidcorrispondente, verranno utilizzati i limiti memorizzati.Tieni presente che la spaziatura interna tra i limiti interni ed esterni è determinata dal sistema operativo. Pertanto, l'impostazione della stessa proprietà bounds per
innerBoundseouterBoundsgenererà un errore.Questa proprietà è una novità di Chrome 36.
-
maxHeight
number optional
DeprecatoUtilizza innerBounds o outerBounds.
Altezza massima della finestra.
-
maxWidth
number optional
DeprecatoUtilizza innerBounds o outerBounds.
Larghezza massima della finestra.
-
minHeight
number optional
DeprecatoUtilizza innerBounds o outerBounds.
Altezza minima della finestra.
-
minWidth
number optional
DeprecatoUtilizza 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 la cornice). Se viene specificato anche un
ide in precedenza è stata mostrata una finestra con unidcorrispondente, verranno utilizzati i limiti memorizzati.Tieni presente che la spaziatura interna tra i limiti interni ed esterni è determinata dal sistema operativo. Pertanto, l'impostazione della stessa proprietà bounds per
innerBoundseouterBoundsgenererà un errore.Questa proprietà è nuova in Chrome 36.
-
ridimensionabile
boolean facoltativo
Se impostato su true, la finestra sarà ridimensionabile dall'utente. Il valore predefinito è true.
-
showInShelf
boolean facoltativo
Chrome 54 e versioni successiveSe impostato su true, la finestra avrà la propria icona nella 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
boolean facoltativo
DeprecatoPiù finestre con lo stesso ID non sono più supportate.
Per impostazione predefinita, se specifichi un ID per la finestra, questa verrà creata solo se non esiste già un'altra finestra con lo stesso ID. Se esiste già una finestra con lo stesso ID, viene attivata quella finestra. Se vuoi creare più finestre con lo stesso ID, puoi impostare questa proprietà su false.
-
stato
Stato facoltativo
Lo stato iniziale della finestra, che consente di crearla già a schermo intero, ingrandita o ridotta a icona. Il valore predefinito è "normal".
-
tipo
WindowType facoltativo
Chrome 45 e versioni successive Ritirato da Chrome 69Tutte le finestre delle app utilizzano il tipo di finestra "shell"
Il tipo di finestra da creare.
-
visibleOnAllWorkspaces
boolean facoltativo
Se il valore è true e la piattaforma lo supporta, la finestra sarà visibile in tutte le aree di lavoro.
FrameOptions
Proprietà
-
activeColor
stringa facoltativa
Consente di impostare il colore della cornice della finestra quando è attiva. La colorazione della cornice è disponibile solo se il tipo di cornice è
chrome.La colorazione della cornice è disponibile solo se il tipo di cornice è
chrome.La colorazione dei frame è una novità di Chrome 36.
-
colore
stringa facoltativa
Consente di impostare il colore del frame. La colorazione della cornice è disponibile solo se il tipo di cornice è
chrome.La colorazione dei frame è una novità di Chrome 36.
-
inactiveColor
stringa facoltativa
Consente di impostare il colore della cornice della finestra quando è inattiva in modo diverso dal colore attivo. La colorazione della cornice è disponibile solo se il tipo di cornice è
chrome.inactiveColordeve essere utilizzato insieme acolor.La colorazione dei frame è una novità di Chrome 36.
-
tipo
stringa facoltativa
Tipo di frame:
noneochrome(il valore predefinito èchrome).Per
none, la proprietà CSS-webkit-app-regionpuò essere utilizzata per applicare la trascinabilità alla finestra dell'app.-webkit-app-region: dragpuò essere utilizzato per contrassegnare le regioni trascinabili.no-dragpuò essere utilizzato per disattivare questo stile sugli elementi nidificati.
State
Stato di una finestra: normale, a schermo intero, ingrandita, ridotta a icona.
Enum
"normal"
"fullscreen"
"maximized"
"minimized"
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(): boolean
Indica se la piattaforma attuale supporta la visualizzazione delle finestre in tutte le aree di lavoro.
Resi
-
booleano
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
): Promise<AppWindow>
Le dimensioni e la posizione di una finestra possono essere specificate in diversi modi. L'opzione più semplice è non specificare nulla, nel qual caso verranno utilizzate le dimensioni predefinite e la posizione dipendente dalla piattaforma.
Per impostare la posizione, le dimensioni e i 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 la cornice 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 innerBounds.left e outerBounds.left).
Per ricordare automaticamente le posizioni delle finestre, puoi assegnare loro degli ID. Se una finestra ha un ID, questo viene utilizzato per ricordare le dimensioni e la posizione della finestra ogni volta che viene spostata o ridimensionata. Queste dimensioni e questa posizione vengono poi 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 poi mostrarla.
Parametri
-
url
stringa
-
opzioni
CreateWindowOptions facoltativo
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(createdWindow: AppWindow) => void
-
createdWindow
-
Resi
-
Promise<AppWindow>
Chrome 117 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
current()
chrome.app.window.current(): AppWindow | undefined
Restituisce un oggetto AppWindow per il contesto dello script corrente (ovvero l'oggetto "window" JavaScript). Questo metodo può essere chiamato anche su un handle di un contesto di script per un'altra pagina, ad esempio: otherWindow.chrome.app.window.current().
Resi
-
AppWindow | undefined
get()
chrome.app.window.get(
id: string,
): AppWindow | undefined
Recupera un AppWindow con l'ID specificato. Se non esiste una finestra con l'ID specificato, viene restituito null. Questo metodo è nuovo in Chrome 33.
Parametri
-
id
stringa
Resi
-
AppWindow | undefined
getAll()
chrome.app.window.getAll(): AppWindow[]
Restituisce 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
callbackha il seguente aspetto:() => void
onClosed
chrome.app.window.onClosed.addListener(
callback: function,
)
Attivato quando la finestra viene chiusa. Tieni presente che questo evento deve essere ascoltato da una finestra diversa da quella che viene chiusa, ad esempio dalla pagina in background. Questo perché la finestra che viene chiusa sarà in fase di chiusura quando viene attivato l'evento, il che significa che non tutte le API nel contesto dello script della finestra saranno funzionali.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void
onFullscreened
chrome.app.window.onFullscreened.addListener(
callback: function,
)
Attivato quando la finestra viene visualizzata a schermo intero (tramite le API AppWindow o HTML5).
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void
onMaximized
chrome.app.window.onMaximized.addListener(
callback: function,
)
Attivato quando la finestra viene ingrandita.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void
onMinimized
chrome.app.window.onMinimized.addListener(
callback: function,
)
Attivato quando la finestra viene ridotta a icona.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void
onRestored
chrome.app.window.onRestored.addListener(
callback: function,
)
Attivato quando la finestra viene ripristinata dopo essere stata ridotta a icona o ingrandita.
Parametri
-
callback
funzione
Il parametro
callbackha il seguente aspetto:() => void