mirror of
https://github.com/Nystik-gh/ignis.git
synced 2026-06-17 04:35:53 +00:00
28 lines
612 B
JavaScript
28 lines
612 B
JavaScript
// Shim for electron.webFrame
|
|
// Obsidian uses: getZoomLevel(), setZoomLevel()
|
|
|
|
let currentZoom = 0;
|
|
|
|
export const webFrame = {
|
|
getZoomLevel() {
|
|
return currentZoom;
|
|
},
|
|
|
|
setZoomLevel(level) {
|
|
currentZoom = level;
|
|
// Approximate Electron's zoom behavior via CSS zoom
|
|
// Electron zoom level 0 = 100%, each step is ~20%
|
|
const scale = Math.pow(1.2, level);
|
|
document.body.style.zoom = scale;
|
|
},
|
|
|
|
getZoomFactor() {
|
|
return Math.pow(1.2, currentZoom);
|
|
},
|
|
|
|
setZoomFactor(factor) {
|
|
currentZoom = Math.log(factor) / Math.log(1.2);
|
|
document.body.style.zoom = factor;
|
|
},
|
|
};
|