mirror of
https://github.com/hydralauncher/hydra.git
synced 2026-01-19 09:13:57 +00:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
01ac5239dc | ||
|
|
1dc2176813 | ||
|
|
a7ec632a21 | ||
|
|
2b6d8eba78 | ||
|
|
6bc6a10d66 |
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "hydralauncher",
|
"name": "hydralauncher",
|
||||||
"version": "3.6.6",
|
"version": "3.6.8",
|
||||||
"description": "Hydra",
|
"description": "Hydra",
|
||||||
"main": "./out/main/index.js",
|
"main": "./out/main/index.js",
|
||||||
"author": "Los Broxas",
|
"author": "Los Broxas",
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import { Downloader } from "@shared";
|
|||||||
import { levelKeys, db } from "./level";
|
import { levelKeys, db } from "./level";
|
||||||
import type { UserPreferences } from "@types";
|
import type { UserPreferences } from "@types";
|
||||||
import {
|
import {
|
||||||
WSClient,
|
|
||||||
SystemPath,
|
SystemPath,
|
||||||
CommonRedistManager,
|
CommonRedistManager,
|
||||||
TorBoxClient,
|
TorBoxClient,
|
||||||
@@ -47,7 +46,7 @@ export const loadState = async () => {
|
|||||||
|
|
||||||
await HydraApi.setupApi().then(() => {
|
await HydraApi.setupApi().then(() => {
|
||||||
uploadGamesBatch();
|
uploadGamesBatch();
|
||||||
WSClient.connect();
|
// WSClient.connect();
|
||||||
});
|
});
|
||||||
|
|
||||||
const downloads = await downloadsSublevel
|
const downloads = await downloadsSublevel
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ import { getUserData } from "./user/get-user-data";
|
|||||||
import { db } from "@main/level";
|
import { db } from "@main/level";
|
||||||
import { levelKeys } from "@main/level/sublevels";
|
import { levelKeys } from "@main/level/sublevels";
|
||||||
import type { Auth, User } from "@types";
|
import type { Auth, User } from "@types";
|
||||||
import { WSClient } from "./ws/ws-client";
|
|
||||||
|
|
||||||
interface HydraApiOptions {
|
interface HydraApiOptions {
|
||||||
needsAuth?: boolean;
|
needsAuth?: boolean;
|
||||||
@@ -103,8 +102,8 @@ export class HydraApi {
|
|||||||
WindowManager.mainWindow.webContents.send("on-signin");
|
WindowManager.mainWindow.webContents.send("on-signin");
|
||||||
await clearGamesRemoteIds();
|
await clearGamesRemoteIds();
|
||||||
uploadGamesBatch();
|
uploadGamesBatch();
|
||||||
WSClient.close();
|
// WSClient.close();
|
||||||
WSClient.connect();
|
// WSClient.connect();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -82,17 +82,19 @@ export const getSteamAppDetails = async (
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const getSteamUsersIds = async () => {
|
export const getSteamUsersIds = async () => {
|
||||||
const userDataPath = await getSteamLocation().catch(() => null);
|
const steamLocation = await getSteamLocation().catch(() => null);
|
||||||
|
|
||||||
if (!userDataPath) {
|
if (!steamLocation) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const userDataPath = path.join(steamLocation, "userdata");
|
||||||
|
|
||||||
if (!fs.existsSync(userDataPath)) {
|
if (!fs.existsSync(userDataPath)) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
const userIds = fs.readdirSync(path.join(userDataPath, "userdata"), {
|
const userIds = fs.readdirSync(userDataPath, {
|
||||||
withFileTypes: true,
|
withFileTypes: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -181,6 +181,9 @@ export class WindowManager {
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.mainWindow.on("close", async () => {
|
this.mainWindow.on("close", async () => {
|
||||||
|
const mainWindow = this.mainWindow;
|
||||||
|
this.mainWindow = null;
|
||||||
|
|
||||||
const userPreferences = await db.get<string, UserPreferences>(
|
const userPreferences = await db.get<string, UserPreferences>(
|
||||||
levelKeys.userPreferences,
|
levelKeys.userPreferences,
|
||||||
{
|
{
|
||||||
@@ -188,9 +191,11 @@ export class WindowManager {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
if (this.mainWindow) {
|
if (mainWindow) {
|
||||||
const lastBounds = this.mainWindow.getBounds();
|
mainWindow.setProgressBar(-1);
|
||||||
const isMaximized = this.mainWindow.isMaximized() ?? false;
|
|
||||||
|
const lastBounds = mainWindow.getBounds();
|
||||||
|
const isMaximized = mainWindow.isMaximized() ?? false;
|
||||||
const screenConfig = isMaximized
|
const screenConfig = isMaximized
|
||||||
? {
|
? {
|
||||||
x: undefined,
|
x: undefined,
|
||||||
@@ -207,9 +212,6 @@ export class WindowManager {
|
|||||||
if (userPreferences?.preferQuitInsteadOfHiding) {
|
if (userPreferences?.preferQuitInsteadOfHiding) {
|
||||||
app.quit();
|
app.quit();
|
||||||
}
|
}
|
||||||
|
|
||||||
WindowManager.mainWindow?.setProgressBar(-1);
|
|
||||||
WindowManager.mainWindow = null;
|
|
||||||
});
|
});
|
||||||
|
|
||||||
this.mainWindow.webContents.setWindowOpenHandler((handler) => {
|
this.mainWindow.webContents.setWindowOpenHandler((handler) => {
|
||||||
@@ -584,7 +586,7 @@ export class WindowManager {
|
|||||||
|
|
||||||
tray.setToolTip("Hydra Launcher");
|
tray.setToolTip("Hydra Launcher");
|
||||||
|
|
||||||
if (process.platform !== "darwin") {
|
if (process.platform === "win32") {
|
||||||
await updateSystemTray();
|
await updateSystemTray();
|
||||||
|
|
||||||
tray.addListener("double-click", () => {
|
tray.addListener("double-click", () => {
|
||||||
@@ -595,6 +597,18 @@ export class WindowManager {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
tray.addListener("right-click", showContextMenu);
|
||||||
|
} else if (process.platform === "linux") {
|
||||||
|
await updateSystemTray();
|
||||||
|
|
||||||
|
tray.addListener("click", () => {
|
||||||
|
if (this.mainWindow) {
|
||||||
|
this.mainWindow.show();
|
||||||
|
} else {
|
||||||
|
this.createMainWindow();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
tray.addListener("right-click", showContextMenu);
|
tray.addListener("right-click", showContextMenu);
|
||||||
} else {
|
} else {
|
||||||
tray.addListener("click", showContextMenu);
|
tray.addListener("click", showContextMenu);
|
||||||
|
|||||||
Reference in New Issue
Block a user