Skip to content

Commit

Permalink
Merge pull request #8294 from ever-co/feat/use-window-manager-add-sub…
Browse files Browse the repository at this point in the history
…menu

[feat] use windows manager and add new submenu to the unauth menu
  • Loading branch information
evereq authored Sep 30, 2024
2 parents 04faa5f + e4ae9e1 commit cb98674
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 20 deletions.
20 changes: 10 additions & 10 deletions packages/desktop-libs/src/lib/desktop-ipc.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { IActivityWatchEventResult } from '@gauzy/contracts';
import { ScreenCaptureNotification, WindowManager, loginPage } from '@gauzy/desktop-window';
import { RegisteredWindow, ScreenCaptureNotification, WindowManager, loginPage } from '@gauzy/desktop-window';
import { BrowserWindow, app, desktopCapturer, ipcMain, screen, systemPreferences } from 'electron';
import log from 'electron-log';
import { resetPermissions } from 'mac-screen-capture-permissions';
Expand Down Expand Up @@ -421,18 +421,18 @@ export function ipcTimer(

offlineMode.on('offline', async () => {
log.info('Offline mode triggered...');
const windows = [alwaysOn.browserWindow, timeTrackerWindow];
const windows = [alwaysOn, timeTrackerWindow];
for (const window of windows) {
window.webContents.send('offline-handler', true);
windowManager.webContents(window).send('offline-handler', true);
}
});

offlineMode.on('connection-restored', async () => {
log.info('Api connected...');
try {
const windows = [alwaysOn.browserWindow, timeTrackerWindow];
const windows = [alwaysOn, timeTrackerWindow];
for (const window of windows) {
window.webContents.send('offline-handler', false);
windowManager.webContents(window).send('offline-handler', false);
}
await sequentialSyncQueue(timeTrackerWindow);
} catch (error) {
Expand Down Expand Up @@ -1086,23 +1086,23 @@ export function ipcTimer(
const setting = LocalStore.getStore('appSetting');
const auth = LocalStore.getStore('auth');
if (setting?.alwaysOn && auth?.employeeId) {
alwaysOn.show();
windowManager.show(RegisteredWindow.WIDGET);
}
});

ipcMain.on('hide_ao', (event, arg) => {
alwaysOn.hide();
windowManager.hide(RegisteredWindow.WIDGET);
});

ipcMain.on('change_state_from_ao', async (event, arg) => {
const windows = [alwaysOn.browserWindow, timeTrackerWindow];
const windows = [alwaysOn, timeTrackerWindow];
for (const window of windows) {
window.webContents.send('change_state_from_ao', arg);
windowManager.webContents(window).send('change_state_from_ao', arg);
}
});

ipcMain.on('ao_time_update', (event, arg) => {
alwaysOn.browserWindow.webContents.send('ao_time_update', arg);
windowManager.webContents(alwaysOn).send('ao_time_update', arg);
});

ipcMain.handle('MARK_AS_STOPPED_OFFLINE', async () => {
Expand Down
30 changes: 20 additions & 10 deletions packages/desktop-libs/src/lib/desktop-tray.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('goto_top_menu');
manager.webContents(settingsWindow).send('refresh_menu');
Expand All @@ -60,7 +60,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('goto_update');
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('refresh_menu');
Expand All @@ -79,6 +79,16 @@ export class TrayIcon {
}
];
const unAuthMenu: MenuItemConstructorOptions[] = [
{
id: '3',
label: TranslateService.instant('TIMER_TRACKER.MENU.OPEN_TIMER'),
enabled: true,
accelerator: 'CmdOrCtrl+O',
visible: appConfig.timeTrackerWindow,
async click(menuItem) {
manager.show(RegisteredWindow.TIMER);
}
},
{
id: '4',
label: TranslateService.instant('TIMER_TRACKER.SETUP.SETTING'),
Expand All @@ -87,7 +97,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('goto_top_menu');
manager.webContents(settingsWindow).send('refresh_menu');
Expand All @@ -101,7 +111,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('goto_update');
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('refresh_menu');
Expand Down Expand Up @@ -143,7 +153,7 @@ export class TrayIcon {
.webContents(timeTrackerWindow)
.send('start_from_tray', LocalStore.beforeRequestParams());
} else {
timeTrackerWindow.show();
manager.show(RegisteredWindow.TIMER);
manager.webContents(timeTrackerWindow).send('auth_success_tray_init');
}
}
Expand All @@ -165,7 +175,7 @@ export class TrayIcon {
accelerator: 'CmdOrCtrl+O',
visible: appConfig.timeTrackerWindow,
async click(menuItem) {
timeTrackerWindow.show();
manager.show(RegisteredWindow.TIMER);
manager.webContents(timeTrackerWindow).send('auth_success_tray_init');
}
},
Expand All @@ -181,7 +191,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('goto_update');
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('refresh_menu');
Expand All @@ -195,7 +205,7 @@ export class TrayIcon {
if (!settingsWindow) {
settingsWindow = await createSettingsWindow(settingsWindow, windowPath.timeTrackerUi);
}
settingsWindow.show();
manager.show(RegisteredWindow.SETTINGS);
manager.webContents(settingsWindow).send('app_setting', LocalStore.getApplicationConfig());
manager.webContents(settingsWindow).send('goto_top_menu');
manager.webContents(settingsWindow).send('refresh_menu');
Expand Down Expand Up @@ -252,7 +262,7 @@ export class TrayIcon {

const openWindow = async () => {
if (process.env.IS_DESKTOP_TIMER) {
timeTrackerWindow.show();
manager.show(RegisteredWindow.TIMER);
manager.webContents(timeTrackerWindow).send('auth_success_tray_init');
}
};
Expand Down Expand Up @@ -364,7 +374,7 @@ export class TrayIcon {
manager.webContents(timeTrackerWindow).send('auth_success_tray_init', arg);

if (!isGauzyWindow) {
timeTrackerWindow.show();
manager.show(RegisteredWindow.TIMER);
}
}
event.sender.send('refresh_menu');
Expand Down

0 comments on commit cb98674

Please sign in to comment.