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

Side by Side Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller.cc

Issue 11345008: Remove content::NotificationObserver dependency from most Prefs code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head for commit Created 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
6 6
7 #include <set> 7 #include <set>
8 #include <vector> 8 #include <vector>
9 9
10 #include "ash/launcher/launcher_model.h" 10 #include "ash/launcher/launcher_model.h"
(...skipping 766 matching lines...) Expand 10 before | Expand all | Expand 10 after
777 } 777 }
778 case chrome::NOTIFICATION_EXTENSION_UNLOADED: { 778 case chrome::NOTIFICATION_EXTENSION_UNLOADED: {
779 const content::Details<extensions::UnloadedExtensionInfo> unload_info( 779 const content::Details<extensions::UnloadedExtensionInfo> unload_info(
780 details); 780 details);
781 const Extension* extension = unload_info->extension; 781 const Extension* extension = unload_info->extension;
782 if (IsAppPinned(extension->id())) 782 if (IsAppPinned(extension->id()))
783 DoUnpinAppsWithID(extension->id()); 783 DoUnpinAppsWithID(extension->id());
784 app_icon_loader_->ClearImage(extension->id()); 784 app_icon_loader_->ClearImage(extension->id());
785 break; 785 break;
786 } 786 }
787 case chrome::NOTIFICATION_PREF_CHANGED: {
788 const std::string& pref_name(
789 *content::Details<std::string>(details).ptr());
790 if (pref_name == prefs::kPinnedLauncherApps) {
791 UpdateAppLaunchersFromPref();
792 } else if (pref_name == prefs::kShelfAlignmentLocal) {
793 SetShelfAlignmentFromPrefs();
794 } else if (pref_name == prefs::kShelfAutoHideBehaviorLocal) {
795 SetShelfAutoHideBehaviorFromPrefs();
796 } else {
797 NOTREACHED() << "Unexpected pref change for " << pref_name;
798 }
799 break;
800 }
801 default: 787 default:
802 NOTREACHED() << "Unexpected notification type=" << type; 788 NOTREACHED() << "Unexpected notification type=" << type;
803 } 789 }
804 } 790 }
805 791
792 void ChromeLauncherController::OnPreferenceChanged(
793 PrefServiceBase* service,
794 const std::string& pref_name) {
795 if (pref_name == prefs::kPinnedLauncherApps) {
796 UpdateAppLaunchersFromPref();
797 } else if (pref_name == prefs::kShelfAlignmentLocal) {
798 SetShelfAlignmentFromPrefs();
799 } else if (pref_name == prefs::kShelfAutoHideBehaviorLocal) {
800 SetShelfAutoHideBehaviorFromPrefs();
801 } else {
802 NOTREACHED() << "Unexpected pref change for " << pref_name;
803 }
804 }
805
806 void ChromeLauncherController::OnShelfAlignmentChanged() { 806 void ChromeLauncherController::OnShelfAlignmentChanged() {
807 const char* pref_value = NULL; 807 const char* pref_value = NULL;
808 // TODO(oshima): Support multiple displays. 808 // TODO(oshima): Support multiple displays.
809 switch (ash::Shell::GetInstance()->GetShelfAlignment( 809 switch (ash::Shell::GetInstance()->GetShelfAlignment(
810 ash::Shell::GetPrimaryRootWindow())) { 810 ash::Shell::GetPrimaryRootWindow())) {
811 case ash::SHELF_ALIGNMENT_BOTTOM: 811 case ash::SHELF_ALIGNMENT_BOTTOM:
812 pref_value = ash::kShelfAlignmentBottom; 812 pref_value = ash::kShelfAlignmentBottom;
813 break; 813 break;
814 case ash::SHELF_ALIGNMENT_LEFT: 814 case ash::SHELF_ALIGNMENT_LEFT:
815 pref_value = ash::kShelfAlignmentLeft; 815 pref_value = ash::kShelfAlignmentLeft;
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
1120 } 1120 }
1121 1121
1122 void ChromeLauncherController::StopLoadingAnimation() { 1122 void ChromeLauncherController::StopLoadingAnimation() {
1123 DCHECK(observed_sync_service_); 1123 DCHECK(observed_sync_service_);
1124 1124
1125 model_->SetStatus(ash::LauncherModel::STATUS_NORMAL); 1125 model_->SetStatus(ash::LauncherModel::STATUS_NORMAL);
1126 loading_timer_.Stop(); 1126 loading_timer_.Stop();
1127 observed_sync_service_->RemoveObserver(this); 1127 observed_sync_service_->RemoveObserver(this);
1128 observed_sync_service_ = NULL; 1128 observed_sync_service_ = NULL;
1129 } 1129 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/ash/launcher/chrome_launcher_controller.h ('k') | chrome/browser/ui/browser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698