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

Side by Side Diff: chrome/test/data/extensions/platform_apps/prevent_leave_fullscreen/main.js

Issue 62763003: Leave fullscreen mode in an app window when ESC key is pressed. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: disable tests on mac Created 7 years 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 chrome.app.runtime.onLaunched.addListener(function() {
6 chrome.app.window.create('main.html', {}, function(win) {
7 // The following key events handler will prevent the default behavior for
8 // the ESC key, thus will prevent the ESC key to leave fullscreen.
9 win.contentWindow.document.addEventListener('keydown', function(e) {
10 e.preventDefault();
11 });
12 win.contentWindow.document.addEventListener('keyup', function(e) {
13 e.preventDefault();
14 });
15
16 chrome.test.sendMessage('Launched', function(reply) {
17 var doc = win.contentWindow.document;
18
19 switch (reply) {
20 case 'window':
21 doc.addEventListener('keydown', function(e) {
22 if (e.keyCode != 66) // 'b'
23 return;
24 doc.removeEventListener('keydown', arguments.callee);
25 // We do one trip to the event loop to increase the chances that
26 // fullscreen could have been left before the message is received.
27 setTimeout(function() {
28 chrome.test.sendMessage('B_KEY_RECEIVED');
29 });
30 });
31 win.fullscreen();
32 break;
33
34 case 'dom':
35 doc.addEventListener('keydown', function() {
36 doc.removeEventListener('keydown', arguments.callee);
37
38 doc.addEventListener('keydown', function(e) {
39 if (e.keyCode != 66) // 'b'
40 return;
41 doc.removeEventListener('keydown', arguments.callee);
42 // We do one trip to the event loop to increase the chances that
43 // fullscreen could have been left before the message is received.
44 setTimeout(function() {
45 chrome.test.sendMessage('B_KEY_RECEIVED');
46 });
47 });
48
49 doc.body.webkitRequestFullscreen();
50 });
51 break;
52 }
53 });
54 });
55 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698