diff --git a/.devops/build-nuget.yaml b/.devops/build-nuget.yaml
index 77e6c0b..ae19794 100644
--- a/.devops/build-nuget.yaml
+++ b/.devops/build-nuget.yaml
@@ -1,5 +1,5 @@
variables:
- PackageVersion: 17.3.0.$(Build.BuildId)
+ PackageVersion: 18.0.0.$(Build.BuildId)
projectAPI: './ElectronNET.API/ElectronNET.API.csproj'
projectCLI: './ElectronNET.CLI/ElectronNET.CLI.csproj'
diff --git a/ElectronNET.API/BrowserWindow.cs b/ElectronNET.API/BrowserWindow.cs
index 986b10e..a39e26b 100644
--- a/ElectronNET.API/BrowserWindow.cs
+++ b/ElectronNET.API/BrowserWindow.cs
@@ -1919,6 +1919,19 @@ namespace ElectronNET.API
BridgeConnector.Emit("browserWindowSetAppDetails", Id, options);
}
+ ///
+ ///On a Window with Window Controls Overlay already enabled, this method updates
+ /// the style of the title bar overlay. It should not be called unless you enabled WCO
+ /// when creating the window.
+ ///
+ ///
+ [SupportedOSPlatform("win")]
+ [SupportedOSPlatform("macos")]
+ public void SetTitleBarOverlay(TitleBarOverlayConfig options)
+ {
+ BridgeConnector.Emit("browserWindowSetTitleBarOverlay", Id, options);
+ }
+
///
/// Same as webContents.showDefinitionForSelection().
///
diff --git a/ElectronNET.CLI/Commands/BuildCommand.cs b/ElectronNET.CLI/Commands/BuildCommand.cs
index 0a4385f..4740a65 100644
--- a/ElectronNET.CLI/Commands/BuildCommand.cs
+++ b/ElectronNET.CLI/Commands/BuildCommand.cs
@@ -35,7 +35,7 @@ Full example for a 32bit debug build with electron prune: build /target custom w
_args = args;
}
- private const string _defaultElectronVersion = "17.3.0";
+ private const string _defaultElectronVersion = "18.0.0";
private const string _paramTarget = "target";
private const string _paramDotNetConfig = "dotnet-configuration";
diff --git a/ElectronNET.Host/api/browserWindows.js b/ElectronNET.Host/api/browserWindows.js
index 2301ea1..4b7f7fc 100644
--- a/ElectronNET.Host/api/browserWindows.js
+++ b/ElectronNET.Host/api/browserWindows.js
@@ -579,6 +579,9 @@ module.exports = (socket, app, firstTime) => {
socket.on('browserWindowSetAppDetails', (id, options) => {
getWindowById(id)?.setAppDetails(options);
});
+ socket.on('browserWindowSetTitleBarOverlay', (id, options) => {
+ getWindowById(id)?.setTitleBarOverlay(options);
+ });
socket.on('browserWindowShowDefinitionForSelection', (id) => {
getWindowById(id)?.showDefinitionForSelection();
});
diff --git a/ElectronNET.Host/api/browserWindows.ts b/ElectronNET.Host/api/browserWindows.ts
index a0d539d..2cb2e2f 100644
--- a/ElectronNET.Host/api/browserWindows.ts
+++ b/ElectronNET.Host/api/browserWindows.ts
@@ -730,6 +730,10 @@ export = (socket: Socket, app: Electron.App, firstTime: boolean) => {
getWindowById(id)?.setAppDetails(options);
});
+ socket.on('browserWindowSetTitleBarOverlay', (id, options) => {
+ getWindowById(id)?.setTitleBarOverlay(options);
+ });
+
socket.on('browserWindowShowDefinitionForSelection', (id) => {
getWindowById(id)?.showDefinitionForSelection();
});
diff --git a/ElectronNET.Host/package-lock.json b/ElectronNET.Host/package-lock.json
index 07622b2..cf47dba 100644
--- a/ElectronNET.Host/package-lock.json
+++ b/ElectronNET.Host/package-lock.json
@@ -395,22 +395,14 @@
"dev": true
},
"electron": {
- "version": "17.3.0",
- "resolved": "https://registry.npmjs.org/electron/-/electron-17.3.0.tgz",
- "integrity": "sha512-KuYHCOw1a+CE9thZlWRqTScf6M81KLd6n5qpdBGb0rl62+50RUuau9CnYpBb3EJxrjsXLaiQCBBSdPsozf/XUg==",
+ "version": "18.0.0",
+ "resolved": "https://registry.npmjs.org/electron/-/electron-18.0.0.tgz",
+ "integrity": "sha512-olAmqc+pNCDM9/nvYnZxhbAwQlMF01lDCesTKJjwItu2DaWZZm959OFTD+1mc/Q/YHDq9eqyD7MjqxjKuoWgWQ==",
"dev": true,
"requires": {
"@electron/get": "^1.13.0",
- "@types/node": "^14.6.2",
+ "@types/node": "^16.11.26",
"extract-zip": "^1.0.3"
- },
- "dependencies": {
- "@types/node": {
- "version": "14.18.12",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.12.tgz",
- "integrity": "sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==",
- "dev": true
- }
}
},
"electron-notarize": {
diff --git a/ElectronNET.Host/package.json b/ElectronNET.Host/package.json
index 490f303..9d8e8fa 100644
--- a/ElectronNET.Host/package.json
+++ b/ElectronNET.Host/package.json
@@ -21,7 +21,7 @@
"devDependencies": {
"@types/node": "^16.11.26",
"dotenv": "^16.0.0",
- "electron": "^17.3.0",
+ "electron": "^18.0.0",
"electron-notarize": "^1.2.1",
"tslint": "^6.1.3",
"typescript": "^4.6.3"