1201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// Use of this source code is governed by a BSD-style license that can be
3201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// found in the LICENSE file.
4201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
5201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdochcr.define('cloudprint', function () {
6201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  function hideAllPages() {
7201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var pages = ['cloudprintsetup', 'setupdone'];
8201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    for (var i = 0; i < pages.length; ++i) {
9201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch      $(pages[i]).style.display = 'none';
10201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch      $(pages[i]).tabIndex = -1;
11201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    }
12201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
13201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
14201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  function showPage(page) {
15201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    hideAllPages();
16201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    $(page).style.display = 'block';
17201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    $(page).tabIndex = 0;
18201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
19201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
20201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  function showInitialPage() {
21201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var args = JSON.parse(chrome.dialogArguments);
22201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showPage(args.pageToShow);
23201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
24201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
25201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  function showSetupLogin() {
26201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showPage('cloudprintsetup');
27201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
28201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
29201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  function showSetupDone(width, height) {
30201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    hideAllPages();
31201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var moveByX = (window.innerWidth - width) / 2;
32201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var moveByY = (window.innerHeight - height) / 2;
33201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var sizeByX = width - window.innerWidth;
34201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    var sizeByY = height - window.innerHeight;
35201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    window.moveBy(moveByX, moveByY);
36201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    window.resizeBy(sizeByX, sizeByY);
37201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showPage('setupdone');
38201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
39201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
40201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  return {
41201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    hideAllPages: hideAllPages,
42201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showPage: showPage,
43201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showInitialPage: showInitialPage,
44201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showSetupLogin: showSetupLogin,
45201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    showSetupDone: showSetupDone
46201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  };
47201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch});
48