Files: 6791a012f6f25d8aeb64cae36c5f8ff3b21e9132 / app / sync / initialise / electron-state.js
1049 bytesRaw
1 | const nest = require('depnest') |
2 | const electron = require('electron') |
3 | |
4 | exports.gives = nest('app.sync.initialise') |
5 | |
6 | exports.needs = nest({ |
7 | 'settings.sync.get': 'first', |
8 | 'settings.sync.set': 'first' |
9 | }) |
10 | |
11 | exports.create = function (api) { |
12 | return nest('app.sync.initialise', errorCatcher) |
13 | |
14 | function errorCatcher () { |
15 | /// /// TODO - extract this to keep patch-lite isolated from electron |
16 | const { getCurrentWebContents, getCurrentWindow } = electron.remote |
17 | window.addEventListener('resize', () => { |
18 | var wc = getCurrentWebContents() |
19 | wc && wc.getZoomFactor((zf) => { |
20 | api.settings.sync.set({ |
21 | electron: { |
22 | zoomFactor: zf, |
23 | windowBounds: getCurrentWindow().getBounds() |
24 | } |
25 | }) |
26 | }) |
27 | }) |
28 | |
29 | var zoomFactor = api.settings.sync.get('electron.zoomFactor') |
30 | if (zoomFactor) { getCurrentWebContents().setZoomFactor(zoomFactor) } |
31 | |
32 | var bounds = api.settings.sync.get('electron.windowBounds') |
33 | if (bounds) { getCurrentWindow().setBounds(bounds) } |
34 | /// /// |
35 | } |
36 | } |
37 |
Built with git-ssb-web