moonlight-chrome/static/js/background.js
Dmitry Mandrichenko 5ebcc58ae3 Window state restored with previous saved window state (fullscreen or normal).
Window startup size changed to 16:9 aspect ratio = 960x540.
After closing the game, window restored in previous state.
2016-12-21 08:32:50 +02:00

45 lines
1.2 KiB
JavaScript

var windowState = 'normal';
chrome.app.runtime.onLaunched.addListener(function() {
if (chrome.storage) {
// load stored window settings
chrome.storage.sync.get('windowState', function(item) {
windowState = (item && item.windowState)
? item.windowState
: windowState;
createWindow(windowState);
});
} else {
createWindow(windowState);
}
});
function createWindow(state) {
chrome.app.window.create('index.html', {
state: state,
bounds: {
width: 960,
height: 540
}
}, function(window) {
window.onFullscreened.addListener(onFullscreened);
window.onBoundsChanged.addListener(onBoundsChanged);
});
}
function onFullscreened() {
// save windowState: 'fullscreen'
windowState != 'fullscreen' && saveItem('windowState', 'fullscreen', null);
}
function onBoundsChanged() {
// save windowState: 'normal'
windowState != 'normal' && saveItem('windowState', 'normal', null);
}
function saveItem(key, value, callback) {
var item = { };
item[key] = value;
chrome.storage && chrome.storage.sync.set(item, callback);
}