Commit 91aa8a30 authored by vabr@chromium.org's avatar vabr@chromium.org

Moving font_settings extensions API to api/

and putting the classes into extensions namespace.

TBR=ben@chromium.org
BUG=101244
TEST=N/A, no code change, moving stuff around only


Review URL: https://chromiumcodereview.appspot.com/10830180

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150318 0039d316-1c4b-4281-b951-d872f2087c98
parent 76af0ea1
......@@ -4,7 +4,7 @@
// Font Settings Extension API implementation.
#include "chrome/browser/extensions/extension_font_settings_api.h"
#include "chrome/browser/extensions/api/font_settings/font_settings_api.h"
#include "base/bind.h"
#include "base/command_line.h"
......@@ -29,9 +29,9 @@
#include "ui/gfx/platform_font_win.h"
#endif
using extensions::APIPermission;
namespace extensions {
namespace fonts = extensions::api::font_settings;
namespace fonts = api::font_settings;
namespace {
......@@ -109,12 +109,12 @@ void RegisterFontFamilyMapObserver(PrefChangeRegistrar* registrar,
} // namespace
ExtensionFontSettingsEventRouter::ExtensionFontSettingsEventRouter(
FontSettingsEventRouter::FontSettingsEventRouter(
Profile* profile) : profile_(profile) {}
ExtensionFontSettingsEventRouter::~ExtensionFontSettingsEventRouter() {}
FontSettingsEventRouter::~FontSettingsEventRouter() {}
void ExtensionFontSettingsEventRouter::Init() {
void FontSettingsEventRouter::Init() {
registrar_.Init(profile_->GetPrefs());
AddPrefToObserve(prefs::kWebKitDefaultFixedFontSize,
......@@ -141,14 +141,14 @@ void ExtensionFontSettingsEventRouter::Init() {
prefs::kWebKitFantasyFontFamilyMap, this);
}
void ExtensionFontSettingsEventRouter::AddPrefToObserve(const char* pref_name,
void FontSettingsEventRouter::AddPrefToObserve(const char* pref_name,
const char* event_name,
const char* key) {
registrar_.Add(pref_name, this);
pref_event_map_[pref_name] = std::make_pair(event_name, key);
}
void ExtensionFontSettingsEventRouter::Observe(
void FontSettingsEventRouter::Observe(
int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
......@@ -183,7 +183,7 @@ void ExtensionFontSettingsEventRouter::Observe(
NOTREACHED();
}
void ExtensionFontSettingsEventRouter::OnFontNamePrefChanged(
void FontSettingsEventRouter::OnFontNamePrefChanged(
PrefService* pref_service,
const std::string& pref_name,
const std::string& generic_family,
......@@ -216,7 +216,7 @@ void ExtensionFontSettingsEventRouter::OnFontNamePrefChanged(
pref_name);
}
void ExtensionFontSettingsEventRouter::OnFontPrefChanged(
void FontSettingsEventRouter::OnFontPrefChanged(
PrefService* pref_service,
const std::string& pref_name,
const std::string& event_name,
......@@ -257,11 +257,10 @@ bool ClearFontFunction::RunImpl() {
EXTENSION_FUNCTION_VALIDATE(
profile_->GetPrefs()->FindPreference(pref_path.c_str()));
extensions::ExtensionPrefs* prefs =
profile_->GetExtensionService()->extension_prefs();
ExtensionPrefs* prefs = profile_->GetExtensionService()->extension_prefs();
prefs->RemoveExtensionControlledPref(extension_id(),
pref_path.c_str(),
extensions::kExtensionPrefsScopeRegular);
kExtensionPrefsScopeRegular);
return true;
}
......@@ -313,12 +312,11 @@ bool SetFontFunction::RunImpl() {
EXTENSION_FUNCTION_VALIDATE(
profile_->GetPrefs()->FindPreference(pref_path.c_str()));
extensions::ExtensionPrefs* prefs =
profile_->GetExtensionService()->extension_prefs();
ExtensionPrefs* prefs = profile_->GetExtensionService()->extension_prefs();
prefs->SetExtensionControlledPref(
extension_id(),
pref_path.c_str(),
extensions::kExtensionPrefsScopeRegular,
kExtensionPrefsScopeRegular,
Value::CreateStringValue(params->details.font_id));
return true;
}
......@@ -371,11 +369,10 @@ bool ClearFontPrefExtensionFunction::RunImpl() {
return false;
}
extensions::ExtensionPrefs* prefs =
profile_->GetExtensionService()->extension_prefs();
ExtensionPrefs* prefs = profile_->GetExtensionService()->extension_prefs();
prefs->RemoveExtensionControlledPref(extension_id(),
GetPrefName(),
extensions::kExtensionPrefsScopeRegular);
kExtensionPrefsScopeRegular);
return true;
}
......@@ -413,11 +410,10 @@ bool SetFontPrefExtensionFunction::RunImpl() {
Value* value;
EXTENSION_FUNCTION_VALIDATE(details->Get(GetKey(), &value));
extensions::ExtensionPrefs* prefs =
profile_->GetExtensionService()->extension_prefs();
ExtensionPrefs* prefs = profile_->GetExtensionService()->extension_prefs();
prefs->SetExtensionControlledPref(extension_id(),
GetPrefName(),
extensions::kExtensionPrefsScopeRegular,
kExtensionPrefsScopeRegular,
value->DeepCopy());
return true;
}
......@@ -481,3 +477,5 @@ const char* SetMinimumFontSizeFunction::GetPrefName() {
const char* SetMinimumFontSizeFunction::GetKey() {
return kPixelSizeKey;
}
} // namespace extensions
......@@ -5,8 +5,8 @@
// Defines the classes to realize the Font Settings Extension API as specified
// in the extension API JSON.
#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_FONT_SETTINGS_API_H__
#define CHROME_BROWSER_EXTENSIONS_EXTENSION_FONT_SETTINGS_API_H__
#ifndef CHROME_BROWSER_EXTENSIONS_API_FONT_SETTINGS_FONT_SETTINGS_API_H__
#define CHROME_BROWSER_EXTENSIONS_API_FONT_SETTINGS_FONT_SETTINGS_API_H__
#include <map>
#include <string>
......@@ -15,16 +15,18 @@
#include "chrome/browser/extensions/extension_function.h"
#include "chrome/browser/prefs/pref_change_registrar.h"
namespace extensions {
// This class observes pref changed events on a profile and dispatches the
// corresponding extension API events to extensions.
class ExtensionFontSettingsEventRouter : public content::NotificationObserver {
class FontSettingsEventRouter : public content::NotificationObserver {
public:
// Constructor for observing pref changed events on |profile|. Stores a
// pointer to |profile| but does not take ownership. |profile| must be
// non-NULL and remain alive for the lifetime of the instance. Init() must be
// called to start observing pref changed events.
explicit ExtensionFontSettingsEventRouter(Profile* profile);
virtual ~ExtensionFontSettingsEventRouter();
explicit FontSettingsEventRouter(Profile* profile);
virtual ~FontSettingsEventRouter();
// Starts observing pref changed events on the profile. Must not be called
// more than once.
......@@ -82,7 +84,7 @@ class ExtensionFontSettingsEventRouter : public content::NotificationObserver {
// Weak, owns us (transitively via ExtensionService).
Profile* profile_;
DISALLOW_COPY_AND_ASSIGN(ExtensionFontSettingsEventRouter);
DISALLOW_COPY_AND_ASSIGN(FontSettingsEventRouter);
};
// fontSettings.clearFont API function.
......@@ -295,4 +297,6 @@ class SetMinimumFontSizeFunction : public SetFontPrefExtensionFunction {
virtual const char* GetKey() OVERRIDE;
};
#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_FONT_SETTINGS_API_H__
} // namespace extensions
#endif // CHROME_BROWSER_EXTENSIONS_API_FONT_SETTINGS_FONT_SETTINGS_API_H__
......@@ -18,6 +18,7 @@
#include "chrome/browser/extensions/api/extension_action/extension_browser_actions_api.h"
#include "chrome/browser/extensions/api/extension_action/extension_page_actions_api.h"
#include "chrome/browser/extensions/api/extension_action/extension_script_badge_api.h"
#include "chrome/browser/extensions/api/font_settings/font_settings_api.h"
#include "chrome/browser/extensions/api/identity/identity_api.h"
#include "chrome/browser/extensions/api/i18n/i18n_api.h"
#include "chrome/browser/extensions/api/idle/idle_api.h"
......@@ -39,7 +40,6 @@
#include "chrome/browser/extensions/api/web_request/web_request_api.h"
#include "chrome/browser/extensions/api/web_socket_proxy_private/web_socket_proxy_private_api.h"
#include "chrome/browser/extensions/api/webstore_private/webstore_private_api.h"
#include "chrome/browser/extensions/extension_font_settings_api.h"
#include "chrome/browser/extensions/extension_module.h"
#include "chrome/browser/extensions/extension_preference_api.h"
#include "chrome/browser/extensions/extension_processes_api.h"
......@@ -430,19 +430,19 @@ void ExtensionFunctionRegistry::ResetFunctions() {
RegisterFunction<extensions::SetContentSettingFunction>();
// Font settings.
RegisterFunction<GetFontListFunction>();
RegisterFunction<ClearFontFunction>();
RegisterFunction<GetFontFunction>();
RegisterFunction<SetFontFunction>();
RegisterFunction<ClearDefaultFontSizeFunction>();
RegisterFunction<GetDefaultFontSizeFunction>();
RegisterFunction<SetDefaultFontSizeFunction>();
RegisterFunction<ClearDefaultFixedFontSizeFunction>();
RegisterFunction<GetDefaultFixedFontSizeFunction>();
RegisterFunction<SetDefaultFixedFontSizeFunction>();
RegisterFunction<ClearMinimumFontSizeFunction>();
RegisterFunction<GetMinimumFontSizeFunction>();
RegisterFunction<SetMinimumFontSizeFunction>();
RegisterFunction<extensions::GetFontListFunction>();
RegisterFunction<extensions::ClearFontFunction>();
RegisterFunction<extensions::GetFontFunction>();
RegisterFunction<extensions::SetFontFunction>();
RegisterFunction<extensions::ClearDefaultFontSizeFunction>();
RegisterFunction<extensions::GetDefaultFontSizeFunction>();
RegisterFunction<extensions::SetDefaultFontSizeFunction>();
RegisterFunction<extensions::ClearDefaultFixedFontSizeFunction>();
RegisterFunction<extensions::GetDefaultFixedFontSizeFunction>();
RegisterFunction<extensions::SetDefaultFixedFontSizeFunction>();
RegisterFunction<extensions::ClearMinimumFontSizeFunction>();
RegisterFunction<extensions::GetMinimumFontSizeFunction>();
RegisterFunction<extensions::SetMinimumFontSizeFunction>();
// CloudPrint settings.
RegisterFunction<extensions::CloudPrintSetCredentialsFunction>();
......
......@@ -32,6 +32,7 @@
#include "chrome/browser/chrome_plugin_service_filter.h"
#include "chrome/browser/extensions/api/cookies/cookies_api.h"
#include "chrome/browser/extensions/api/declarative/rules_registry_service.h"
#include "chrome/browser/extensions/api/font_settings/font_settings_api.h"
#include "chrome/browser/extensions/api/managed_mode/managed_mode_api.h"
#include "chrome/browser/extensions/api/management/management_api.h"
#include "chrome/browser/extensions/api/push_messaging/push_messaging_api.h"
......@@ -46,7 +47,6 @@
#include "chrome/browser/extensions/extension_disabled_ui.h"
#include "chrome/browser/extensions/extension_error_reporter.h"
#include "chrome/browser/extensions/extension_error_ui.h"
#include "chrome/browser/extensions/extension_font_settings_api.h"
#include "chrome/browser/extensions/extension_host.h"
#include "chrome/browser/extensions/extension_install_ui.h"
#include "chrome/browser/extensions/extension_preference_api.h"
......@@ -491,7 +491,7 @@ void ExtensionService::InitEventRouters() {
new extensions::WebNavigationEventRouter(profile_));
web_navigation_event_router_->Init();
font_settings_event_router_.reset(
new ExtensionFontSettingsEventRouter(profile_));
new extensions::FontSettingsEventRouter(profile_));
font_settings_event_router_->Init();
managed_mode_event_router_.reset(
new extensions::ExtensionManagedModeEventRouter(profile_));
......
......@@ -72,6 +72,7 @@ class CrxInstaller;
class Extension;
class ExtensionCookiesEventRouter;
class ExtensionManagedModeEventRouter;
class FontSettingsEventRouter;
class PushMessagingEventRouter;
class ExtensionSyncData;
class ExtensionSystem;
......@@ -818,7 +819,7 @@ class ExtensionService
scoped_ptr<extensions::WebNavigationEventRouter> web_navigation_event_router_;
scoped_ptr<ExtensionFontSettingsEventRouter> font_settings_event_router_;
scoped_ptr<extensions::FontSettingsEventRouter> font_settings_event_router_;
scoped_ptr<extensions::ExtensionManagedModeEventRouter>
managed_mode_event_router_;
......
......@@ -556,6 +556,8 @@
'browser/extensions/api/page_capture/page_capture_api.h',
'browser/extensions/api/debugger/debugger_api.cc',
'browser/extensions/api/debugger/debugger_api.h',
'browser/extensions/api/font_settings/font_settings_api.cc',
'browser/extensions/api/font_settings/font_settings_api.h',
'browser/extensions/api/i18n/i18n_api.cc',
'browser/extensions/api/i18n/i18n_api.h',
'browser/extensions/api/input_ime/input_ime_api.cc',
......@@ -576,8 +578,6 @@
'browser/extensions/api/web_socket_proxy_private/web_socket_proxy_private_api.h',
'browser/extensions/api/webstore_private/webstore_private_api.cc',
'browser/extensions/api/webstore_private/webstore_private_api.h',
'browser/extensions/extension_font_settings_api.cc',
'browser/extensions/extension_font_settings_api.h',
'browser/extensions/extension_input_api.cc',
'browser/extensions/extension_input_api.h',
'browser/extensions/extension_input_method_api.cc',
......
......@@ -2731,6 +2731,7 @@
'browser/extensions/api/extension_action/page_as_browser_action_apitest.cc',
'browser/extensions/api/extension_action/script_badge_apitest.cc',
'browser/extensions/api/file_system/file_system_apitest.cc',
'browser/extensions/api/font_settings/font_settings_apitest.cc',
'browser/extensions/api/i18n/i18n_apitest.cc',
'browser/extensions/api/identity/identity_apitest.cc',
'browser/extensions/api/idle/idle_apitest.cc',
......@@ -2788,7 +2789,6 @@
'browser/extensions/extension_disabled_ui_browsertest.cc',
'browser/extensions/extension_dom_clipboard_apitest.cc',
'browser/extensions/extension_fileapi_apitest.cc',
'browser/extensions/extension_font_settings_apitest.cc',
'browser/extensions/extension_function_test_utils.cc',
'browser/extensions/extension_function_test_utils.h',
'browser/extensions/extension_geolocation_apitest.cc',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment