diff options
Diffstat (limited to 'chromium/chrome/browser/resources/chromeos/login/screen.js')
-rw-r--r-- | chromium/chrome/browser/resources/chromeos/login/screen.js | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/chromium/chrome/browser/resources/chromeos/login/screen.js b/chromium/chrome/browser/resources/chromeos/login/screen.js deleted file mode 100644 index 432d45b764b..00000000000 --- a/chromium/chrome/browser/resources/chromeos/login/screen.js +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright (c) 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -/** - * @fileoverview Base class for all login WebUI screens. - */ -cr.define('login', function() { - var Screen = cr.ui.define('div'); - - function doNothing() {}; - - Screen.prototype = { - __proto__: HTMLDivElement.prototype, - - decorate: doNothing, - - /** - * Returns minimal size that screen prefers to have. Default implementation - * returns current screen size. - * @return {{width: number, height: number}} - */ - getPreferredSize: function() { - return {width: this.offsetWidth, height: this.offsetHeight}; - }, - - /** - * Called for currently active screen when screen size changed. - */ - onWindowResize: doNothing - }; - - return { - Screen: Screen - }; -}); - -cr.define('login', function() { - return { - /** - * Creates class and object for screen. - * Methods specified in EXTERNAL_API array of prototype - * will be available from C++ part. - * Example: - * login.createScreen('ScreenName', 'screen-id', { - * foo: function() { console.log('foo'); }, - * bar: function() { console.log('bar'); } - * EXTERNAL_API: ['foo']; - * }); - * login.ScreenName.register(); - * var screen = $('screen-id'); - * screen.foo(); // valid - * login.ScreenName.foo(); // valid - * screen.bar(); // valid - * login.ScreenName.bar(); // invalid - * - * @param {string} name Name of created class. - * @param {string} id Id of div representing screen. - * @param {(function()|Object)} proto Prototype of object or function that - * returns prototype. - */ - createScreen: function(name, id, proto) { - if (typeof proto == 'function') - proto = proto(); - cr.define('login', function() { - var api = proto.EXTERNAL_API || []; - for (var i = 0; i < api.length; ++i) { - var methodName = api[i]; - if (typeof proto[methodName] !== 'function') - throw Error('External method "' + methodName + '" for screen "' + - name + '" not a function or undefined.'); - } - - var constructor = cr.ui.define(login.Screen); - constructor.prototype = Object.create(login.Screen.prototype); - Object.getOwnPropertyNames(proto).forEach(function(propertyName) { - var descriptor = - Object.getOwnPropertyDescriptor(proto, propertyName); - Object.defineProperty(constructor.prototype, - propertyName, descriptor); - if (api.indexOf(propertyName) >= 0) { - constructor[propertyName] = (function(x) { - return function() { - var screen = $(id); - return screen[x].apply(screen, arguments); - }; - })(propertyName); - } - }); - constructor.prototype.name = function() { return id; }; - - constructor.register = function() { - var screen = $(id); - constructor.decorate(screen); - Oobe.getInstance().registerScreen(screen); - }; - - var result = {}; - result[name] = constructor; - return result; - }); - } - }; -}); - |