OLD | NEW |
| (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 }); | |
OLD | NEW |