diff options
author | battre@chromium.org <battre@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-25 07:02:07 +0000 |
---|---|---|
committer | battre@chromium.org <battre@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-25 07:02:07 +0000 |
commit | 63a80512c10fd9a7c836ec93895c30000fa31c8e (patch) | |
tree | ee6e8c58a2c948f51b21aa915a4798040381b1a1 /chrome | |
parent | bfc22060ae2eb3e50278708495b76c02bb2a8e08 (diff) | |
download | chromium_src-63a80512c10fd9a7c836ec93895c30000fa31c8e.zip chromium_src-63a80512c10fd9a7c836ec93895c30000fa31c8e.tar.gz chromium_src-63a80512c10fd9a7c836ec93895c30000fa31c8e.tar.bz2 |
Remove RemoveCustomProxySettingsFunction as it is substituted by clear of preferences api
BUG=73387
TEST=Execute Proxy Settings API tests (browser_tests --gtest_filter="ProxySettings*"
Review URL: http://codereview.chromium.org/6574038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76031 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
7 files changed, 156 insertions, 131 deletions
diff --git a/chrome/browser/extensions/extension_function_dispatcher.cc b/chrome/browser/extensions/extension_function_dispatcher.cc index bdd1555..29d2a3a 100644 --- a/chrome/browser/extensions/extension_function_dispatcher.cc +++ b/chrome/browser/extensions/extension_function_dispatcher.cc @@ -260,7 +260,6 @@ void FactoryRegistry::ResetFunctions() { // Proxies. RegisterFunction<SetProxySettingsFunction>(); - RegisterFunction<RemoveCustomProxySettingsFunction>(); RegisterFunction<GetProxySettingsFunction>(); // Sidebar. diff --git a/chrome/browser/extensions/extension_proxy_api.cc b/chrome/browser/extensions/extension_proxy_api.cc index 60a2d69..bc439eb 100644 --- a/chrome/browser/extensions/extension_proxy_api.cc +++ b/chrome/browser/extensions/extension_proxy_api.cc @@ -390,26 +390,6 @@ bool SetProxySettingsFunction::RunImpl() { return SetPreferenceFunction::RunImpl(); } -void RemoveCustomProxySettingsFunction::RemovePreference(const char* pref_path, - bool incognito) { - Profile* use_profile = profile(); - if (use_profile->IsOffTheRecord()) - use_profile = use_profile->GetOriginalProfile(); - - use_profile->GetExtensionService()->extension_prefs()-> - RemoveExtensionControlledPref(extension_id(), pref_path, incognito); -} - -bool RemoveCustomProxySettingsFunction::RunImpl() { - bool incognito = false; - if (HasOptionalArgument(0)) { - EXTENSION_FUNCTION_VALIDATE(args_->GetBoolean(0, &incognito)); - } - - RemovePreference(prefs::kProxy, incognito); - return true; -} - bool GetProxySettingsFunction::RunImpl() { if (!GetPreferenceFunction::RunImpl()) return false; diff --git a/chrome/browser/extensions/extension_proxy_api.h b/chrome/browser/extensions/extension_proxy_api.h index 1dbb042..cd21a00 100644 --- a/chrome/browser/extensions/extension_proxy_api.h +++ b/chrome/browser/extensions/extension_proxy_api.h @@ -66,17 +66,6 @@ class SetProxySettingsFunction : public SetPreferenceFunction { bool GetBypassList(DictionaryValue* proxy_rules, std::string* out); }; -class RemoveCustomProxySettingsFunction : public SyncExtensionFunction { - public: - virtual ~RemoveCustomProxySettingsFunction() {} - virtual bool RunImpl(); - - DECLARE_EXTENSION_FUNCTION_NAME( - "experimental.proxy.removeCustomProxySettings") - private: - void RemovePreference(const char* pref_path, bool incognito); -}; - class GetProxySettingsFunction : public GetPreferenceFunction { public: virtual ~GetProxySettingsFunction() {} diff --git a/chrome/common/extensions/api/extension_api.json b/chrome/common/extensions/api/extension_api.json index 1a2aa46..c3f47a0 100644 --- a/chrome/common/extensions/api/extension_api.json +++ b/chrome/common/extensions/api/extension_api.json @@ -3754,21 +3754,6 @@ } } ], - "functions": [ - { - "name": "removeCustomProxySettings", - "type": "function", - "description": "Remove a custom proxy set by the current extension. This is the inverse of useCustomProxySettings().", - "parameters": [ - { - "name": "incognito", - "type": "boolean", - "description": "See incognito parameter of useCustomProxySettings().", - "optional": true - } - ] - } - ], "properties": { "settings": { "$ref": "Preference", diff --git a/chrome/common/extensions/docs/experimental.extension.html b/chrome/common/extensions/docs/experimental.extension.html index 35f4380..4d203ae 100644 --- a/chrome/common/extensions/docs/experimental.extension.html +++ b/chrome/common/extensions/docs/experimental.extension.html @@ -1026,11 +1026,56 @@ </p> <!-- Note: intentionally longer 80 columns --> - <pre>function(<span>any value</span>) <span class="subdued">{...}</span>;</pre> + <pre>function(<span>object details</span>) <span class="subdued">{...}</span>;</pre> <dl> <div> <div> <dt> + <var>details</var> + <em> + + <!-- TYPE --> + <div style="display:inline"> + ( + <span class="optional" style="display: none; ">optional</span> + <span class="enum" style="display: none; ">enumerated</span> + <span id="typeTemplate"> + <span style="display: none; "> + <a> Type</a> + </span> + <span> + <span style="display: none; "> + array of <span><span></span></span> + </span> + <span>object</span> + <span style="display: none; "></span> + </span> + </span> + ) + </div> + + </em> + </dt> + <dd class="todo" style="display: none; "> + Undocumented. + </dd> + <dd>Details of the currently effective preference value.</dd> + <dd style="display: none; "> + This parameter was added in version + <b><span></span></b>. + You must omit this parameter in earlier versions, + and you may omit it in any version. If you require this + parameter, the manifest key + <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> + can ensure that your extension won't be run in an earlier browser version. + </dd> + + <!-- OBJECT PROPERTIES --> + <dd> + <dl> + <div> + <div> + <dt> <var>value</var> <em> @@ -1096,6 +1141,94 @@ </dd> </div> + </div><div> + <div> + <dt> + <var>levelOfControl</var> + <em> + + <!-- TYPE --> + <div style="display:inline"> + ( + <span class="optional" style="display: none; ">optional</span> + <span class="enum">enumerated</span> + <span id="typeTemplate"> + <span style="display: none; "> + <a> Type</a> + </span> + <span> + <span style="display: none; "> + array of <span><span></span></span> + </span> + <span>string</span> + <span>["NotControllable", "ControlledByOtherExtensions", "ControllableByThisExtension", "ControlledByThisExtension"]</span> + </span> + </span> + ) + </div> + + </em> + </dt> + <dd class="todo" style="display: none; "> + Undocumented. + </dd> + <dd>One of<br>NotControllable = cannot be controlled by any extension<br>ControlledByOtherExtensions = controlled by extensions with higher precedence<br>ControllableByThisExtension = can be controlled by this extension<br>ControlledByThisExtension = controlled by this extension</dd> + <dd style="display: none; "> + This parameter was added in version + <b><span></span></b>. + You must omit this parameter in earlier versions, + and you may omit it in any version. If you require this + parameter, the manifest key + <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> + can ensure that your extension won't be run in an earlier browser version. + </dd> + + <!-- OBJECT PROPERTIES --> + <dd style="display: none; "> + <dl> + <div> + <div> + </div> + </div> + </dl> + </dd> + + <!-- OBJECT METHODS --> + <dd style="display: none; "> + <div></div> + </dd> + + <!-- OBJECT EVENT FIELDS --> + <dd style="display: none; "> + <div></div> + </dd> + + <!-- FUNCTION PARAMETERS --> + <dd style="display: none; "> + <div></div> + </dd> + + </div> + </div> + </dl> + </dd> + + <!-- OBJECT METHODS --> + <dd style="display: none; "> + <div></div> + </dd> + + <!-- OBJECT EVENT FIELDS --> + <dd style="display: none; "> + <div></div> + </dd> + + <!-- FUNCTION PARAMETERS --> + <dd style="display: none; "> + <div></div> + </dd> + + </div> </div> </dl> </div> diff --git a/chrome/common/extensions/docs/experimental.proxy.html b/chrome/common/extensions/docs/experimental.proxy.html index e0d3687..485e607 100644 --- a/chrome/common/extensions/docs/experimental.proxy.html +++ b/chrome/common/extensions/docs/experimental.proxy.html @@ -303,11 +303,11 @@ </li> </ol> </li> - <li> - <a href="#global-methods">Methods</a> + <li style="display: none; "> + <a>Methods</a> <ol> <li> - <a href="#method-removeCustomProxySettings">removeCustomProxySettings</a> + <a href="#method-anchor">methodName</a> </li> </ol> </li> @@ -694,109 +694,46 @@ element. </div> <!-- /apiGroup --> <!-- METHODS --> - <div id="methodsTemplate" class="apiGroup"> - <a name="global-methods"></a> + <div id="methodsTemplate" class="apiGroup" style="display: none; "> + <a></a> <h3>Methods</h3> <!-- iterates over all functions --> <div class="apiItem"> - <a name="method-removeCustomProxySettings"></a> <!-- method-anchor --> - <h4>removeCustomProxySettings</h4> + <a></a> <!-- method-anchor --> + <h4>method name</h4> - <div class="summary"><span style="display: none; ">void</span> + <div class="summary"><span>void</span> <!-- Note: intentionally longer 80 columns --> - <span>chrome.experimental.proxy.removeCustomProxySettings</span>(<span class="optional"><span style="display: none; ">, </span><span>boolean</span> - <var><span>incognito</span></var></span>)</div> + <span>chrome.module.methodName</span>(<span><span>, </span><span></span> + <var><span></span></var></span>)</div> <div class="description"> - <p class="todo" style="display: none; ">Undocumented.</p> - <p>Remove a custom proxy set by the current extension. This is the inverse of useCustomProxySettings().</p> + <p class="todo">Undocumented.</p> + <p> + A description from the json schema def of the function goes here. + </p> <!-- PARAMETERS --> <h4>Parameters</h4> <dl> <div> <div> - <dt> - <var>incognito</var> - <em> - - <!-- TYPE --> - <div style="display:inline"> - ( - <span class="optional">optional</span> - <span class="enum" style="display: none; ">enumerated</span> - <span id="typeTemplate"> - <span style="display: none; "> - <a> Type</a> - </span> - <span> - <span style="display: none; "> - array of <span><span></span></span> - </span> - <span>boolean</span> - <span style="display: none; "></span> - </span> - </span> - ) - </div> - - </em> - </dt> - <dd class="todo" style="display: none; "> - Undocumented. - </dd> - <dd>See incognito parameter of useCustomProxySettings().</dd> - <dd style="display: none; "> - This parameter was added in version - <b><span></span></b>. - You must omit this parameter in earlier versions, - and you may omit it in any version. If you require this - parameter, the manifest key - <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> - can ensure that your extension won't be run in an earlier browser version. - </dd> - - <!-- OBJECT PROPERTIES --> - <dd style="display: none; "> - <dl> - <div> - <div> - </div> - </div> - </dl> - </dd> - - <!-- OBJECT METHODS --> - <dd style="display: none; "> - <div></div> - </dd> - - <!-- OBJECT EVENT FIELDS --> - <dd style="display: none; "> - <div></div> - </dd> - - <!-- FUNCTION PARAMETERS --> - <dd style="display: none; "> - <div></div> - </dd> - - </div> + </div> </div> </dl> <!-- RETURNS --> - <h4 style="display: none; ">Returns</h4> + <h4>Returns</h4> <dl> - <div style="display: none; "> + <div> <div> </div> </div> </dl> <!-- CALLBACK --> - <div style="display: none; "> + <div> <div> <h4>Callback function</h4> <p> @@ -820,7 +757,7 @@ element. </div> <!-- MIN_VERSION --> - <p style="display: none; "> + <p> This function was added in version <b><span></span></b>. If you require this function, the manifest key <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> diff --git a/chrome/test/data/extensions/api_test/proxy/individual_remove/test.js b/chrome/test/data/extensions/api_test/proxy/individual_remove/test.js index e9c3a39..d673c0f 100644 --- a/chrome/test/data/extensions/api_test/proxy/individual_remove/test.js +++ b/chrome/test/data/extensions/api_test/proxy/individual_remove/test.js @@ -35,6 +35,8 @@ chrome.test.runTests([ chrome.experimental.proxy.settings.set( {'value': config, 'incognito': false}, chrome.test.callbackPass()); - chrome.experimental.proxy.removeCustomProxySettings(false); + chrome.experimental.proxy.settings.clear( + {'incognito': false}, + chrome.test.callbackPass()); } ]); |