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

Unified Diff: chrome/browser/extensions/extension_font_settings_api.h

Issue 10830180: Moving font_settings extensions API to api/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Moving "namespace extensions" up Created 8 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_font_settings_api.h
diff --git a/chrome/browser/extensions/extension_font_settings_api.h b/chrome/browser/extensions/extension_font_settings_api.h
deleted file mode 100644
index b55e578d4a3b90e093d72a0d452eb5b250fcdb6e..0000000000000000000000000000000000000000
--- a/chrome/browser/extensions/extension_font_settings_api.h
+++ /dev/null
@@ -1,298 +0,0 @@
-// Copyright (c) 2012 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.
-
-// 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__
-
-#include <map>
-#include <string>
-#include <utility>
-
-#include "chrome/browser/extensions/extension_function.h"
-#include "chrome/browser/prefs/pref_change_registrar.h"
-
-// This class observes pref changed events on a profile and dispatches the
-// corresponding extension API events to extensions.
-class ExtensionFontSettingsEventRouter : 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();
-
- // Starts observing pref changed events on the profile. Must not be called
- // more than once.
- void Init();
-
- private:
- typedef std::pair<std::string, std::string> EventAndKeyPair;
- // Map of pref name to a pair of event name and key (defined in the extension
- // API) for dispatching a pref changed event. For example,
- // "webkit.webprefs.default_font_size" to ("onDefaultFontSizedChanged",
- // "pixelSize").
- typedef std::map<std::string, EventAndKeyPair> PrefEventMap;
-
- // Observes browser pref |pref_name|. When a change is observed, dispatches
- // event |event_name| to extensions. A JavaScript object is passed to the
- // extension event function with the new value of the pref in property |key|.
- void AddPrefToObserve(const char* pref_name,
- const char* event_name,
- const char* key);
-
- // content::NotificationObserver implementation.
- virtual void Observe(int type,
- const content::NotificationSource& source,
- const content::NotificationDetails& details) OVERRIDE;
-
- // Dispatches a changed event for the font setting for |generic_family| and
- // |script| to extensions. The new value of the setting is the value of
- // browser pref |pref_name|. If the pref changed on the incognito profile,
- // |incognito| must be set to true for extensions to get the appropriate
- // event.
- void OnFontNamePrefChanged(PrefService* pref_service,
- const std::string& pref_name,
- const std::string& generic_family,
- const std::string& script,
- bool incognito);
-
- // Dispatches the setting changed event |event_name| to extensions. The new
- // value of the setting is the value of browser pref |pref_name|. This value
- // is passed in the JavaScript object argument to the extension event function
- // under the key |key|. If the pref changed on the incognito profile,
- // |incognito| must be set to true for extensions to get the appropriate
- // event.
- void OnFontPrefChanged(PrefService* pref_service,
- const std::string& pref_name,
- const std::string& event_name,
- const std::string& key,
- bool incognito);
-
- // Manages pref observation registration.
- PrefChangeRegistrar registrar_;
-
- // Maps browser pref names to extension API <event name, key> pairs.
- PrefEventMap pref_event_map_;
-
- // Weak, owns us (transitively via ExtensionService).
- Profile* profile_;
-
- DISALLOW_COPY_AND_ASSIGN(ExtensionFontSettingsEventRouter);
-};
-
-// fontSettings.clearFont API function.
-class ClearFontFunction : public SyncExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.clearFont")
-
- protected:
- // RefCounted types have non-public destructors, as with all extension
- // functions in this file.
- virtual ~ClearFontFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-};
-
-// fontSettings.getFont API function.
-class GetFontFunction : public SyncExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.getFont")
-
- protected:
- virtual ~GetFontFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-};
-
-// fontSettings.setFont API function.
-class SetFontFunction : public SyncExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.setFont")
-
- protected:
- virtual ~SetFontFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-};
-
-// fontSettings.getFontList API function.
-class GetFontListFunction : public AsyncExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.getFontList")
-
- protected:
- virtual ~GetFontListFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-
- private:
- void FontListHasLoaded(scoped_ptr<base::ListValue> list);
- bool CopyFontsToResult(base::ListValue* fonts);
-};
-
-// Base class for extension API functions that clear a browser font pref.
-class ClearFontPrefExtensionFunction : public SyncExtensionFunction {
- protected:
- virtual ~ClearFontPrefExtensionFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-
- // Implementations should return the name of the preference to clear, like
- // "webkit.webprefs.default_font_size".
- virtual const char* GetPrefName() = 0;
-};
-
-// Base class for extension API functions that get a browser font pref.
-class GetFontPrefExtensionFunction : public SyncExtensionFunction {
- protected:
- virtual ~GetFontPrefExtensionFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-
- // Implementations should return the name of the preference to get, like
- // "webkit.webprefs.default_font_size".
- virtual const char* GetPrefName() = 0;
-
- // Implementations should return the key for the value in the extension API,
- // like "pixelSize".
- virtual const char* GetKey() = 0;
-};
-
-// Base class for extension API functions that set a browser font pref.
-class SetFontPrefExtensionFunction : public SyncExtensionFunction {
- protected:
- virtual ~SetFontPrefExtensionFunction() {}
-
- // ExtensionFunction:
- virtual bool RunImpl() OVERRIDE;
-
- // Implementations should return the name of the preference to set, like
- // "webkit.webprefs.default_font_size".
- virtual const char* GetPrefName() = 0;
-
- // Implementations should return the key for the value in the extension API,
- // like "pixelSize".
- virtual const char* GetKey() = 0;
-};
-
-// The following are get/set/clear API functions that act on a browser font
-// pref.
-
-class ClearDefaultFontSizeFunction : public ClearFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.clearDefaultFontSize")
-
- protected:
- virtual ~ClearDefaultFontSizeFunction() {}
-
- // ClearFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
-};
-
-class GetDefaultFontSizeFunction : public GetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.getDefaultFontSize")
-
- protected:
- virtual ~GetDefaultFontSizeFunction() {}
-
- // GetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-class SetDefaultFontSizeFunction : public SetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.setDefaultFontSize")
-
- protected:
- virtual ~SetDefaultFontSizeFunction() {}
-
- // SetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-class ClearDefaultFixedFontSizeFunction
- : public ClearFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.clearDefaultFixedFontSize")
-
- protected:
- virtual ~ClearDefaultFixedFontSizeFunction() {}
-
- // ClearFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
-};
-
-class GetDefaultFixedFontSizeFunction : public GetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.getDefaultFixedFontSize")
-
- protected:
- virtual ~GetDefaultFixedFontSizeFunction() {}
-
- // GetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-class SetDefaultFixedFontSizeFunction : public SetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.setDefaultFixedFontSize")
-
- protected:
- virtual ~SetDefaultFixedFontSizeFunction() {}
-
- // SetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-class ClearMinimumFontSizeFunction : public ClearFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.clearMinimumFontSize")
-
- protected:
- virtual ~ClearMinimumFontSizeFunction() {}
-
- // ClearFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
-};
-
-class GetMinimumFontSizeFunction : public GetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.getMinimumFontSize")
-
- protected:
- virtual ~GetMinimumFontSizeFunction() {}
-
- // GetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-class SetMinimumFontSizeFunction : public SetFontPrefExtensionFunction {
- public:
- DECLARE_EXTENSION_FUNCTION_NAME("fontSettings.setMinimumFontSize")
-
- protected:
- virtual ~SetMinimumFontSizeFunction() {}
-
- // SetFontPrefExtensionFunction:
- virtual const char* GetPrefName() OVERRIDE;
- virtual const char* GetKey() OVERRIDE;
-};
-
-#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_FONT_SETTINGS_API_H__

Powered by Google App Engine
This is Rietveld 408576698