diff --git a/ElectronNET.API/Tray.cs b/ElectronNET.API/Tray.cs
index 2781a1f..76705a4 100644
--- a/ElectronNET.API/Tray.cs
+++ b/ElectronNET.API/Tray.cs
@@ -263,6 +263,15 @@ namespace ElectronNET.API
});
}
+ ///
+ /// Shows the Traybar (empty).
+ ///
+ /// The image.
+ public void Show(string image)
+ {
+ BridgeConnector.Socket.Emit("create-tray", image);
+ }
+
///
/// Destroys the tray icon immediately.
///
diff --git a/ElectronNET.Host/api/tray.js b/ElectronNET.Host/api/tray.js
index 6ed7e14..77b3030 100644
--- a/ElectronNET.Host/api/tray.js
+++ b/ElectronNET.Host/api/tray.js
@@ -47,13 +47,17 @@ module.exports = (socket) => {
}
});
socket.on('create-tray', (image, menuItems) => {
- const menu = electron_1.Menu.buildFromTemplate(menuItems);
- addMenuItemClickConnector(menu.items, (id) => {
- electronSocket.emit('trayMenuItemClicked', id);
- });
const trayIcon = electron_1.nativeImage.createFromPath(image);
tray = new electron_1.Tray(trayIcon);
- tray.setContextMenu(menu);
+
+ if (menuItems) {
+ const menu = electron_1.Menu.buildFromTemplate(menuItems);
+ addMenuItemClickConnector(menu.items, (id) => {
+ electronSocket.emit('trayMenuItemClicked', id);
+ });
+
+ tray.setContextMenu(menu);
+ }
});
socket.on('tray-destroy', () => {
if (tray) {
diff --git a/ElectronNET.Host/api/tray.ts b/ElectronNET.Host/api/tray.ts
index e7e8ef5..3fa8d94 100644
--- a/ElectronNET.Host/api/tray.ts
+++ b/ElectronNET.Host/api/tray.ts
@@ -53,16 +53,18 @@ export = (socket: SocketIO.Socket) => {
});
socket.on('create-tray', (image, menuItems) => {
- const menu = Menu.buildFromTemplate(menuItems);
-
- addMenuItemClickConnector(menu.items, (id) => {
- electronSocket.emit('trayMenuItemClicked', id);
- });
-
const trayIcon = nativeImage.createFromPath(image);
tray = new Tray(trayIcon);
- tray.setContextMenu(menu);
+
+ if (menuItems) {
+ const menu = Menu.buildFromTemplate(menuItems);
+
+ addMenuItemClickConnector(menu.items, (id) => {
+ electronSocket.emit('trayMenuItemClicked', id);
+ });
+ tray.setContextMenu(menu);
+ }
});
socket.on('tray-destroy', () => {