diff --git a/desktop/sources/index.html b/desktop/sources/index.html
index a775c71..62e6443 100644
--- a/desktop/sources/index.html
+++ b/desktop/sources/index.html
@@ -26,7 +26,7 @@
ronin.controller.add("default","*","Fullscreen",() => { app.toggleFullscreen() },"CmdOrCtrl+Enter");
ronin.controller.add("default","*","Hide",() => { app.toggleVisible() },"CmdOrCtrl+H");
ronin.controller.add("default","*","Inspect",() => { app.inspect() },"CmdOrCtrl+.");
- ronin.controller.add("default","*","Reset",() => { dotgrid.reset(); dotgrid.theme.reset() },"CmdOrCtrl+Backspace");
+ ronin.controller.add("default","*","Reset",() => { ronin.reset(); ronin.theme.reset() },"CmdOrCtrl+Backspace");
ronin.controller.add("default","*","Quit",() => { ronin.source.quit() },"CmdOrCtrl+Q");
ronin.controller.add("default","File","New",() => { ronin.source.new() },"CmdOrCtrl+N")
ronin.controller.add("default","File","Save",() => { ronin.source.save() },"CmdOrCtrl+S")
@@ -40,6 +40,9 @@
ronin.controller.addRole('default', 'Edit', 'paste')
ronin.controller.addRole('default', 'Edit', 'delete')
ronin.controller.addRole('default', 'Edit', 'selectall')
+ ronin.controller.add("default","View","Zoom In",() => { ronin.modZoom(0.25) },"CmdOrCtrl+=")
+ ronin.controller.add("default","View","Zoom Out",() => { ronin.modZoom(-0.25) },"CmdOrCtrl+-")
+ ronin.controller.add("default","View","Zoom Reset",() => { ronin.modZoom(1,true) },"CmdOrCtrl+0")
ronin.controller.add("default","Project","Run",() => { ronin.commander.run(); },"CmdOrCtrl+R");
ronin.controller.add("default","Project","Reload Run",() => { ronin.source.revert(); ronin.commander.run(); },"CmdOrCtrl+Shift+R");
ronin.controller.add("default","Commander","Toggle",() => { ronin.commander.toggle(); },"CmdOrCtrl+K");
diff --git a/desktop/sources/scripts/ronin.js b/desktop/sources/scripts/ronin.js
index 7cf3dd4..1ac9076 100644
--- a/desktop/sources/scripts/ronin.js
+++ b/desktop/sources/scripts/ronin.js
@@ -56,6 +56,28 @@ function Ronin () {
this.load = function (content = this.default()) {
}
+
+ // Zoom
+
+ this.modZoom = function (mod = 0, set = false) {
+ try {
+ const { webFrame } = require('electron')
+ const currentZoomFactor = webFrame.getZoomFactor()
+ webFrame.setZoomFactor(set ? mod : currentZoomFactor + mod)
+ console.log(window.devicePixelRatio)
+ } catch (err) {
+ console.log('Cannot zoom')
+ }
+ }
+
+ this.setZoom = function (scale) {
+ try {
+ webFrame.setZoomFactor(scale)
+ } catch (err) {
+ console.log('Cannot zoom')
+ }
+ }
+
// Events
this.drag = (e) => {