Objet BrowserWindowConstructorOptions
width
Integer (facultatif) - Largeur de la fenêtre en pixels. Par défaut800
.height
Integer(facultatif) - Hauteur de la fenêtre en pixels. Par defaut600
.x
Integer (optionel) - (obligatoire si le paramètre y est utilisé) décalage à gauche de la fenêtre. Le defaut est de centrer la fenetre.y
Entier (optionel) - (obligatoire si le paramètre x est utilisé) Le décalage de la partie supérieure de l'écran. Le defaut est de centrer la fenetre.useContentSize
boolean (facultatif) - La largeur (width
) et la hauteur (height
) seront utilisées pour définir la taille de la page Web, ce qui signifie que la taille de la fenêtre réelle inclura la taille du cadre de celle-ci et sera légèrement plus grande. Par défaut la valeur estfalse
.center
boolean (facultatif) - Affiche la fenêtre au centre de l’écran. Par défaut la valeur estfalse
.minWidth
Integer (facultatif) - Largeur minimum de la fenêtre. La valeur par défaut est0
.minHeight
Integer (facultatif) - Hauteur minimale de la fenêtre. La valeur par défaut est0
.maxWidth
Integer (facultatif) - Hauteur maximale de la fenêtre. Il n'y a pas de limite par défaut.maxHeight
Integer (facultatif) - Hauteur maximale de la fenêtre. Il n'y a pas de limite par défaut.resizable
boolean (facultatif) - Si la fenêtre est redimensionnable. La valeur par défaut esttrue
.movable
boolean (facultatif) macOS Windows - Indique si la fenêtre est déplaçable ou non. Ceci n'est pas implémenté sous Linux. La valeur par défaut esttrue
.minimizable
boolean (facultatif) macOS Windows - Indique si la fenêtre est minimisable ou non. Ceci n'est pas implémenté sous Linux. La valeur par défaut esttrue
.maximizable
boolean (facultatif) macOS Windows - Indique si la fenêtre est maximisable ou non. Ceci n'est pas implémenté sous Linux. La valeur par défaut esttrue
.closable
boolean (facultatif) macOS Windows - Indique si la fenêtre peut être fermée. Ceci n'est pas implémenté sous Linux. La valeur par défaut esttrue
.focusable
boolean (facultatif) - Indique que la fenêtre pourra ou non prendre le focus. La valeur par défaut esttrue
. Sur Windows, mettrefocusable: false
implique égalementskipTaskbar: true
. Sur Linux, mettrefocusable: false
fait que la fenêtre arrête d'interragir avec wm, par conséquent la fenêtre restera toujours au dessus dans tous les espaces de travail.alwaysOnTop
boolean (facultatif) - Indique si la fenêtre doit toujours rester au-dessus d'autres fenêtres. Par défaut la valeur estfalse
.fullscreen
boolean (facultatif) - Indique si la fenêtre doit s'afficher en plein écran. Quand explicitement mit afalse
, le bouton plein écran sera caché ou désactivé sur macOS. Par défaut la valeur estfalse
.fullscreenable
boolean (facultatif) - Indique si la fenêtre peut s'afficher en plein écran. Sur macOS, indique également si le bouton de maximizer/zoom doit faire basculer en mode plein écran ou agrandir la fenêtre. La valeur par défaut esttrue
.simpleFullscreen
boolean (facultatif) <1">macOS</em> - Utilisation du plein écran pré-Lion sur macOS. Par défaut la valeur estfalse
.skipTaskbar
boolean (facultatif) macOS Windows - Affiche la fenêtre dans la barre des tâches. Par défaut la valeur estfalse
.hiddenInMissionControl
boolean (facultatif) macOS - Indique si la fenêtre doit être masquée lorsque l'utilisateur utilise Mission Control.kiosk
boolean (facultatif) - Indique si la fenêtre est en mode kiosque. Par défaut la valeur estfalse
.title
string (facultatif) - Titre par défaut de la fenêtre. La valeur par défaut est"Electron"
. Si la balise HTML<title>
est définie dans le fichier HTML chargé parloadURL()
, cette propriété sera ignorée.icon
(NativeImage | string) (facultatif) - L'icône de la fenêtre. Sur Windows, il est recommandé d'utiliser le formatICO
pour un rendu optimal. Si non défini, l'icone de l’exécutable sera utilisée.show
boolean (facultatif) -Détermine si la fenêtre doit s'afficher ou non à la création. La valeur par défaut est
true`.paintWhenInitiallyHidden
boolean (facultatif) - Indique si le moteur de rendu doit être actif lorsqueshow
estfalse
et qu'il vient d'être créé. Afin quedocument.visibilityState
fonctionne correctement lors du premier chargement avecshow: false
vous devez définir ceci àfalse
. Mettre ceci àfalse
fera que l'événementready-to-show
ne sera pas déclenché. La valeur par défaut esttrue
.frame
boolean (facultatif) - Spécifierfalse
pour créer une Fenêtre sans bordure. La valeur par défaut esttrue
.parent
BrowserWindow (facultatif) - Indique la fenêtre parent. Par défaut la valeur estnull
.modal
boolean (facultatif) - Indique si il s'agit d'une fenêtre modale. Cela ne fonctionne que lorsque la fenêtre est une fenêtre enfant. Par défaut la valeur estfalse
.acceptFirstMouse
boolean (facultatif) macOS - Indique si un click sur une fenêtre inactive passera à travers pour être transmis au contenu Web. La valeur par défaut estfalse
sur macOS. Et cette option n'est pas configurable sur les autres plateformes.disableAutoHideCursor
boolean (facultatif) - Indique si le curseur est caché ou non lors de la saisie. Par défaut la valeur estfalse
.autoHideMenuBar
boolean (facultatif) - Masque la barre de menu sauf si la toucheAlt
est enfoncée. Par défaut la valeur estfalse
.enableLargerThanScreen
booléen (facultatif) macOS - Permet à la fenêtre d'être redimensionnée et d'être plus grande que l'écran. Seulement pertinent pour macOS, les autres systèmes d'exploitation autorisant par défaut des fenêtres plus grandes que l'écran par défaut. Par défaut la valeur estfalse
.backgroundColor
string (facultatif) - Couleur de l'arrière-plan de la fenêtre en Hex, RGB, RGBA, HSL, HSLA avec un format CSS nommé. Alpha au format #AARRGGBB est pris en charge sitransparent
est défini àtrue
. La valeur par défaut est#FFF
(white). Voir win.setBackgroundColor pour plus d'informations.hasShadow
boolean (facultatif) - Indique si la fenêtre doit être ombrée. La valeur par défaut esttrue
.opacity
number(facultatif) macOS Windows - Définit l'opacité initiale de la fenêtre, entre 0. (entièrement transparente) et 1.0 (totalement opaque). Uniquement implémenté sur Windows et macOS.darkTheme
boolean (optionnel) - Force l'utilisation du thème sombre pour la fenêtre, fonctionne uniquement sur certains environnements de bureau GTK+3. Par défaut la valeur estfalse
.transparent
boolean (facultatif) - Rend la fenêtre transparente. Par défaut la valeur estfalse
. Sous Windows, ne fonctionne pas à moins que la fenêtre soit sans bordure.type
string (facultatif) - Type de fenêtre, par défaut normal. Voir ci-dessous pour en savoir plus.visualEffectState
string (facultatif) macOS - Spécifie comment sur macOS l'apparence de la fenêtre doit refléter son état d'activité. Doit être utilisé avec la propriétévibrancy
. Les valeurs possibles étant:followWindow
- L'arrière-plan doit automatiquement apparaître comme actif lorsque la fenêtre est active et inactif quand elle ne l'est pas. C'est le comportement par défaut.active
- L'arrière-plan devrait toujours apparaître comme actif.inactive
- L'arrière-plan devrait toujours apparaître comme inactif.
titleBarStyle
string (facultatif) macOS Windows - Le style de la barre de titre de la fenêtre. La valeur par défaut estdefault
. Les valeurs possibles étant:default
- Produit la barre de titre standard pour macOS ou Windows.hidden
- Produit une barre de titre cachée et une fenêtre de contenu en pleine taille. Sur macOS, la fenêtre aura toujours les commandes standard des fenêtres (« feux de circulation ») en haut à gauche. Sous Windows, combiné avectitleBarOverlay: true
, il activera la superposition des commandes de fenêtres (voirtitleBarOverlay
pour plus d'informations), sinon aucun contrôle de fenêtre ne sera affiché.hiddenInset
macOS - Seulement sur macOS, produit une barre de titre masquée mais avec une apparence différente quant aux boutons des feux de circulation qui sont légèrement plus incrustés dans le bord de la fenêtre.customButtonsOnHover
macOS - Seulement sur macOS, se traduit par une barre de titre cachée et une fenêtre de contenu en pleine taille, les boutons du feu de signalisation s'afficheront lors de leur survol en haut à gauche de la fenêtre. Note: Cette option est actuellement expérimentale.
trafficLightPosition
Point (facultatif) macOS - Définit une position personnalisée pour les boutons de feux de circulation dans les fenêtres sans bordure.roundedCorners
boolean (facultatif) macOS - Indique si la fenêtre sans bordure doit avoir des coins arrondis sur macOS. La valeur par défaut esttrue
. L'assignation defalse
à cette propriété empêchera la fenêtre d'être plein écran.thickFrame
boolean (facultatif) - Utilisez le styleWS_THICKFRAME
pour les fenêtres sans cadre sur Windows, qui ajoute une image standard de fenêtre. Le définir àfalse
supprimera les animations de fenêtre et de fenêtre. La valeur par défaut esttrue
.vibrancy
string (facultatif) macOS - Ajoute un type d'effet de vibrance à la fenêtre, uniquement sur macOS. Peut prendre une des valeurs suivantes:appearance-based
,titlebar
,selection
,menu
,popover
,sidebar
,header
,sheet
,window
,hud
,fullscreen-ui
,tooltip
,content
,under-window
ouunder-page
.backgroundMaterial
string (facultatif) Windows - Définit le contenu d'arrière-plan du système de la fenêtre, y compris derrière la zone non-client. Peut prendre une des valeurs suivantes:auto
,none
,mica
,acrylic
outabbed
. Voir win.setBackgroundMaterial pour plus d'informations.zoomToPageWidth
boolean (facultatif) macOS - Contrôle le comportement sur macOS lorsque vous cliquez sur le bouton vert d'arrêt de la barre d'outils ou en cliquant sur le lien de menu Window> Zoom. Sitrue
, la fenêtre grandira à la largeur préférée de la page web lors du zoom etfalse
va le faire zoomer à la largeur de l'écran. Cela affectera également le comportement lors de l'appel direct àmaximize()
. Par défaut la valeur estfalse
.tabbingIdentifier
chaîne (facultatif) macOS - Nom du groupe d’onglets, ce qui permet d'ouvrir la fenêtre en tant qu’onglet natif. Les fenêtres avec le même identifiant de tabulation seront regroupées. Cela ajoute également un nouveau bouton d'onglet natif à la barre d'onglets de votre fenêtre et permet à votreapp
et votre fenêtre de recevoir l'événementnew-window-for-tab
.webPreferences
WebPreferences (facultatif) - Paramètres des fonctionnalités de la page Web.devTools
boolean (facultatif) - Active ou non les DevTools. Si défini comme àfalse
on ne pourra pas utiliserBrowserWindow.webContents.openDevTools()
pour ouvrir les DevTools. La valeur par défaut esttrue
.nodeIntegration
boolean (facultatif) - Indique si l'intégration de node est activée. Par défaut la valeur estfalse
.nodeIntegrationInWorker
boolean (facultatif) - Indique si l'intégration de node est activée dans les workflows web. Par défaut la valeur estfalse
. Plus d'informations peuvent être trouvée dans Multithreading.nodeIntegrationInSubFrames
boolean (facultatif) - Option expérimentale pour activer le support de Node.js dans les sous-cadres tels que les iframes et les fenêtres enfants. Tous vos préchargements seront chargés pour chaque iframe, vous pouvez utiliserprocess.isMainFrame
pour déterminer si vous êtes dans le cadre principal ou non.preload
string (facultatif) - Spécifie un script qui sera chargé avant les autres scripts exécutés dans la page. Ce script aura toujours accès aux API de node peu importe si l'intégration de node est activée ou désactivée. La valeur doit être le chemin absolu vers le script. Lorsque l'intégration des nœuds est désactivée, le script de préchargement peut réintroduire les symboles globaux de nœud dans la portée globale. Voir l'exemple ici.sandbox
booléen (facultatif) - Si défini, le moteur de rendu associé à la fenêtre, la rendre compatible avec le bac à sable Chromium au niveau du système d'exploitation et la désactivation du nœud. s moteur. Ce n'est pas la même chose que l'optionnodeIntegration
et les API disponibles pour le script de préchargement sont plus limitées. En savoir plus sur l'option ici.session
Session (facultatif) - Définit la session utilisée par la page . Au lieu de passer l'objet Session directement, vous pouvez également choisir d'utiliser l'optionpartition
à la place, qui accepte une chaîne de partition. Lorsquesession
etpartition
sont fournies,session
sera préférée. La session par défaut est celle par défaut.partition
string (facultatif) - Définit la session utilisée par la page en fonction de la chaîne de partition de la session . Sipartition
commence parpersist:
, la page utilisera une session persistante disponible pour toutes les pages de l'application avec le mêmepartition
. S'il n'y a pas de préfixepersistant:
, la page utilisera une session en mémoire . En assignant la mêmepartition
, plusieurs pages peuvent partager la même session. La session par défaut est celle par défaut.zoomFactor
number (facultatif) - Facteur de zoom par défaut de la page,3.0
signifie300%
. La valeur par défaut est1.0
.javascript
boolean (facultatif) - Active la prise en charge de JavaScript. La valeur par défaut esttrue
.webSecurity
boolean (facultatif) - Lorsquefalse
, il désactivera la politique de même origine (généralement en utilisant des sites de test par des personnes), et définissezallowRunningInsecureContent
àtrue
si cette option n'a pas été définie par l'utilisateur. La valeur par défaut esttrue
.allowRunningInsecureContent
boolean (facultatif) - Permet à une page https d'exécuter du JavaScript, CSS ou des plugins à partir d'URL http. Par défaut la valeur estfalse
.images
boolean (facultatif) - Active le support des images. La valeur par défaut esttrue
.imageAnimationPolicy
string (facultatif) - Spécifie comment exécuter les animations d’image (par exemple,. GIFs). Les valeurs possibles sontanimate
,animateOnce
, ounoAnimation
. La valeur par défaut estanimate
.textAreasAreResizable
boolean (facultatif) - Rend les éléments TextArea redimensionnables. La valeur par défaut esttrue
.webgl
boolean (facultatif) - Active le support WebGL. La valeur par défaut esttrue
.plugins
boolean (facultatif) - Indique si les plugins doivent être activés. Par défaut la valeur estfalse
.experimentalFeatures
boolean (facultatif) - Active les fonctionnalités expérimentales de Chromium. Par défaut la valeur estfalse
.scrollBounce
boolean (facultatif) macOS - Active l'effet scroll bounce(effet élastique) sur macOS. Par défaut la valeur estfalse
.enableBlinkFeatures
string (facultatif) - Liste de chaînes de caractères séparées par des,
, commeCSSVariables,KeyEventKey
représentant les fonctionnalités à activer. La liste complète des chaînes de caractères supportées peut être trouvée dans le fichier RuntimeEnabledFeatures.json5 .disableBlinkFeatures
string (facultatif) - Liste de chaînes de caractères séparées par des,
comme par exempleCSSVariables,KeyboardEventKey
représentant les fonctionnalités à désactiver. La liste complète des chaînes des fonctionnalités supportées peut être trouvée dans le fichier RuntimeEnabledFeatures.json5 .defaultFontFamily
Object (facultatif) - Définit la police par défaut pour la famille de polices.standard
string (facultatif) - Par défautTimes New Roman
.serif
string (facultatif) - Par défautTimes New Roman
.sansSerif
string (facultatif) -Arial
.monospace
string (facultatif) -Courrier New
.cursive
string (facultatif) - Par défautScript
.fantasy
string (facultatif) - Par défautImpact
.math
string (facultatif) - Valeur par défautLatin Modern Math
.
defaultFontSize
Integer (facultatif) -16
.defaultMonospaceFontSize
Integer (facultatif) -13
.minimumFontSize
Integer (facultatif) -0
.defaultEncoding
string (facultatif) - Par défautISO-8859-1
.backgroundThrottling
boolean (facultatif) - Indique si on désire controler les animations et les timers lorsque la page passe en arrière-plan. Cela affecte également l'API Page Visibility. When at least one webContents displayed in a single browserWindow has disabledbackgroundThrottling
then frames will be drawn and swapped for the whole window and other webContents displayed by it.true
par défaut.offscreen
boolean (facultatif) - Active le rendu hors écran pour la fenêtre du navigateur. Par défaut,false
. Voir le tutoriel de rendu hors écran pour plus de détails.contextIsolation
boolean (facultatif) - Indique si les API Electron et le scriptpreload
spécifié s'exécuteront dans un contexte JavaScript séparé. Est àtrue
par défaut. Le contexte dans lequel le scriptpreload
s’exécute n’aura accès qu'à ses propresdocument
, globales dewindow
et ensemble de types JavaScript intégrés (Array
,Object
,JSON
, etc.), ceux-ci seront tous invisibles pour le contenu chargé. L'API Electron ne sera donc disponible que dans le script depreload
et pas dans la page chargée. Cette option doit être utilisée lors du chargement de contenu distant potentiellement non fiable afin de se prémunit de toute utilisation frauduleuse du scriptpreload
ou des APIs Electron. Cette option utilise la même technique que celle utilisée par les Chrome Content Scripts. Vous pouvez accéder à ce contexte dans les outils de développement en sélectionnant l'entrée 'Electron Isolated Context' de la liste déroulante en haut de l'onglet Console.webviewTag
boolean (facultatif) - Active ou non la balise<webview>
. Par défaut,false
. Remarque : Le scriptpreload
configuré pour la<webview>
aura l'intégration de node activée lorsqu'il est exécuté, donc vous devez vous assurer que le contenu distant/non fiable n'est pas en mesure de créer une balise<webview>
avec un script depreload
potentiellement malveillant. Vous pouvez utiliser l'événementwill-attach-webview
sur webContents pour supprimer le scriptpreload
et valider ou modifier les paramètres initiaux de< webview>
.additionalArguments
string[] (facultatif) - Liste de chaînes qui seront ajoutées auprocess.argv
dans le processus de rendu de cette application. Cette option est utile afin de transmettre de petites informations aux scripts de préchargement du processus de rendu.safeDialogs
boolean (facultatif) - Indique s’il faut activer la protection pour les boîtes de dialogue consécutives à la mode "navigateur". Par défaut la valeur estfalse
.safeDialogsMessage
string (facultatif) - Le message à afficher lorsque la protection consécutive des dialogues est déclenchée. Si non défini, le message par défaut serait utilisé, notez que le message par défaut est actuellement en anglais et non localisé.disableDialogs
boolean (facultatif) - Indique si l faut désactiver complètement les dialogues . SurchargesafeDialogs
. Par défaut la valeur estfalse
.navigateOnDragDrop
boolean (facultatif) - Indique si le glisser-déposer d'un fichier ou d'un lien sur la page provoque une navigation. Par défaut la valeur estfalse
.autoplayPolicy
string (facultatif) - La politique de lecture automatique à appliquer au contenu dans la fenêtre, peut êtreno-user-gesture-required
,user-gesture-required
,document-user-activation-required
. Par défaut,no-user-gesture-required
.disableHtmlFullscreenWindowResize
boolean (facultatif) - Indqiue si vous désirez empêcher la fenêtre de se redimensionner lorsque vous passer en plein écran HTML. La valeur par défaut estfalse
.accessibleTitle
string (facultatif) définit un titre alternatif fourni uniquement aux outils d'accessibilité tels que les lecteurs d'écran. Cette chaîne n'est pas directement visible par les utilisateurs.spellcheck
boolean (facultatif) - Indique si il faut activer le vérifiacateur orthographique intégré. La valeur par défaut esttrue
.enableWebSQL
boolean (facultatif) : Inindique s’il faut activer l’api WebSQL . La valeur par défaut esttrue
.v8CacheOptions
string (facultatif) - Applique la stratégie de mise en cache du code v8 utilisée par blink. Les valeurs acceptées sontnone
- Désactive la mise en cache du codecode
- Mise en cache de code heuristiquebypassHeatCheck
- Bypass la mise en cache de code heuristique mais avec compilation paresseusebypassHeatCheckAndEagerCompile
- identique à ce qui précède mais la compilation est immédiate. La statégie par défaut estcode
.
enablePreferredSizeMode
boolean (facultatif) - Active ou non le mode de taille préféré. La taille préférée est la taille minimale requise pour contenir la mise en page du document sans avoir besoin de le faire défiler. Lorqu' activé ceci provoquera l'émission de l'événementpreferred-size-changed
sur leWebContents
lorsque la taille préférée change. Par défaut la valeur estfalse
.
titleBarOverlay
Object | Boolean (facultatif) - Lors de l'utilisation d'une fenêtre sans bordure en conjonction avecwin.setWindowButtonVisibility(true)
sur macOS ou en utilisant untitleBarStyle
afin que les contrôles de la fenêtre standard ("feux de circulation" sur macOS) soient visibles, cette propriété active les API JavaScript de l'overlay des Contrôles des fenêtres et les variables d'environnement CSS. La valeurtrue
entraînera un overlay avec les couleurs par défaut du système. Par défaut la valeur estfalse
.color
String (facultatif) Windows - Couleur CSS de l'overlay des contrôles de fenêtres lorsqu'il est activé. La couleur par défaut est la couleur du système.symbolColor
String (facultatif) Windows - Couleur CSS des symboles de l'overlay des contrôles de fenêtres lorsqu'il est activé. La couleur par défaut est la couleur du système.height
Integer (facultatif) macOS Windows - Hauteur exprimée en pixels de la barre de titre et de l'overlay des contrôle de la fenêtre . La valeur par défaut est la hauteur du système.
Lorsque l'on définie une taille minimum ou maximum pour la fenêtre avec minWidth
/maxWidth
/ minHeight
/maxHeight
, cela contraint les utilisateurs uniquement. Cela ne vous empêche pas de passer une taille qui ne suit pas les contraintes de tailles à setBounds
/setSize
ou au constructeur de BrowserWindow
.
Les valeurs et comportements possibles de l'option type
dépendent de la plateforme. Les valeurs possibles étant:
- Sur Linux, les types possible sont
desktop
,dock
,toolbar
,splash
,notification
.- Le type
desktop
place la fenêtre au niveau de la fenêtre d'arrière-plan du bureau (kCGDesktopWindowLevel - 1). Cependant, notez qu’une fenêtre de bureau ne recevra pas les événements de focus, de clavier ou de souris. Vous pouvez toujours utiliser globalRaccourci vers recevoir des entrées avec modération. - Le type
dock
crée comportement de fenêtre semblable à celui d'un dock. - Le type
toolbar
crée une fenêtre avec une apparence de barre d'outils. - Le type
splash
provoque un comporterment spécifique. Il n'est pas déplaçacle, même si le style CSS du corps de la fenêtre contient -webkit-app-region : drag. Ce type est couramment utilisé pour les écrans de démarrage. - Le type
notification
crée une fenêtre qui se comporte comme une notification système.
- Le type
- Sur macOS, les types possibles sont
desktop
,textured
,panel
.- Le type
textured
ajoute un aspect métal dégradé (NSWindowStyleMaskTexturedBackground
). - Le type
desktop
place les fenêtre au niveau de l'arière plan. (kCGDesktopWindowLevel - 1
). Remarque, la fenêtre du Bureau ne recevra pas le focus ni les évennements souris ou clavier, mais il est possible d'utiliserglobalShortcut
pour recevoir des entrées avec modération. - Le type
panel
permet à la fenêtre de flotter au-dessus des applications plein écran en ajoutant à l'exécution le masque de styleNSWindowStyleMaskNonactivatingPanel
, normalement réservé à NSPanel, . De plus, la fenêtre apparaîtra sur tous les espaces (bureaux).
- Le type
- Sur Windows, le seul type possible est
toolbar
.