| Index: chrome/browser/resources/chromeos/login/screen_offline_message.js
|
| diff --git a/chrome/browser/resources/chromeos/login/screen_offline_message.js b/chrome/browser/resources/chromeos/login/screen_offline_message.js
|
| index c557bb0b89fc7fc8d33960500d1943e724ccc511..2b7c03d5a344e7475d728e5aaa1d128e82dd782d 100644
|
| --- a/chrome/browser/resources/chromeos/login/screen_offline_message.js
|
| +++ b/chrome/browser/resources/chromeos/login/screen_offline_message.js
|
| @@ -49,15 +49,20 @@ cr.define('login', function() {
|
| var shouldOverlay = MANAGED_SCREENS.indexOf(currentScreen.id) != -1;
|
|
|
| if (isOffline && shouldOverlay) {
|
| + $('offline-message-text').hidden = false;
|
| + $('captive-portal-message-text').hidden = true;
|
| +
|
| offlineMessage.classList.remove('hidden');
|
| offlineMessage.classList.remove('faded');
|
|
|
| - currentScreen.classList.add('faded');
|
| - currentScreen.addEventListener('webkitTransitionEnd',
|
| - function f(e) {
|
| - currentScreen.removeEventListener('webkitTransitionEnd', f);
|
| - currentScreen.classList.add('hidden');
|
| - });
|
| + if (!currentScreen.classList.contains('faded')) {
|
| + currentScreen.classList.add('faded');
|
| + currentScreen.addEventListener('webkitTransitionEnd',
|
| + function f(e) {
|
| + currentScreen.removeEventListener('webkitTransitionEnd', f);
|
| + currentScreen.classList.add('hidden');
|
| + });
|
| + }
|
| } else {
|
| if (!offlineMessage.classList.contains('faded')) {
|
| offlineMessage.classList.add('faded');
|
| @@ -85,6 +90,38 @@ cr.define('login', function() {
|
| }
|
| };
|
|
|
| + /**
|
| + * Handler for iframe's error notification coming from the outside.
|
| + * For more info see C++ class 'SnifferObserver' which calls this method.
|
| + * @param {integer} error Error code.
|
| + */
|
| + OfflineMessageScreen.onFrameError = function(error) {
|
| + var currentScreen = Oobe.getInstance().currentScreen;
|
| + var offlineMessage = $('offline-message');
|
| + var isOffline = !window.navigator.onLine;
|
| + var shouldOverlay = MANAGED_SCREENS.indexOf(currentScreen.id) != -1;
|
| +
|
| + if (!shouldOverlay)
|
| + return;
|
| +
|
| + if (!isOffline) {
|
| + $('offline-message-text').hidden = true;
|
| + $('captive-portal-message-text').hidden = false;
|
| + }
|
| +
|
| + if (!currentScreen.classList.contains('faded')) {
|
| + offlineMessage.classList.remove('hidden');
|
| + offlineMessage.classList.remove('faded');
|
| +
|
| + currentScreen.classList.add('faded');
|
| + currentScreen.addEventListener('webkitTransitionEnd',
|
| + function f(e) {
|
| + currentScreen.removeEventListener('webkitTransitionEnd', f);
|
| + currentScreen.classList.add('hidden');
|
| + });
|
| + }
|
| + };
|
| +
|
| return {
|
| OfflineMessageScreen: OfflineMessageScreen
|
| };
|
|
|