Beschreibung
Verwenden Sie die chrome.app.window
API, um Zeiträume zu erstellen. Fenster haben einen optionalen Rahmen mit Titelleiste und Größenanpassungssteuerelementen. Sie sind nicht mit Chrome-Browserfenstern verknüpft. Ein Beispiel für diese Optionen finden Sie im Window State Sample.
Typen
AppWindow
Attribute
-
contentWindow
Fenster
Das JavaScript-Objekt „window“ für das erstellte untergeordnete Fenster.
-
id
String
Die ID, mit der das Fenster erstellt wurde.
-
innerBounds
Die Position, Größe und Einschränkungen des Inhalts des Fensters, ohne Fensterdekorationen. Diese Eigenschaft ist neu in Chrome 36.
-
outerBounds
Die Position, Größe und Einschränkungen des Fensters, einschließlich der Fensterdekorationen wie Titelleiste und Rahmen. Diese Eigenschaft ist neu in Chrome 36.
-
clearAttention
void
Achten Sie auf das Fenster.
Die
clearAttention
-Funktion sieht so aus:() => {...}
-
Schließen
void
Schließen Sie das Fenster.
Die
close
-Funktion sieht so aus:() => {...}
-
drawAttention
void
Machen Sie auf das Fenster aufmerksam.
Die
drawAttention
-Funktion sieht so aus:() => {...}
-
Fokus
void
Fokus auf das Fenster setzen
Die
focus
-Funktion sieht so aus:() => {...}
-
Vollbild
void
Maximiert das Fenster.
Der Nutzer kann das Fenster durch Drücken der ESC-Taste wiederherstellen. Eine Anwendung kann verhindern, dass der Vollbildmodus verlassen wird, wenn die ESC-Taste gedrückt wird. Dazu muss sie die Berechtigung
app.window.fullscreen.overrideEsc
anfordern und das Ereignis in den Keydown- und Keyup-Handlern durch Aufrufen von .preventDefault() abbrechen:window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };
Hinweis: Mit
window.fullscreen()
wird das gesamte Fenster in den Vollbildmodus versetzt. Eine Nutzergeste ist nicht erforderlich. Die HTML5-Vollbild-API kann auch verwendet werden, um in den Vollbildmodus zu wechseln (weitere Informationen finden Sie unter Web-APIs).Die
fullscreen
-Funktion sieht so aus:() => {...}
-
getBounds
void
EingestelltVerwenden Sie innerBounds oder outerBounds.
Ruft die inneren Grenzen des Fensters als
ContentBounds
-Objekt ab.Die
getBounds
-Funktion sieht so aus:() => {...}
-
Gibt zurück
-
-
Ausblenden
void
Blenden Sie das Fenster aus. Hat keine Auswirkungen, wenn das Fenster bereits ausgeblendet ist.
Die
hide
-Funktion sieht so aus:() => {...}
-
isAlwaysOnTop
void
Wird das Fenster immer im Vordergrund angezeigt?
Die
isAlwaysOnTop
-Funktion sieht so aus:() => {...}
-
Gibt zurück
boolean
-
-
isFullscreen
void
Wird das Fenster im Vollbildmodus angezeigt? Das ist der Fall, wenn das Fenster im Vollbildmodus erstellt oder über die
AppWindow
- oder HTML5-Vollbild-APIs in den Vollbildmodus versetzt wurde.Die
isFullscreen
-Funktion sieht so aus:() => {...}
-
Gibt zurück
boolean
-
-
isMaximized
void
Ist das Fenster maximiert?
Die
isMaximized
-Funktion sieht so aus:() => {...}
-
Gibt zurück
boolean
-
-
isMinimized
void
Ist das Fenster minimiert?
Die
isMinimized
-Funktion sieht so aus:() => {...}
-
Gibt zurück
boolean
-
-
maximieren
void
Maximieren Sie das Fenster.
Die
maximize
-Funktion sieht so aus:() => {...}
-
minimieren
void
Minimieren Sie das Fenster.
Die
minimize
-Funktion sieht so aus:() => {...}
-
moveTo
void
Seit Chrome 43 eingestelltouterBounds verwenden
Verschieben Sie das Fenster an die Position (
left
,top
).Die
moveTo
-Funktion sieht so aus:(left: number, top: number) => {...}
-
links
Zahl
-
oben
Zahl
-
-
resizeTo
void
Seit Chrome 43 eingestelltouterBounds verwenden
Ändere die Größe des Fensters auf
width
×height
Pixel.Die
resizeTo
-Funktion sieht so aus:(width: number, height: number) => {...}
-
Breite
Zahl
-
Höhe
Zahl
-
-
Wiederherstellen
void
Stellt das Fenster wieder her und beendet den maximierten, minimierten oder Vollbildmodus.
Die
restore
-Funktion sieht so aus:() => {...}
-
setAlwaysOnTop
void
Legen Sie fest, ob das Fenster über den meisten anderen Fenstern angezeigt werden soll. Erfordert die Berechtigung
alwaysOnTopWindows
.Die
setAlwaysOnTop
-Funktion sieht so aus:(alwaysOnTop: boolean) => {...}
-
alwaysOnTop
boolean
-
-
setBounds
void
EingestelltVerwenden Sie innerBounds oder outerBounds.
Legen Sie die inneren Grenzen des Fensters fest.
Die
setBounds
-Funktion sieht so aus:(bounds: ContentBounds) => {...}
-
Grenzwerte
-
-
setVisibleOnAllWorkspaces
void
Legen Sie fest, ob das Fenster in allen Arbeitsbereichen sichtbar ist. (Nur für Plattformen, die dies unterstützen.)
Die
setVisibleOnAllWorkspaces
-Funktion sieht so aus:(alwaysVisible: boolean) => {...}
-
alwaysVisible
boolean
-
-
Einblenden
void
Fenster anzeigen Hat keine Auswirkungen, wenn das Fenster bereits sichtbar ist. Das Fenster wird fokussiert, wenn
focused
auf „true“ gesetzt oder ausgelassen wird.Die
show
-Funktion sieht so aus:(focused?: boolean) => {...}
-
Fokussiert
boolean optional
-
Bounds
Attribute
-
Höhe
Zahl
Mit dieser Eigenschaft kann die aktuelle Höhe des Inhalts oder Fensters gelesen oder geschrieben werden.
-
links
Zahl
Mit dieser Eigenschaft kann die aktuelle X-Koordinate des Inhalts oder Fensters gelesen oder geschrieben werden.
-
maxHeight
number optional
Mit dieser Eigenschaft kann die aktuelle maximale Höhe des Inhalts oder Fensters gelesen oder geschrieben werden. Der Wert
null
gibt „nicht angegeben“ an. -
maxWidth
number optional
Mit dieser Eigenschaft kann die aktuelle maximale Breite des Inhalts oder Fensters gelesen oder geschrieben werden. Der Wert
null
gibt „nicht angegeben“ an. -
minHeight
number optional
Mit dieser Eigenschaft kann die aktuelle Mindesthöhe des Inhalts oder Fensters gelesen oder geschrieben werden. Der Wert
null
gibt „nicht angegeben“ an. -
minWidth
number optional
Mit dieser Eigenschaft kann die aktuelle Mindestbreite des Inhalts oder Fensters gelesen oder geschrieben werden. Der Wert
null
gibt „nicht angegeben“ an. -
oben
Zahl
Mit dieser Eigenschaft kann die aktuelle Y-Koordinate des Inhalts oder Fensters gelesen oder geschrieben werden.
-
Breite
Zahl
Mit dieser Eigenschaft kann die aktuelle Breite des Inhalts oder Fensters gelesen oder geschrieben werden.
-
setMaximumSize
void
Legen Sie die maximalen Größenbeschränkungen für den Inhalt oder das Fenster fest. Die maximale Breite oder Höhe kann auf
null
festgelegt werden, um die Einschränkung zu entfernen. Bei einem Wert vonundefined
bleibt eine Einschränkung unverändert.Die
setMaximumSize
-Funktion sieht so aus:(maxWidth: number, maxHeight: number) => {...}
-
maxWidth
Zahl
-
maxHeight
Zahl
-
-
setMinimumSize
void
Legen Sie die Mindestgrößenbeschränkungen für den Inhalt oder das Fenster fest. Die Mindestbreite oder ‑höhe kann auf
null
festgelegt werden, um die Einschränkung zu entfernen. Bei einem Wert vonundefined
bleibt eine Einschränkung unverändert.Die
setMinimumSize
-Funktion sieht so aus:(minWidth: number, minHeight: number) => {...}
-
minWidth
Zahl
-
minHeight
Zahl
-
-
setPosition
void
Legen Sie die Position des Inhalts oder Fensters links und oben fest.
Die
setPosition
-Funktion sieht so aus:(left: number, top: number) => {...}
-
links
Zahl
-
oben
Zahl
-
-
setSize
void
Legen Sie die Breite und Höhe des Inhalts oder Fensters fest.
Die
setSize
-Funktion sieht so aus:(width: number, height: number) => {...}
-
Breite
Zahl
-
Höhe
Zahl
-
BoundsSpecification
Attribute
-
Höhe
number optional
Die Höhe des Inhalts oder Fensters.
-
links
number optional
Die X-Koordinate des Inhalts oder Fensters.
-
maxHeight
number optional
Die maximale Höhe des Inhalts oder Fensters.
-
maxWidth
number optional
Die maximale Breite des Inhalts oder Fensters.
-
minHeight
number optional
Die Mindesthöhe des Inhalts oder Fensters.
-
minWidth
number optional
Die Mindestbreite des Inhalts oder Fensters.
-
oben
number optional
Die Y-Koordinate des Inhalts oder Fensters.
-
Breite
number optional
Die Breite des Inhalts oder Fensters.
ContentBounds
Attribute
-
Höhe
number optional
-
links
number optional
-
oben
number optional
-
Breite
number optional
CreateWindowOptions
Attribute
-
alwaysOnTop
boolean optional
Bei „true“ bleibt das Fenster über den meisten anderen Fenstern. Wenn es mehrere Fenster dieser Art gibt, wird das aktuell fokussierte Fenster im Vordergrund angezeigt. Erfordert die Berechtigung
alwaysOnTopWindows
. Die Standardeinstellung ist "false".Rufen Sie
setAlwaysOnTop()
für das Fenster auf, um diese Eigenschaft nach dem Erstellen zu ändern. -
Grenzwerte
ContentBounds optional
EingestelltVerwenden Sie innerBounds oder outerBounds.
Größe und Position des Inhalts im Fenster (ohne Titelleiste). Wenn auch eine ID angegeben wird und ein Fenster mit einer übereinstimmenden ID bereits angezeigt wurde, werden stattdessen die gespeicherten Grenzen des Fensters verwendet.
-
Fokussiert
boolean optional
Wenn „true“, wird das Fenster beim Erstellen fokussiert. Der Standardwert ist „true“.
-
Frame
String | FrameOptions optional
Rahmentyp:
none
oderchrome
(Standardeinstellung istchrome
). Beinone
kann die CSS-Eigenschaft-webkit-app-region
verwendet werden, um das App-Fenster verschiebbar zu machen. Mit-webkit-app-region: drag
können Sie Regionen als ziehbar markieren. Mitno-drag
können Sie diesen Stil für verschachtelte Elemente deaktivieren.Die Verwendung von
FrameOptions
ist neu in M36. -
boolean optional
Bei „true“ wird das Fenster im ausgeblendeten Zustand erstellt. Rufen Sie show() für das Fenster auf, um es anzuzeigen, nachdem es erstellt wurde. Die Standardeinstellung ist "false".
-
Symbol
String optional
Chrome 54 und höherURL des Fenstersymbols. Ein Fenster kann ein eigenes Symbol haben, wenn „showInShelf“ auf „true“ gesetzt ist. Die URL sollte eine globale oder eine extensionspezifische lokale URL sein.
-
id
String optional
ID zur Identifizierung des Fensters. Damit werden Größe und Position des Fensters gespeichert und wiederhergestellt, wenn später ein Fenster mit derselben ID geöffnet wird. Wenn ein Fenster mit einer bestimmten ID erstellt wird, während bereits ein anderes Fenster mit derselben ID vorhanden ist, wird das aktuell geöffnete Fenster fokussiert, anstatt ein neues Fenster zu erstellen.
-
innerBounds
BoundsSpecification optional
Wird verwendet, um die Anfangsposition, die Anfangsgröße und die Einschränkungen des Inhalts des Fensters (ohne Fensterdekorationen) anzugeben. Wenn auch ein
id
angegeben ist und zuvor ein Fenster mit einem passendenid
angezeigt wurde, werden stattdessen die gespeicherten Grenzen verwendet.Die Auffüllung zwischen den inneren und äußeren Grenzen wird vom Betriebssystem bestimmt. Wenn Sie also für
innerBounds
undouterBounds
dieselbe Eigenschaft für die Grenzen festlegen, wird ein Fehler ausgegeben.Diese Eigenschaft ist neu in Chrome 36.
-
maxHeight
number optional
EingestelltVerwenden Sie innerBounds oder outerBounds.
Maximale Höhe des Fensters.
-
maxWidth
number optional
EingestelltVerwenden Sie innerBounds oder outerBounds.
Maximale Breite des Fensters.
-
minHeight
number optional
EingestelltVerwenden Sie innerBounds oder outerBounds.
Mindesthöhe des Fensters.
-
minWidth
number optional
EingestelltVerwenden Sie innerBounds oder outerBounds.
Die Mindestbreite des Fensters.
-
outerBounds
BoundsSpecification optional
Wird verwendet, um die Anfangsposition, die Anfangsgröße und die Einschränkungen des Fensters anzugeben, einschließlich Fensterdekorationen wie Titelleiste und Rahmen. Wenn auch ein
id
angegeben ist und zuvor ein Fenster mit einem passendenid
angezeigt wurde, werden stattdessen die gespeicherten Grenzen verwendet.Die Auffüllung zwischen den inneren und äußeren Grenzen wird vom Betriebssystem bestimmt. Wenn Sie also für
innerBounds
undouterBounds
dieselbe Eigenschaft für die Grenzen festlegen, wird ein Fehler ausgegeben.Diese Eigenschaft ist neu in Chrome 36.
-
Größe kann geändert werden
boolean optional
Wenn „true“, kann die Größe des Fensters vom Nutzer geändert werden. Der Standardwert ist „true“.
-
showInShelf
boolean optional
Chrome 54 und höherBei „true“ hat das Fenster ein eigenes Ablagesymbol. Andernfalls wird das Fenster im Shelf mit anderen Fenstern gruppiert, die mit der App verknüpft sind. Der Standardwert ist „false“. Wenn „showInShelf“ auf „true“ gesetzt ist, müssen Sie eine ID für das Fenster angeben.
-
Singleton
boolean optional
EingestelltMehrere Fenster mit derselben ID werden nicht mehr unterstützt.
Wenn Sie standardmäßig eine ID für das Fenster angeben, wird das Fenster nur erstellt, wenn noch kein anderes Fenster mit derselben ID vorhanden ist. Wenn bereits ein Fenster mit derselben ID vorhanden ist, wird stattdessen dieses Fenster aktiviert. Wenn Sie mehrere Fenster mit derselben ID erstellen möchten, können Sie diese Eigenschaft auf „false“ setzen.
-
Bundesstaat
Bundesland optional
Der Anfangszustand des Fensters, sodass es bereits im Vollbildmodus, maximiert oder minimiert erstellt werden kann. Die Standardeinstellung ist „normal“.
-
Typ
WindowType optional
Chrome 45 und höher Seit Chrome 69 eingestelltAlle App-Fenster verwenden den Fenstertyp „shell“
Typ des zu erstellenden Fensters.
-
visibleOnAllWorkspaces
boolean optional
Wenn „true“ und von der Plattform unterstützt, ist das Fenster in allen Arbeitsbereichen sichtbar.
FrameOptions
Attribute
-
activeColor
String optional
Ermöglicht das Festlegen der Rahmenfarbe des Fensters, wenn es aktiv ist. Die Rahmenfarbe ist nur verfügbar, wenn der Rahmentyp
chrome
ist.Die Rahmenfarbe ist nur verfügbar, wenn der Rahmentyp
chrome
ist.Die Rahmenfarbe ist neu in Chrome 36.
-
Farbe
String optional
Ermöglicht das Festlegen der Rahmenfarbe. Die Rahmenfarbe ist nur verfügbar, wenn der Rahmentyp
chrome
ist.Die Rahmenfarbe ist neu in Chrome 36.
-
inactiveColor
String optional
Ermöglicht es, die Rahmenfarbe des Fensters im inaktiven Zustand anders als die aktive Farbe festzulegen. Die Rahmenfarbe ist nur verfügbar, wenn der Rahmentyp
chrome
ist.inactiveColor
muss in Verbindung mitcolor
verwendet werden.Die Rahmenfarbe ist neu in Chrome 36.
-
Typ
String optional
Frame-Typ:
none
oderchrome
(Standard istchrome
).Für
none
kann die CSS-Eigenschaft-webkit-app-region
verwendet werden, um das App-Fenster ziehbar zu machen.Mit
-webkit-app-region: drag
können Sie Regionen als ziehbar markieren. Mitno-drag
können Sie diesen Stil für verschachtelte Elemente deaktivieren.
State
Status eines Fensters: normal, Vollbild, maximiert, minimiert.
Enum
"normal"
"fullscreen"
"maximized"
"minimized"
WindowType
Gibt den Typ des zu erstellenden Fensters an.
Enum
„shell“
Standardfenstertyp.
„panel“
Vom Betriebssystem verwaltetes Fenster (eingestellt)
Methoden
canSetVisibleOnAllWorkspaces()
chrome.app.window.canSetVisibleOnAllWorkspaces(): boolean
Gibt an, ob die aktuelle Plattform unterstützt, dass Fenster auf allen Arbeitsbereichen sichtbar sind.
Ausgabe
-
boolean
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
): Promise<AppWindow>
Die Größe und Position eines Fensters können auf verschiedene Arten angegeben werden. Die einfachste Option ist, nichts anzugeben. In diesem Fall werden eine Standardgröße und eine plattformabhängige Position verwendet.
Verwenden Sie die Eigenschaften innerBounds
oder outerBounds
, um die Position, Größe und Einschränkungen des Fensters festzulegen. Die inneren Grenzen umfassen keine Fensterdekorationen. Die äußeren Grenzen umfassen die Titelleiste und den Rahmen des Fensters. Die Auffüllung zwischen den inneren und äußeren Grenzen wird vom Betriebssystem bestimmt. Daher gilt es als Fehler, dieselbe Eigenschaft für die inneren und äußeren Grenzen festzulegen (z. B. sowohl innerBounds.left
als auch outerBounds.left
).
Wenn Sie sich die Positionen von Fenstern automatisch merken lassen möchten, können Sie ihnen IDs zuweisen. Wenn ein Fenster eine ID hat, wird diese ID verwendet, um sich die Größe und Position des Fensters zu merken, wenn es verschoben oder in der Größe angepasst wird. Diese Größe und Position werden dann anstelle der angegebenen Grenzen beim nachfolgenden Öffnen eines Fensters mit derselben ID verwendet. Wenn Sie ein Fenster mit einer ID an einem anderen Ort als dem gespeicherten Standardort öffnen müssen, können Sie es ausgeblendet erstellen, an den gewünschten Ort verschieben und dann einblenden.
Parameter
-
URL
String
-
Optionen
CreateWindowOptions optional
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(createdWindow: AppWindow) => void
-
createdWindow
-
Ausgabe
-
Promise<AppWindow>
Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
current()
chrome.app.window.current(): AppWindow | undefined
Gibt ein AppWindow
-Objekt für den aktuellen Script-Kontext zurück (d. h. das JavaScript-Objekt „window“). Diese Methode kann auch für ein Handle für einen Skriptkontext für eine andere Seite aufgerufen werden, z. B. „otherWindow.chrome.app.window.current()“.
Ausgabe
-
AppWindow | undefined
get()
chrome.app.window.get(
id: string,
): AppWindow | undefined
Ruft ein AppWindow
mit der angegebenen ID ab. Wenn kein Fenster mit der angegebenen ID vorhanden ist, wird „null“ zurückgegeben. Diese Methode ist neu in Chrome 33.
Parameter
-
id
String
Ausgabe
-
AppWindow | undefined
getAll()
chrome.app.window.getAll(): AppWindow[]
Ruft ein Array aller derzeit erstellten App-Fenster ab. Diese Methode ist neu in Chrome 33.
Ausgabe
Ereignisse
onBoundsChanged
chrome.app.window.onBoundsChanged.addListener(
callback: function,
)
Wird ausgelöst, wenn die Größe des Fensters geändert wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onClosed
chrome.app.window.onClosed.addListener(
callback: function,
)
Wird ausgelöst, wenn das Fenster geschlossen wird. Hinweis: Das Ereignis sollte in einem anderen Fenster als dem, das geschlossen wird, abgehört werden, z. B. auf der Hintergrundseite. Das liegt daran, dass das Fenster, das geschlossen wird, gerade geschlossen wird, wenn das Ereignis ausgelöst wird. Das bedeutet, dass nicht alle APIs im Skriptkontext des Fensters funktionieren.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onFullscreened
chrome.app.window.onFullscreened.addListener(
callback: function,
)
Wird ausgelöst, wenn das Fenster im Vollbildmodus angezeigt wird (entweder über die AppWindow
- oder HTML5-APIs).
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onMaximized
chrome.app.window.onMaximized.addListener(
callback: function,
)
Wird ausgelöst, wenn das Fenster maximiert wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onMinimized
chrome.app.window.onMinimized.addListener(
callback: function,
)
Wird ausgelöst, wenn das Fenster minimiert wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onRestored
chrome.app.window.onRestored.addListener(
callback: function,
)
Wird ausgelöst, wenn das Fenster nach der Minimierung oder Maximierung wiederhergestellt wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void