summaryrefslogtreecommitdiffstats
path: root/ui/app_list
diff options
context:
space:
mode:
authorjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-29 08:45:25 +0000
committerjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-29 08:45:25 +0000
commit11409f2ac727969d30faf891d759f4957cb85621 (patch)
treeebb575cdac061798bc68b39b0da073a7a9ea97a8 /ui/app_list
parentd9f1bc774a6433c96fd443089f526c715ef37c25 (diff)
downloadchromium_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.gyp7
-rw-r--r--ui/app_list/app_list_view_delegate.h4
-rw-r--r--ui/app_list/signin_delegate.cc27
-rw-r--r--ui/app_list/signin_delegate.h43
-rw-r--r--ui/app_list/signin_delegate_observer.h24
-rw-r--r--ui/app_list/views/DEPS3
-rw-r--r--ui/app_list/views/app_list_main_view.cc2
-rw-r--r--ui/app_list/views/app_list_main_view.h2
-rw-r--r--ui/app_list/views/app_list_view.cc57
-rw-r--r--ui/app_list/views/app_list_view.h22
-rw-r--r--ui/app_list/views/search_box_view.cc1
-rw-r--r--ui/app_list/views/signin_view.cc32
-rw-r--r--ui/app_list/views/signin_view.h46
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_