client-ts: Port services/app/components/zoom

This commit is contained in:
Elian Doran 2024-07-25 19:27:42 +03:00
parent 6c7a272edc
commit 047c3eea69
No known key found for this signature in database
2 changed files with 11 additions and 9 deletions

View File

@ -11,7 +11,10 @@ class ZoomComponent extends Component {
if (utils.isElectron()) {
options.initializedPromise.then(() => {
this.setZoomFactor(options.getFloat('zoomFactor'));
const zoomFactor = options.getFloat('zoomFactor');
if (zoomFactor) {
this.setZoomFactor(zoomFactor);
}
});
window.addEventListener("wheel", event => {
@ -22,14 +25,13 @@ class ZoomComponent extends Component {
}
}
setZoomFactor(zoomFactor) {
zoomFactor = parseFloat(zoomFactor);
setZoomFactor(zoomFactor: string | number) {
const parsedZoomFactor = (typeof zoomFactor !== "number" ? parseFloat(zoomFactor) : zoomFactor);
const webFrame = utils.dynamicRequire('electron').webFrame;
webFrame.setZoomFactor(zoomFactor);
webFrame.setZoomFactor(parsedZoomFactor);
}
async setZoomFactorAndSave(zoomFactor) {
async setZoomFactorAndSave(zoomFactor: number) {
if (zoomFactor >= MIN_ZOOM && zoomFactor <= MAX_ZOOM) {
zoomFactor = Math.round(zoomFactor * 10) / 10;
@ -57,7 +59,7 @@ class ZoomComponent extends Component {
this.setZoomFactorAndSave(1);
}
setZoomFactorAndSaveEvent({zoomFactor}) {
setZoomFactorAndSaveEvent({ zoomFactor }: { zoomFactor: number }) {
this.setZoomFactorAndSave(zoomFactor);
}
}

View File

@ -1,10 +1,10 @@
import server from "./server.js";
type OptionValue = string;
type OptionValue = string | number;
class Options {
private initializedPromise: Promise<void>;
initializedPromise: Promise<void>;
private arr!: Record<string, OptionValue>;
constructor() {