| Index: chrome/browser/chromeos/setting_level_bubble.cc
|
| diff --git a/chrome/browser/chromeos/setting_level_bubble.cc b/chrome/browser/chromeos/setting_level_bubble.cc
|
| index 0db0b7c5454e7f9f7f7b25b9b32f52016b4164dd..3b10fde3881b82421b91e6cc24fd4cbae9ba9303 100644
|
| --- a/chrome/browser/chromeos/setting_level_bubble.cc
|
| +++ b/chrome/browser/chromeos/setting_level_bubble.cc
|
| @@ -7,7 +7,9 @@
|
| #include <algorithm>
|
|
|
| #include "chrome/browser/chromeos/login/background_view.h"
|
| +#include "chrome/browser/chromeos/login/existing_user_controller.h"
|
| #include "chrome/browser/chromeos/login/login_utils.h"
|
| +#include "chrome/browser/chromeos/login/login_display_host.h"
|
| #include "chrome/browser/chromeos/login/webui_login_display.h"
|
| #include "chrome/browser/chromeos/setting_level_bubble_view.h"
|
| #include "chrome/browser/profiles/profile_manager.h"
|
| @@ -74,15 +76,25 @@ static views::Widget* GetToplevelWidget() {
|
| #else
|
| // Otherwise, see if there's a background window that we can use.
|
| BackgroundView* background = LoginUtils::Get()->GetBackgroundView();
|
| - if (background)
|
| + if (background) {
|
| window = GTK_WINDOW(background->GetNativeWindow());
|
| + } else {
|
| + ExistingUserController* controller =
|
| + ExistingUserController::current_controller();
|
| + if (controller) {
|
| + window =
|
| + GTK_WINDOW(controller->login_display_host()->GetNativeWindow());
|
| + }
|
| + }
|
| #endif
|
| }
|
|
|
| - if (window)
|
| + if (window) {
|
| return views::Widget::GetWidgetForNativeWindow(window);
|
| - else
|
| - return WebUILoginDisplay::GetLoginWindow();
|
| + } else {
|
| + NOTREACHED();
|
| + return NULL;
|
| + }
|
| }
|
|
|
| // SettingLevelBubbleDelegateView ----------------------------------------------
|
|
|