From 10943408e950180a90b48aef4bb912343faa0b8d Mon Sep 17 00:00:00 2001
From: Zamitto <167933696+zamitto@users.noreply.github.com>
Date: Sat, 18 May 2024 00:13:43 -0300
Subject: [PATCH 01/25] messing around and testing
---
src/main/index.ts | 13 +++++++--
src/main/services/window-manager.ts | 44 +++++++++++++++++++++++++++++
src/renderer/src/main.tsx | 1 +
3 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/src/main/index.ts b/src/main/index.ts
index 0d04a355..d8f51546 100644
--- a/src/main/index.ts
+++ b/src/main/index.ts
@@ -63,11 +63,18 @@ app.whenReady().then(() => {
where: { id: 1 },
});
- WindowManager.createMainWindow();
+ WindowManager.createSplashScreen();
+
WindowManager.createSystemTray(userPreferences?.language || "en");
- WindowManager.mainWindow?.on("ready-to-show", () => {
- autoUpdater.checkForUpdatesAndNotify();
+ WindowManager.splashWindow?.on("ready-to-show", () => {
+ console.log("ready to show");
+ autoUpdater.checkForUpdates().then((r) => {
+ console.log(r);
+
+ WindowManager.splashWindow?.close();
+ WindowManager.createMainWindow();
+ });
});
});
});
diff --git a/src/main/services/window-manager.ts b/src/main/services/window-manager.ts
index 973a0c64..6d808e46 100644
--- a/src/main/services/window-manager.ts
+++ b/src/main/services/window-manager.ts
@@ -17,6 +17,7 @@ import { IsNull, Not } from "typeorm";
export class WindowManager {
public static mainWindow: Electron.BrowserWindow | null = null;
+ public static splashWindow: Electron.BrowserWindow | null = null;
private static loadURL(hash = "") {
// HMR for renderer base on electron-vite cli.
@@ -35,6 +36,49 @@ export class WindowManager {
}
}
+ private static loadSplashURL() {
+ // HMR for renderer base on electron-vite cli.
+ // Load the remote URL for development or the local html file for production.
+ if (is.dev && process.env["ELECTRON_RENDERER_URL"]) {
+ this.splashWindow?.loadURL(
+ `${process.env["ELECTRON_RENDERER_URL"]}#/splash`
+ );
+ } else {
+ this.splashWindow?.loadFile(
+ path.join(__dirname, "../renderer/index.html"),
+ {
+ hash: "splash",
+ }
+ );
+ }
+ }
+
+ public static createSplashScreen() {
+ this.splashWindow = new BrowserWindow({
+ width: 810,
+ height: 610,
+ minWidth: 810,
+ minHeight: 610,
+ titleBarStyle: "hidden",
+ ...(process.platform === "linux" ? { icon } : {}),
+ transparent: true,
+ frame: false,
+ alwaysOnTop: true,
+ trafficLightPosition: { x: 16, y: 16 },
+ titleBarOverlay: {
+ symbolColor: "#DADBE1",
+ color: "#151515",
+ height: 34,
+ },
+ webPreferences: {
+ preload: path.join(__dirname, "../preload/index.mjs"),
+ sandbox: false,
+ },
+ });
+
+ this.loadSplashURL();
+ }
+
public static createMainWindow() {
// Create the browser window.
this.mainWindow = new BrowserWindow({
diff --git a/src/renderer/src/main.tsx b/src/renderer/src/main.tsx
index f44653cb..2098feb3 100644
--- a/src/renderer/src/main.tsx
+++ b/src/renderer/src/main.tsx
@@ -54,6 +54,7 @@ ReactDOM.createRoot(document.getElementById("root")!).render(
+
From 484e79dba3a1458894389797f28f5bdf5e7e51d0 Mon Sep 17 00:00:00 2001
From: Zamitto <167933696+zamitto@users.noreply.github.com>
Date: Sat, 18 May 2024 22:29:11 -0300
Subject: [PATCH 02/25] WIP: showing splash screen
---
package.json | 3 +-
src/main/index.ts | 9 ++++--
src/main/services/window-manager.ts | 31 +++++---------------
src/renderer/splash.html | 16 ++++++++++
src/renderer/src/assets/icon.png | Bin 0 -> 192927 bytes
src/renderer/src/main.tsx | 1 -
src/renderer/src/pages/splash/splash.css.ts | 18 ++++++++++++
src/renderer/src/pages/splash/splash.tsx | 16 ++++++++++
src/renderer/src/splash.tsx | 9 ++++++
yarn.lock | 5 ++++
10 files changed, 79 insertions(+), 29 deletions(-)
create mode 100644 src/renderer/splash.html
create mode 100644 src/renderer/src/assets/icon.png
create mode 100644 src/renderer/src/pages/splash/splash.css.ts
create mode 100644 src/renderer/src/pages/splash/splash.tsx
create mode 100644 src/renderer/src/splash.tsx
diff --git a/package.json b/package.json
index 6cb748ac..b82ae700 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "hydra",
- "version": "1.2.2",
+ "version": "1.2.1",
"description": "Hydra",
"main": "./out/main/index.js",
"author": "Los Broxas",
@@ -50,6 +50,7 @@
"color.js": "^1.2.0",
"date-fns": "^3.6.0",
"easydl": "^1.1.1",
+ "electron-log": "^5.1.4",
"electron-updater": "^6.1.8",
"fetch-cookie": "^3.0.1",
"flexsearch": "^0.7.43",
diff --git a/src/main/index.ts b/src/main/index.ts
index 445164b5..7b6af0df 100644
--- a/src/main/index.ts
+++ b/src/main/index.ts
@@ -7,7 +7,7 @@ import { resolveDatabaseUpdates, WindowManager } from "@main/services";
import { dataSource } from "@main/data-source";
import * as resources from "@locales";
import { userPreferencesRepository } from "@main/repository";
-
+import electronLog from "electron-log";
const { autoUpdater } = updater;
autoUpdater.setFeedURL({
@@ -16,6 +16,9 @@ autoUpdater.setFeedURL({
repo: "hydra",
});
+autoUpdater.logger = electronLog;
+autoUpdater.logger.transports.file.level = "info";
+
const gotTheLock = app.requestSingleInstanceLock();
if (!gotTheLock) app.quit();
@@ -72,8 +75,8 @@ app.whenReady().then(() => {
autoUpdater.checkForUpdates().then((r) => {
console.log(r);
- WindowManager.splashWindow?.close();
- WindowManager.createMainWindow();
+ //WindowManager.splashWindow?.close();
+ //WindowManager.createMainWindow();
});
});
});
diff --git a/src/main/services/window-manager.ts b/src/main/services/window-manager.ts
index 6d808e46..f1e56256 100644
--- a/src/main/services/window-manager.ts
+++ b/src/main/services/window-manager.ts
@@ -41,42 +41,25 @@ export class WindowManager {
// Load the remote URL for development or the local html file for production.
if (is.dev && process.env["ELECTRON_RENDERER_URL"]) {
this.splashWindow?.loadURL(
- `${process.env["ELECTRON_RENDERER_URL"]}#/splash`
+ `${process.env["ELECTRON_RENDERER_URL"]}/splash.html`
);
} else {
this.splashWindow?.loadFile(
- path.join(__dirname, "../renderer/index.html"),
- {
- hash: "splash",
- }
+ path.join(__dirname, "../renderer/splash.html")
);
}
}
public static createSplashScreen() {
this.splashWindow = new BrowserWindow({
- width: 810,
- height: 610,
- minWidth: 810,
- minHeight: 610,
- titleBarStyle: "hidden",
- ...(process.platform === "linux" ? { icon } : {}),
- transparent: true,
- frame: false,
- alwaysOnTop: true,
- trafficLightPosition: { x: 16, y: 16 },
- titleBarOverlay: {
- symbolColor: "#DADBE1",
- color: "#151515",
- height: 34,
- },
- webPreferences: {
- preload: path.join(__dirname, "../preload/index.mjs"),
- sandbox: false,
- },
+ width: 400,
+ height: 400,
+ frame: true,
+ alwaysOnTop: false,
});
this.loadSplashURL();
+ this.splashWindow.removeMenu();
}
public static createMainWindow() {
diff --git a/src/renderer/splash.html b/src/renderer/splash.html
new file mode 100644
index 00000000..bb0b5553
--- /dev/null
+++ b/src/renderer/splash.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+ Hydra
+
+
+
+
+
+
+
diff --git a/src/renderer/src/assets/icon.png b/src/renderer/src/assets/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..865a96a2a5e3596cecf181e91b0f0d8474ae2498
GIT binary patch
literal 192927
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
z