diff options
author | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-29 08:45:25 +0000 |
---|---|---|
committer | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-29 08:45:25 +0000 |
commit | 11409f2ac727969d30faf891d759f4957cb85621 (patch) | |
tree | ebb575cdac061798bc68b39b0da073a7a9ea97a8 /ui/app_list | |
parent | d9f1bc774a6433c96fd443089f526c715ef37c25 (diff) | |
download | chromium_src-11409f2ac727969d30faf891d759f4957cb85621.zip chromium_src-11409f2ac727969d30faf891d759f4957cb85621.tar.gz chromium_src-11409f2ac727969d30faf891d759f4957cb85621.tar.bz2 |
Revert 179302
Breaks linking on app_list_unittest on Linux: symbol lookup error: libcontent.so: undefined symbol: _ZN15MallocExtension32GetBytesAllocatedOnCurrentThreadEv
> [win] Add signin support for the app launcher.
>
> This relands r178795, with the navigation to the sign in screen deferred until
> the app list is shown and sign in is needed.
>
> TBR=sky@chromium.org, atwilson@chromium.org, rogerta@chromium.org, xiyuan@chromium.org
> BUG=159733
>
> Review URL: https://codereview.chromium.org/12095027
TBR=benwells@chromium.org
Review URL: https://codereview.chromium.org/12088037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179307 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/app_list')
-rw-r--r-- | ui/app_list/app_list.gyp | 7 | ||||
-rw-r--r-- | ui/app_list/app_list_view_delegate.h | 4 | ||||
-rw-r--r-- | ui/app_list/signin_delegate.cc | 27 | ||||
-rw-r--r-- | ui/app_list/signin_delegate.h | 43 | ||||
-rw-r--r-- | ui/app_list/signin_delegate_observer.h | 24 | ||||
-rw-r--r-- | ui/app_list/views/DEPS | 3 | ||||
-rw-r--r-- | ui/app_list/views/app_list_main_view.cc | 2 | ||||
-rw-r--r-- | ui/app_list/views/app_list_main_view.h | 2 | ||||
-rw-r--r-- | ui/app_list/views/app_list_view.cc | 57 | ||||
-rw-r--r-- | ui/app_list/views/app_list_view.h | 22 | ||||
-rw-r--r-- | ui/app_list/views/search_box_view.cc | 1 | ||||
-rw-r--r-- | ui/app_list/views/signin_view.cc | 32 | ||||
-rw-r--r-- | ui/app_list/views/signin_view.h | 46 |
13 files changed, 10 insertions, 260 deletions
diff --git a/ui/app_list/app_list.gyp b/ui/app_list/app_list.gyp index 705ca73..488f172 100644 --- a/ui/app_list/app_list.gyp +++ b/ui/app_list/app_list.gyp @@ -49,9 +49,6 @@ 'search_result.h', 'search_result_list_view_delegate.h', 'search_result_view_delegate.h', - 'signin_delegate.cc', - 'signin_delegate.h', - 'signin_delegate_observer.h', 'views/app_list_background.cc', 'views/app_list_background.h', 'views/app_list_item_view.cc', @@ -74,8 +71,6 @@ 'views/search_result_list_view.h', 'views/search_result_view.cc', 'views/search_result_view.h', - 'views/signin_view.cc', - 'views/signin_view.h', ], 'conditions': [ ['use_aura==1', { @@ -85,8 +80,6 @@ }], ['toolkit_views==1', { 'dependencies': [ - '../../content/content.gyp:content_browser', - '../views/controls/webview/webview.gyp:webview', '../views/views.gyp:views', ], }, { # toolkit_views==0 diff --git a/ui/app_list/app_list_view_delegate.h b/ui/app_list/app_list_view_delegate.h index 5143544..a9d73a4 100644 --- a/ui/app_list/app_list_view_delegate.h +++ b/ui/app_list/app_list_view_delegate.h @@ -12,7 +12,6 @@ namespace app_list { class AppListItemModel; class AppListModel; class SearchResult; -class SigninDelegate; class APP_LIST_EXPORT AppListViewDelegate { public: @@ -23,9 +22,6 @@ class APP_LIST_EXPORT AppListViewDelegate { // Note that AppListView owns the model. virtual void SetModel(AppListModel* model) = 0; - // Gets the SigninDelegate for the app list. Owned by the AppListViewDelegate. - virtual SigninDelegate* GetSigninDelegate() = 0; - // Invoked when an AppListeItemModelView is activated by click or enter key. virtual void ActivateAppListItem(AppListItemModel* item, int event_flags) = 0; diff --git a/ui/app_list/signin_delegate.cc b/ui/app_list/signin_delegate.cc deleted file mode 100644 index 51eb830..0000000 --- a/ui/app_list/signin_delegate.cc +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "ui/app_list/signin_delegate.h" -#include "ui/app_list/signin_delegate_observer.h" - -namespace app_list { - -SigninDelegate::SigninDelegate() {} - -SigninDelegate::~SigninDelegate() {} - -void SigninDelegate::AddObserver(SigninDelegateObserver* observer) { - observers_.AddObserver(observer); -} - -void SigninDelegate::RemoveObserver(SigninDelegateObserver* observer) { - observers_.RemoveObserver(observer); -} - -void SigninDelegate::NotifySigninSuccess() { - FOR_EACH_OBSERVER(app_list::SigninDelegateObserver, observers_, - OnSigninSuccess()); -} - -} // namespace app_list diff --git a/ui/app_list/signin_delegate.h b/ui/app_list/signin_delegate.h deleted file mode 100644 index aa24093..0000000 --- a/ui/app_list/signin_delegate.h +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef UI_APP_LIST_SIGNIN_DELEGATE_H_ -#define UI_APP_LIST_SIGNIN_DELEGATE_H_ - -#include "base/basictypes.h" -#include "base/observer_list.h" -#include "ui/app_list/app_list_export.h" - -namespace content { -class BrowserContext; -class WebContents; -} - -namespace app_list { - -class SigninDelegateObserver; - -class APP_LIST_EXPORT SigninDelegate { - public: - SigninDelegate(); - virtual ~SigninDelegate(); - - virtual bool NeedSignin() = 0; - virtual content::WebContents* PrepareForSignin() = 0; - - void AddObserver(SigninDelegateObserver* observer); - void RemoveObserver(SigninDelegateObserver* observer); - - protected: - void NotifySigninSuccess(); - - private: - ObserverList<SigninDelegateObserver, true> observers_; - - DISALLOW_COPY_AND_ASSIGN(SigninDelegate); -}; - -} // namespace app_list - -#endif // UI_APP_LIST_SIGNIN_DELEGATE_H_ diff --git a/ui/app_list/signin_delegate_observer.h b/ui/app_list/signin_delegate_observer.h deleted file mode 100644 index 47c49926..0000000 --- a/ui/app_list/signin_delegate_observer.h +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef UI_APP_LIST_SIGNIN_DELEGATE_OBSERVER_H_ -#define UI_APP_LIST_SIGNIN_DELEGATE_OBSERVER_H_ - -#include "ui/app_list/app_list_export.h" - -namespace app_list { - -// Abstract interface to allow handling app list signin success. -class APP_LIST_EXPORT SigninDelegateObserver { - public: - // Called by the SigninDelegate when signin has successfully completed. - virtual void OnSigninSuccess() = 0; - - protected: - virtual ~SigninDelegateObserver() {} -}; - -} // namespace app_list - -#endif // UI_APP_LIST_SIGNIN_DELEGATE_OBSERVER_H_ diff --git a/ui/app_list/views/DEPS b/ui/app_list/views/DEPS deleted file mode 100644 index fe7bb13..0000000 --- a/ui/app_list/views/DEPS +++ /dev/null @@ -1,3 +0,0 @@ -include_rules = [ - "+content/public", -] diff --git a/ui/app_list/views/app_list_main_view.cc b/ui/app_list/views/app_list_main_view.cc index f73f428..b54a5ca 100644 --- a/ui/app_list/views/app_list_main_view.cc +++ b/ui/app_list/views/app_list_main_view.cc @@ -1,4 +1,4 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// Copyright (c) 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. diff --git a/ui/app_list/views/app_list_main_view.h b/ui/app_list/views/app_list_main_view.h index ee005f9..d51595a 100644 --- a/ui/app_list/views/app_list_main_view.h +++ b/ui/app_list/views/app_list_main_view.h @@ -1,4 +1,4 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// Copyright (c) 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. diff --git a/ui/app_list/views/app_list_view.cc b/ui/app_list/views/app_list_view.cc index 1ece80d..c288689 100644 --- a/ui/app_list/views/app_list_view.cc +++ b/ui/app_list/views/app_list_view.cc @@ -9,11 +9,9 @@ #include "ui/app_list/app_list_model.h" #include "ui/app_list/app_list_view_delegate.h" #include "ui/app_list/pagination_model.h" -#include "ui/app_list/signin_delegate.h" #include "ui/app_list/views/app_list_background.h" #include "ui/app_list/views/app_list_main_view.h" #include "ui/app_list/views/search_box_view.h" -#include "ui/app_list/views/signin_view.h" #include "ui/gfx/insets.h" #include "ui/gfx/path.h" #include "ui/gfx/skia_util.h" @@ -37,18 +35,12 @@ const int kArrowOffset = 10; AppListView::AppListView(AppListViewDelegate* delegate) : model_(new AppListModel), delegate_(delegate), - app_list_main_view_(NULL), - signin_view_(NULL) { + app_list_main_view_(NULL) { if (delegate_) delegate_->SetModel(model_.get()); - if (GetSigninDelegate()) - GetSigninDelegate()->AddObserver(this); } AppListView::~AppListView() { - if (GetSigninDelegate()) - GetSigninDelegate()->RemoveObserver(this); - // Models are going away, ensure their references are cleared. RemoveAllChildViews(true); } @@ -59,20 +51,19 @@ void AppListView::InitAsBubble( views::View* anchor, const gfx::Point& anchor_point, views::BubbleBorder::ArrowLocation arrow_location) { - app_list_main_view_ = new AppListMainView(delegate_.get(), model_.get(), pagination_model, anchor); - AddChildView(app_list_main_view_); + SetLayoutManager(new views::FillLayout()); + #if defined(USE_AURA) app_list_main_view_->SetPaintToLayer(true); app_list_main_view_->SetFillsBoundsOpaquely(false); app_list_main_view_->layer()->SetMasksToBounds(true); #endif - signin_view_ = new SigninView(GetSigninDelegate()); - AddChildView(signin_view_); + AddChildView(app_list_main_view_); set_anchor_view(anchor); set_anchor_point(anchor_point); @@ -130,10 +121,6 @@ void AppListView::UpdateBounds() { SizeToContents(); } -gfx::Size AppListView::GetPreferredSize() { - return app_list_main_view_->GetPreferredSize(); -} - views::View* AppListView::GetInitiallyFocusedView() { return app_list_main_view_->search_box_view()->search_box(); } @@ -158,22 +145,6 @@ bool AppListView::AcceleratorPressed(const ui::Accelerator& accelerator) { return false; } -void AppListView::Layout() { - if (!signin_view_) { - app_list_main_view_->SetBounds(0, 0, width(), height()); - return; - } - - if (GetSigninDelegate() && GetSigninDelegate()->NeedSignin()) { - signin_view_->SetBounds(0, 0, width(), height()); - app_list_main_view_->SetBounds(width(), 0, width(), height()); - return; - } - - signin_view_->SetBounds(-width(), 0, width(), height()); - app_list_main_view_->SetBounds(0, 0, width(), height()); -} - void AppListView::OnWidgetClosing(views::Widget* widget) { BubbleDelegateView::OnWidgetClosing(widget); if (delegate_.get() && widget == GetWidget()) @@ -188,24 +159,4 @@ void AppListView::OnWidgetActivationChanged(views::Widget* widget, delegate_->ViewActivationChanged(active); } -void AppListView::OnWidgetVisibilityChanged(views::Widget* widget, - bool visible) { - BubbleDelegateView::OnWidgetVisibilityChanged(widget, visible); - - if (widget != GetWidget()) - return; - - Layout(); - if (visible && GetSigninDelegate() && GetSigninDelegate()->NeedSignin()) - signin_view_->BeginSignin(); -} - -void AppListView::OnSigninSuccess() { - Layout(); -} - -SigninDelegate* AppListView::GetSigninDelegate() { - return delegate_ ? delegate_->GetSigninDelegate() : NULL; -} - } // namespace app_list diff --git a/ui/app_list/views/app_list_view.h b/ui/app_list/views/app_list_view.h index ab604fe..652a5c8 100644 --- a/ui/app_list/views/app_list_view.h +++ b/ui/app_list/views/app_list_view.h @@ -7,7 +7,6 @@ #include "base/memory/scoped_ptr.h" #include "ui/app_list/app_list_export.h" -#include "ui/app_list/signin_delegate_observer.h" #include "ui/views/bubble/bubble_delegate.h" namespace views { @@ -20,13 +19,10 @@ class AppListMainView; class AppListModel; class AppListViewDelegate; class PaginationModel; -class SigninDelegate; -class SigninView; // AppListView is the top-level view and controller of app list UI. It creates // and hosts a AppsGridView and passes AppListModel to it for display. -class APP_LIST_EXPORT AppListView : public views::BubbleDelegateView, - public SigninDelegateObserver { +class APP_LIST_EXPORT AppListView : public views::BubbleDelegateView { public: // Takes ownership of |delegate|. explicit AppListView(AppListViewDelegate* delegate); @@ -52,9 +48,6 @@ class APP_LIST_EXPORT AppListView : public views::BubbleDelegateView, void UpdateBounds(); - // Overridden from views::View: - virtual gfx::Size GetPreferredSize() OVERRIDE; - private: // Overridden from views::WidgetDelegateView: virtual views::View* GetInitiallyFocusedView() OVERRIDE; @@ -63,25 +56,16 @@ class APP_LIST_EXPORT AppListView : public views::BubbleDelegateView, // Overridden from views::View: virtual bool AcceleratorPressed(const ui::Accelerator& accelerator) OVERRIDE; - virtual void Layout() OVERRIDE; // Overridden from views::WidgetObserver: virtual void OnWidgetClosing(views::Widget* widget) OVERRIDE; - virtual void OnWidgetVisibilityChanged( - views::Widget* widget, bool visible) OVERRIDE; - virtual void OnWidgetActivationChanged( - views::Widget* widget, bool active) OVERRIDE; - - // Overridden from SigninDelegateObserver: - virtual void OnSigninSuccess() OVERRIDE; - - SigninDelegate* GetSigninDelegate(); + virtual void OnWidgetActivationChanged(views::Widget* widget, bool active) + OVERRIDE; scoped_ptr<AppListModel> model_; scoped_ptr<AppListViewDelegate> delegate_; AppListMainView* app_list_main_view_; - SigninView* signin_view_; DISALLOW_COPY_AND_ASSIGN(AppListView); }; diff --git a/ui/app_list/views/search_box_view.cc b/ui/app_list/views/search_box_view.cc index f98a198..b54203c 100644 --- a/ui/app_list/views/search_box_view.cc +++ b/ui/app_list/views/search_box_view.cc @@ -151,3 +151,4 @@ void SearchBoxView::TextChanged() { } } // namespace app_list + diff --git a/ui/app_list/views/signin_view.cc b/ui/app_list/views/signin_view.cc deleted file mode 100644 index 8a30acf..0000000 --- a/ui/app_list/views/signin_view.cc +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "ui/app_list/views/signin_view.h" - -#include "content/public/browser/web_contents.h" -#include "ui/app_list/signin_delegate.h" -#include "ui/views/controls/webview/webview.h" -#include "ui/views/layout/fill_layout.h" - -namespace app_list { - -SigninView::SigninView(SigninDelegate* delegate) - : web_view_(new views::WebView(NULL)), delegate_(delegate) { - SetLayoutManager(new views::FillLayout()); - AddChildView(web_view_); -} - -SigninView::~SigninView() { - web_view_->SetWebContents(NULL); -} - -void SigninView::BeginSignin() { - if (!delegate_) - return; - - web_contents_.reset(delegate_->PrepareForSignin()); - web_view_->SetWebContents(web_contents_.get()); -} - -} // namespace app_list diff --git a/ui/app_list/views/signin_view.h b/ui/app_list/views/signin_view.h deleted file mode 100644 index beab25b..0000000 --- a/ui/app_list/views/signin_view.h +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef UI_APP_LIST_VIEWS_SIGNIN_VIEW_H_ -#define UI_APP_LIST_VIEWS_SIGNIN_VIEW_H_ - -#include "base/basictypes.h" -#include "base/compiler_specific.h" -#include "base/memory/scoped_ptr.h" -#include "ui/views/view.h" - -namespace content { -class WebContents; -} - -namespace views { -class WebView; -} - -namespace app_list { - -class SigninDelegate; - -// The SigninView is shown in the app list when the user needs to sign in. -// It just shows a webview, which is prepared for signin by the signin delegate. -class SigninView : public views::View { - public: - SigninView(SigninDelegate* delegate); - virtual ~SigninView(); - - // Show the signin UI and begins the signin process. - void BeginSignin(); - - private: - scoped_ptr<content::WebContents> web_contents_; - views::WebView* web_view_; - - SigninDelegate* delegate_; - - DISALLOW_COPY_AND_ASSIGN(SigninView); -}; - -} // namespace app_list - -#endif // UI_APP_LIST_VIEWS_SIGNIN_VIEW_H_ |