| Index: ui/app_list/views/app_list_view.cc
|
| diff --git a/ui/app_list/views/app_list_view.cc b/ui/app_list/views/app_list_view.cc
|
| index 118ab2b3409271a6c4a0a2e67a021d8b95b05c70..b2e4909e45b3a59d91c15ef95d1528bee39cce7e 100644
|
| --- a/ui/app_list/views/app_list_view.cc
|
| +++ b/ui/app_list/views/app_list_view.cc
|
| @@ -52,14 +52,11 @@ AppListView::AppListView(AppListViewDelegate* delegate)
|
| signin_view_(NULL) {
|
| if (delegate_)
|
| delegate_->SetModel(model_.get());
|
| - if (GetSigninDelegate())
|
| - GetSigninDelegate()->AddObserver(this);
|
| + model_->AddObserver(this);
|
| }
|
|
|
| AppListView::~AppListView() {
|
| - if (GetSigninDelegate())
|
| - GetSigninDelegate()->RemoveObserver(this);
|
| -
|
| + model_->RemoveObserver(this);
|
| // Models are going away, ensure their references are cleared.
|
| RemoveAllChildViews(true);
|
| }
|
| @@ -175,11 +172,8 @@ void AppListView::Prerender() {
|
| }
|
|
|
| void AppListView::OnSigninStatusChanged() {
|
| - const bool needs_signin =
|
| - GetSigninDelegate() && GetSigninDelegate()->NeedSignin();
|
| -
|
| - signin_view_->SetVisible(needs_signin);
|
| - app_list_main_view_->SetVisible(!needs_signin);
|
| + signin_view_->SetVisible(!model_->signed_in());
|
| + app_list_main_view_->SetVisible(model_->signed_in());
|
| app_list_main_view_->search_box_view()->InvalidateMenu();
|
| }
|
|
|
| @@ -268,12 +262,16 @@ void AppListView::OnWidgetVisibilityChanged(views::Widget* widget,
|
| Layout();
|
| }
|
|
|
| -void AppListView::OnSigninSuccess() {
|
| +SigninDelegate* AppListView::GetSigninDelegate() {
|
| + return delegate_ ? delegate_->GetSigninDelegate() : NULL;
|
| +}
|
| +
|
| +void AppListView::OnAppListModelSigninStatusChanged() {
|
| OnSigninStatusChanged();
|
| }
|
|
|
| -SigninDelegate* AppListView::GetSigninDelegate() {
|
| - return delegate_ ? delegate_->GetSigninDelegate() : NULL;
|
| +void AppListView::OnAppListModelCurrentUserChanged() {
|
| + OnSigninStatusChanged();
|
| }
|
|
|
| } // namespace app_list
|
|
|