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

Unified Diff: chrome/browser/chromeos/login/dom_login_display.cc

Issue 6973029: Integrate WebUI Login with cros. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Removed ResetXCursor and did_paint_and fixed segfault in WebUILoginView Created 9 years, 7 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/dom_login_display.cc
diff --git a/chrome/browser/chromeos/login/dom_login_display.cc b/chrome/browser/chromeos/login/dom_login_display.cc
index 008b2c7a4b7cd2346123eee5b76e3fc8f6ecfd96..4eb7a4c919213576401a4dc51e8387c592644329 100644
--- a/chrome/browser/chromeos/login/dom_login_display.cc
+++ b/chrome/browser/chromeos/login/dom_login_display.cc
@@ -4,10 +4,10 @@
#include "chrome/browser/chromeos/login/dom_login_display.h"
-#include "chrome/browser/chromeos/frame/dom_browser.h"
#include "chrome/browser/chromeos/wm_ipc.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/browser_window.h"
+#include "views/widget/widget.h"
namespace {
const char kLoginURL[] = "chrome://login";
@@ -18,8 +18,8 @@ namespace chromeos {
// DOMLoginDisplay, public: ---------------------------------------------------
DOMLoginDisplay::~DOMLoginDisplay() {
- if (login_screen_)
- login_screen_->CloseWindow();
+ if (webui_login_window_)
+ webui_login_window_->Close();
}
// DOMLoginDisplay, Singleton implementation: ----------------------------------
@@ -31,9 +31,24 @@ DOMLoginDisplay* DOMLoginDisplay::GetInstance() {
// LoginDisplay implementation: ------------------------------------------------
+// static
+views::Widget* DOMLoginDisplay::GetLoginWindow() {
+ return DOMLoginDisplay::GetInstance()->LoginWindow();
+}
+
+views::Widget* DOMLoginDisplay::LoginWindow() {
+ return webui_login_window_;
+}
+
void DOMLoginDisplay::Destroy() {
background_bounds_ = gfx::Rect();
delegate_ = NULL;
+
+ if (webui_login_window_)
+ webui_login_window_->Close();
+
+ webui_login_window_ = NULL;
+ webui_login_view_ = NULL;
}
void DOMLoginDisplay::Init(const std::vector<UserManager::User>& users,
@@ -45,10 +60,11 @@ void DOMLoginDisplay::Init(const std::vector<UserManager::User>& users,
// TODO(rharrison): Add mechanism to pass in the show_guest and show_new_user
// values.
- login_screen_ = DOMBrowser::CreateForDOM(ProfileManager::GetDefaultProfile());
- login_screen_->AddSelectedTabWithURL(GURL(kLoginURL),
- PageTransition::START_PAGE);
- login_screen_->window()->Show();
+ webui_login_window_ = WebUILoginView::CreateWindowContainingView(
+ background_bounds_,
+ GURL(kLoginURL),
+ &webui_login_view_);
+ webui_login_window_->Show();
}
void DOMLoginDisplay::OnBeforeUserRemoved(const std::string& username) {
@@ -104,6 +120,8 @@ void DOMLoginDisplay::LoginAsGuest() {
DOMLoginDisplay::DOMLoginDisplay()
: LoginDisplay(NULL, gfx::Rect()),
LoginUIHandlerDelegate(),
- login_screen_(NULL) {}
+ webui_login_view_(NULL),
+ webui_login_window_(NULL) {
+}
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698