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

Unified Diff: chrome/browser/chromeos/login/webui_login_view.h

Issue 7607011: [ChromeOS] Freezes WebUI OOBE/Login window until tab is rendered. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: address comments in #1 Created 9 years, 4 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/login/webui_login_view.h
diff --git a/chrome/browser/chromeos/login/webui_login_view.h b/chrome/browser/chromeos/login/webui_login_view.h
index 20c02f18e0a8fb8ba4f8d614f196c3e1fe48add2..2c5b13b004ef7051fdbb43153d2bce3b12eac84a 100644
--- a/chrome/browser/chromeos/login/webui_login_view.h
+++ b/chrome/browser/chromeos/login/webui_login_view.h
@@ -8,6 +8,7 @@
#include "chrome/browser/chromeos/login/login_html_dialog.h"
#include "chrome/browser/chromeos/status/status_area_host.h"
+#include "chrome/browser/chromeos/tab_first_render_watcher.h"
#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h"
#include "content/browser/tab_contents/tab_contents_delegate.h"
#include "views/view.h"
@@ -24,6 +25,7 @@ class Widget;
namespace chromeos {
class StatusAreaView;
+class TabFirstRenderWatcher;
// View used to render a WebUI supporting Widget. This widget is used for the
// WebUI based start up and lock screens. It contains a StatusAreaView and
@@ -31,7 +33,8 @@ class StatusAreaView;
class WebUILoginView : public views::View,
public StatusAreaHost,
public TabContentsDelegate,
- public chromeos::LoginHtmlDialog::Delegate {
+ public chromeos::LoginHtmlDialog::Delegate,
+ public TabFirstRenderWatcher::Delegate {
public:
static const int kStatusAreaCornerPadding;
@@ -87,6 +90,10 @@ class WebUILoginView : public views::View,
virtual void OnDialogClosed() OVERRIDE;
virtual void OnLocaleChanged() OVERRIDE;
+ // TabFirstRenderWatcher::Delegate implementation.
+ virtual void OnTabMainFrameLoaded() OVERRIDE;
+ virtual void OnTabMainFrameFirstRender() OVERRIDE;
+
// Creates and adds the status area (separate window).
virtual void InitStatusArea();
@@ -120,6 +127,12 @@ class WebUILoginView : public views::View,
// Proxy settings dialog that can be invoked from network menu.
scoped_ptr<LoginHtmlDialog> proxy_settings_dialog_;
+ // Watches webui_login_'s TabContents rendering.
+ scoped_ptr<TabFirstRenderWatcher> tab_watcher_;
+
+ // Whether the host window is frozen.
+ bool host_window_frozen_;
+
DISALLOW_COPY_AND_ASSIGN(WebUILoginView);
};
« no previous file with comments | « chrome/browser/chromeos/login/webui_login_display_host.h ('k') | chrome/browser/chromeos/login/webui_login_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698