mirror of
https://github.com/WowUp/WowUp.git
synced 2026-04-23 15:27:03 -04:00
Manually store the zoom factor
This commit is contained in:
@@ -14,6 +14,7 @@ import {
|
||||
DEFAULT_THEME,
|
||||
HORDE_LIGHT_THEME,
|
||||
HORDE_THEME,
|
||||
ZOOM_FACTOR_KEY,
|
||||
} from "../common/constants";
|
||||
import { SystemTrayConfig } from "../common/wowup/system-tray-config";
|
||||
import { TelemetryDialogComponent } from "./components/telemetry-dialog/telemetry-dialog.component";
|
||||
@@ -27,6 +28,7 @@ import { SessionService } from "./services/session/session.service";
|
||||
import { getZoomDirection } from "./utils/zoom.utils";
|
||||
import { Addon } from "./entities/addon";
|
||||
import { AppConfig } from "../environments/environment";
|
||||
import { PreferenceStorageService } from "./services/storage/preference-storage.service";
|
||||
|
||||
@Component({
|
||||
selector: "app-root",
|
||||
@@ -56,11 +58,17 @@ export class AppComponent implements OnInit, AfterViewInit {
|
||||
private _addonService: AddonService,
|
||||
private _iconService: IconService,
|
||||
private _sessionService: SessionService,
|
||||
private _preferenceStore: PreferenceStorageService,
|
||||
public overlayContainer: OverlayContainer,
|
||||
public wowUpService: WowUpService
|
||||
) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
const zoomFactor = parseFloat(this._preferenceStore.get(ZOOM_FACTOR_KEY) as string);
|
||||
if (!isNaN(zoomFactor) && isFinite(zoomFactor)) {
|
||||
this._electronService.setZoomFactor(zoomFactor);
|
||||
}
|
||||
|
||||
this.overlayContainer.getContainerElement().classList.add(this.wowUpService.currentTheme);
|
||||
|
||||
this.wowUpService.preferenceChange$.pipe(filter((pref) => pref.key === CURRENT_THEME_KEY)).subscribe((pref) => {
|
||||
|
||||
@@ -5,6 +5,7 @@ import {
|
||||
APP_UPDATE_CHECK_START,
|
||||
APP_UPDATE_DOWNLOADED,
|
||||
APP_UPDATE_START_DOWNLOAD,
|
||||
ZOOM_FACTOR_KEY,
|
||||
} from "../../../common/constants";
|
||||
import * as minimist from "minimist";
|
||||
// If you import a module but never use any of the imported values other than as TypeScript types,
|
||||
@@ -19,6 +20,7 @@ import { ValueRequest } from "../../../common/models/value-request";
|
||||
import { ValueResponse } from "../../../common/models/value-response";
|
||||
import { AppOptions } from "../../../common/wowup/app-options";
|
||||
import { ZoomDirection, ZOOM_SCALE } from "../../utils/zoom.utils";
|
||||
import { PreferenceStorageService } from "../storage/preference-storage.service";
|
||||
|
||||
@Injectable({
|
||||
providedIn: "root",
|
||||
@@ -62,7 +64,7 @@ export class ElectronService {
|
||||
this.remote.app.setLoginItemSettings(settings);
|
||||
}
|
||||
|
||||
constructor() {
|
||||
constructor(private _preferenceStorageService: PreferenceStorageService) {
|
||||
// Conditional imports
|
||||
if (!this.isElectron) {
|
||||
return;
|
||||
@@ -241,6 +243,7 @@ export class ElectronService {
|
||||
const currentWindow = this.remote.getCurrentWindow();
|
||||
currentWindow.webContents.zoomFactor = zoomFactor;
|
||||
this._zoomFactorChangeSrc.next(zoomFactor);
|
||||
this._preferenceStorageService.set(ZOOM_FACTOR_KEY, zoomFactor);
|
||||
};
|
||||
|
||||
public getZoomFactor(): number {
|
||||
|
||||
@@ -47,6 +47,7 @@ export const ADDON_PROVIDERS_KEY = "addon_providers";
|
||||
export const CURRENT_THEME_KEY = "current_theme";
|
||||
export const TELEMETRY_ENABLED_KEY = "telemetry_enabled";
|
||||
export const BLIZZARD_AGENT_PATH_KEY = "blizzard_agent_path";
|
||||
export const ZOOM_FACTOR_KEY = "zoom_factor";
|
||||
|
||||
// APP UPDATER
|
||||
export const APP_UPDATE_ERROR = "app-update-error";
|
||||
|
||||
Reference in New Issue
Block a user