Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(487)

Unified Diff: remoting/webapp/crd/js/desktop_remoting.js

Issue 875583002: Allow full-screen mode when not connected, and remember the previous setting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « remoting/webapp/crd/js/client_session.js ('k') | remoting/webapp/crd/js/event_handlers.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/webapp/crd/js/desktop_remoting.js
diff --git a/remoting/webapp/crd/js/desktop_remoting.js b/remoting/webapp/crd/js/desktop_remoting.js
index ad9f0b652680ffc44988614ca2432176e5569e2c..cdf4607ee95c3c80dbd788b70c042234e1c625a7 100644
--- a/remoting/webapp/crd/js/desktop_remoting.js
+++ b/remoting/webapp/crd/js/desktop_remoting.js
@@ -66,20 +66,48 @@ remoting.DesktopRemoting.prototype.init = function() {
remoting.initIdentity(remoting.onUserInfoAvailable);
remoting.initElementEventHandlers();
- remoting.initGlobalEventHandlers();
if (base.isAppsV2()) {
- remoting.fullscreen = new remoting.FullscreenAppsV2();
remoting.windowFrame = new remoting.WindowFrame(
document.getElementById('title-bar'));
remoting.optionsMenu = remoting.windowFrame.createOptionsMenu();
+
+ var START_FULLSCREEN = 'start-fullscreen';
+ remoting.fullscreen = new remoting.FullscreenAppsV2();
+ remoting.fullscreen.addListener(function(isFullscreen) {
+ chrome.storage.local.set({START_FULLSCREEN: isFullscreen});
+ });
+ // TODO(jamiewalch): This should be handled by the background page when the
+ // window is created, but due to crbug.com/51587 it needs to be done here.
+ // Remove this hack once that bug is fixed.
+ chrome.storage.local.get(
+ START_FULLSCREEN,
+ /** @param {Object} values */
+ function(values) {
+ if (values[START_FULLSCREEN]) {
+ remoting.fullscreen.activate(true);
+ }
+ }
+ );
+
} else {
remoting.fullscreen = new remoting.FullscreenAppsV1();
remoting.toolbar = new remoting.Toolbar(
document.getElementById('session-toolbar'));
remoting.optionsMenu = remoting.toolbar.createOptionsMenu();
+
+ window.addEventListener('beforeunload', remoting.promptClose, false);
+ window.addEventListener('unload', remoting.disconnect, false);
}
+ // When a window goes full-screen, a resize event is triggered, but the
+ // Fullscreen.isActive call is not guaranteed to return true until the
+ // full-screen event is triggered. In apps v2, the size of the window's
+ // client area is calculated differently in full-screen mode, so register
+ // for both events.
+ window.addEventListener('resize', remoting.onResize, false);
+ remoting.fullscreen.addListener(remoting.onResize);
+
remoting.initHostlist_();
var homeFeedback = new remoting.MenuButton(
« no previous file with comments | « remoting/webapp/crd/js/client_session.js ('k') | remoting/webapp/crd/js/event_handlers.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698