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

Side by Side Diff: chrome/browser/plugins/plugin_status_pref_setter.cc

Issue 2063863002: Use DCHECKs when observing only a single notification. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months 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
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/plugins/plugin_status_pref_setter.h" 5 #include "chrome/browser/plugins/plugin_status_pref_setter.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "chrome/browser/chrome_notification_types.h" 8 #include "chrome/browser/chrome_notification_types.h"
9 #include "chrome/browser/pepper_flash_settings_manager.h" 9 #include "chrome/browser/pepper_flash_settings_manager.h"
10 #include "chrome/browser/plugins/plugin_data_remover_helper.h" 10 #include "chrome/browser/plugins/plugin_data_remover_helper.h"
(...skipping 26 matching lines...) Expand all
37 profile_ = profile; 37 profile_ = profile;
38 registrar_.Add(this, chrome::NOTIFICATION_PLUGIN_ENABLE_STATUS_CHANGED, 38 registrar_.Add(this, chrome::NOTIFICATION_PLUGIN_ENABLE_STATUS_CHANGED,
39 content::Source<Profile>(profile)); 39 content::Source<Profile>(profile));
40 StartUpdate(); 40 StartUpdate();
41 } 41 }
42 42
43 void PluginStatusPrefSetter::Observe( 43 void PluginStatusPrefSetter::Observe(
44 int type, 44 int type,
45 const content::NotificationSource& source, 45 const content::NotificationSource& source,
46 const content::NotificationDetails& details) { 46 const content::NotificationDetails& details) {
47 if (type == chrome::NOTIFICATION_PLUGIN_ENABLE_STATUS_CHANGED) { 47 DCHECK_EQ(chrome::NOTIFICATION_PLUGIN_ENABLE_STATUS_CHANGED, type);
48 StartUpdate(); 48 StartUpdate();
49 } else {
50 NOTREACHED();
51 }
52 } 49 }
53 50
54 void PluginStatusPrefSetter::StartUpdate() { 51 void PluginStatusPrefSetter::StartUpdate() {
55 PluginService::GetInstance()->GetPlugins( 52 PluginService::GetInstance()->GetPlugins(
56 base::Bind(&PluginStatusPrefSetter::GotPlugins, factory_.GetWeakPtr(), 53 base::Bind(&PluginStatusPrefSetter::GotPlugins, factory_.GetWeakPtr(),
57 PluginPrefs::GetForProfile(profile_))); 54 PluginPrefs::GetForProfile(profile_)));
58 } 55 }
59 56
60 void PluginStatusPrefSetter::GotPlugins( 57 void PluginStatusPrefSetter::GotPlugins(
61 scoped_refptr<PluginPrefs> plugin_prefs, 58 scoped_refptr<PluginPrefs> plugin_prefs,
62 const std::vector<content::WebPluginInfo>& plugins) { 59 const std::vector<content::WebPluginInfo>& plugins) {
63 DCHECK_CURRENTLY_ON(BrowserThread::UI); 60 DCHECK_CURRENTLY_ON(BrowserThread::UI);
64 // Set the values on the PrefService instead of through the PrefMembers to 61 // Set the values on the PrefService instead of through the PrefMembers to
65 // notify observers if they changed. 62 // notify observers if they changed.
66 profile_->GetPrefs()->SetBoolean( 63 profile_->GetPrefs()->SetBoolean(
67 clear_plugin_lso_data_enabled_.GetPrefName().c_str(), 64 clear_plugin_lso_data_enabled_.GetPrefName().c_str(),
68 PluginDataRemoverHelper::IsSupported(plugin_prefs.get())); 65 PluginDataRemoverHelper::IsSupported(plugin_prefs.get()));
69 profile_->GetPrefs()->SetBoolean( 66 profile_->GetPrefs()->SetBoolean(
70 pepper_flash_settings_enabled_.GetPrefName().c_str(), 67 pepper_flash_settings_enabled_.GetPrefName().c_str(),
71 PepperFlashSettingsManager::IsPepperFlashInUse(plugin_prefs.get(), NULL)); 68 PepperFlashSettingsManager::IsPepperFlashInUse(plugin_prefs.get(), NULL));
72 } 69 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698