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

Unified Diff: ui/app_list/cocoa/app_list_view_controller.mm

Issue 79773005: Update app list search box menu when Users changes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add AppListViewDelegateObserver Created 7 years, 1 month 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: ui/app_list/cocoa/app_list_view_controller.mm
diff --git a/ui/app_list/cocoa/app_list_view_controller.mm b/ui/app_list/cocoa/app_list_view_controller.mm
index 51a71cfa942fbc1647e5091d34fdc1e9c0cd941e..2379a8bfec35c70093d78598e7c5d8317dd153e1 100644
--- a/ui/app_list/cocoa/app_list_view_controller.mm
+++ b/ui/app_list/cocoa/app_list_view_controller.mm
@@ -81,7 +81,8 @@ const NSTimeInterval kResultsAnimationDuration = 0.2;
namespace app_list {
-class AppListModelObserverBridge : public AppListModelObserver {
+class AppListModelObserverBridge : public AppListModelObserver,
+ public AppListViewDelegateObserver {
public:
AppListModelObserverBridge(AppListViewController* parent);
virtual ~AppListModelObserverBridge();
@@ -90,6 +91,9 @@ class AppListModelObserverBridge : public AppListModelObserver {
// Overridden from app_list::AppListModelObserver:
virtual void OnAppListModelSigninStatusChanged() OVERRIDE;
+ // Overridden from app_list::AppListViewDelegateObserver:
+ virtual void OnUsersChanged() OVERRIDE;
+
AppListViewController* parent_; // Weak. Owns us.
DISALLOW_COPY_AND_ASSIGN(AppListModelObserverBridge);
@@ -99,16 +103,22 @@ AppListModelObserverBridge::AppListModelObserverBridge(
AppListViewController* parent)
: parent_(parent) {
[[parent_ appsGridController] model]->AddObserver(this);
+ [parent_ delegate]->AddObserver(this);
}
AppListModelObserverBridge::~AppListModelObserverBridge() {
[[parent_ appsGridController] model]->RemoveObserver(this);
+ [parent_ delegate]->RemoveObserver(this);
}
void AppListModelObserverBridge::OnAppListModelSigninStatusChanged() {
[parent_ onSigninStatusChanged];
}
+void AppListModelObserverBridge::OnUsersChanged() {
+ [[parent_ appsSearchBoxController] rebuildMenu];
+}
+
} // namespace app_list
@implementation AppListViewController
@@ -169,6 +179,10 @@ void AppListModelObserverBridge::OnAppListModelSigninStatusChanged() {
[self onSigninStatusChanged];
}
+- (AppsSearchBoxController*)appsSearchBoxController {
+ return appsSearchBoxController_;
+}
+
-(void)loadAndSetView {
pagerControl_.reset([[AppListPagerView alloc] init]);
[pagerControl_ setTarget:appsGridController_];

Powered by Google App Engine
This is Rietveld 408576698