Commit 10343101 authored by yoz@chromium.org's avatar yoz@chromium.org

Add browserAction.enable/disable as alias for pageAction.show/hide.

Depends on http://codereview.chromium.org/10700007/

BUG=133094
TEST=Use browserAction.disable/enable(tabid), observe that the browser action becomes grayed out.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148043 0039d316-1c4b-4281-b951-d872f2087c98
parent d11e0730
...@@ -91,6 +91,10 @@ bool ExtensionActionFunction::RunImpl() { ...@@ -91,6 +91,10 @@ bool ExtensionActionFunction::RunImpl() {
break; break;
} }
case Value::TYPE_NULL:
// The tabId might be an optional argument.
break;
default: default:
EXTENSION_FUNCTION_VALIDATE(false); EXTENSION_FUNCTION_VALIDATE(false);
} }
......
...@@ -89,4 +89,20 @@ class BrowserActionGetBadgeBackgroundColorFunction ...@@ -89,4 +89,20 @@ class BrowserActionGetBadgeBackgroundColorFunction
virtual ~BrowserActionGetBadgeBackgroundColorFunction() {} virtual ~BrowserActionGetBadgeBackgroundColorFunction() {}
}; };
class BrowserActionEnableFunction : public ExtensionActionShowFunction {
public:
DECLARE_EXTENSION_FUNCTION_NAME("browserAction.enable")
protected:
virtual ~BrowserActionEnableFunction() {}
};
class BrowserActionDisableFunction : public ExtensionActionHideFunction {
public:
DECLARE_EXTENSION_FUNCTION_NAME("browserAction.disable")
protected:
virtual ~BrowserActionDisableFunction() {}
};
#endif // CHROME_BROWSER_EXTENSIONS_API_EXTENSION_ACTION_EXTENSION_BROWSER_ACTIONS_API_H_ #endif // CHROME_BROWSER_EXTENSIONS_API_EXTENSION_ACTION_EXTENSION_BROWSER_ACTIONS_API_H_
...@@ -132,6 +132,8 @@ void ExtensionFunctionRegistry::ResetFunctions() { ...@@ -132,6 +132,8 @@ void ExtensionFunctionRegistry::ResetFunctions() {
RegisterFunction<BrowserActionGetBadgeTextFunction>(); RegisterFunction<BrowserActionGetBadgeTextFunction>();
RegisterFunction<BrowserActionGetBadgeBackgroundColorFunction>(); RegisterFunction<BrowserActionGetBadgeBackgroundColorFunction>();
RegisterFunction<BrowserActionGetPopupFunction>(); RegisterFunction<BrowserActionGetPopupFunction>();
RegisterFunction<BrowserActionEnableFunction>();
RegisterFunction<BrowserActionDisableFunction>();
// Script Badges. // Script Badges.
RegisterFunction<ScriptBadgeGetAttentionFunction>(); RegisterFunction<ScriptBadgeGetAttentionFunction>();
......
...@@ -259,6 +259,34 @@ ...@@ -259,6 +259,34 @@
] ]
} }
] ]
},
{
"name": "enable",
"type": "function",
"description": "Enables the browser action for a tab. By default, browser actions are enabled.",
"parameters": [
{
"type": "integer",
"optional": true,
"name": "tabId",
"minimum": 0,
"description": "The id of the tab for which you want to modify the browser action."
}
]
},
{
"name": "disable",
"type": "function",
"description": "Disables the browser action for a tab.",
"parameters": [
{
"type": "integer",
"optional": true,
"name": "tabId",
"minimum": 0,
"description": "The id of the tab for which you want to modify the browser action."
}
]
} }
], ],
"events": [ "events": [
......
...@@ -769,7 +769,7 @@ ...@@ -769,7 +769,7 @@
<var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>ReadCallback</span></var></span>)</div> <var><span>ReadCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Reads data from the given socket.</p> <p>Reads data from the given connected socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -896,7 +896,7 @@ ...@@ -896,7 +896,7 @@
<var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>RecvFromCallback</span></var></span>)</div> <var><span>RecvFromCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Reads data from the given socket.</p> <p>Receives data from the given UDP socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1025,7 +1025,7 @@ ...@@ -1025,7 +1025,7 @@
<var><span>port</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>port</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>SendToCallback</span></var></span>)</div> <var><span>SendToCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Writes data on the given socket.</p> <p>Sends data on the given UDP socket to the given address and port.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1474,7 +1474,7 @@ ...@@ -1474,7 +1474,7 @@
<var><span>data</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>data</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>WriteCallback</span></var></span>)</div> <var><span>WriteCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Writes data on the given socket.</p> <p>Writes data on the given connected socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1885,9 +1885,7 @@ ...@@ -1885,9 +1885,7 @@
</div> </div>
</em> </em>
</dt> </dt>
<dd class="todo"> <dd>The address of the remote machine.</dd>
Undocumented.
</dd>
<!-- OBJECT PROPERTIES --> <!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS --> <!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS --> <!-- OBJECT EVENT FIELDS -->
...@@ -1960,7 +1958,7 @@ ...@@ -1960,7 +1958,7 @@
</div> </div>
</em> </em>
</dt> </dt>
<dd>The resultCode returned from the underlying read() call.</dd> <dd>The resultCode returned from the underlying recvfrom() call.</dd>
<!-- OBJECT PROPERTIES --> <!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS --> <!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS --> <!-- OBJECT EVENT FIELDS -->
......
...@@ -225,6 +225,10 @@ ...@@ -225,6 +225,10 @@
<a href="#global-methods">Methods</a> <a href="#global-methods">Methods</a>
<ol> <ol>
<li> <li>
<a href="#method-disable">disable</a>
</li><li>
<a href="#method-enable">enable</a>
</li><li>
<a href="#method-getBadgeBackgroundColor">getBadgeBackgroundColor</a> <a href="#method-getBadgeBackgroundColor">getBadgeBackgroundColor</a>
</li><li> </li><li>
<a href="#method-getBadgeText">getBadgeText</a> <a href="#method-getBadgeText">getBadgeText</a>
...@@ -426,6 +430,94 @@ For other examples and for help in viewing the source code, see ...@@ -426,6 +430,94 @@ For other examples and for help in viewing the source code, see
<h3>Methods</h3> <h3>Methods</h3>
<!-- iterates over all functions --> <!-- iterates over all functions -->
<div class="apiItem"> <div class="apiItem">
<a name="method-disable"></a> <!-- method-anchor -->
<h4>disable</h4>
<div class="summary">
<!-- Note: intentionally longer 80 columns -->
<span>chrome.browserAction.disable</span>(<span class="optional"><span>integer</span>
<var><span>tabId</span></var></span>)</div>
<div class="description">
<p>Disables the browser action for a tab.</p>
<!-- PARAMETERS -->
<h4>Parameters</h4>
<dl>
<div>
<div>
<dt>
<var>tabId</var>
<em>
<!-- TYPE -->
<div style="display:inline">
(
<span class="optional">optional</span>
<span id="typeTemplate">
<span>
<span>integer</span>
</span>
</span>
)
</div>
</em>
</dt>
<dd>The id of the tab for which you want to modify the browser action.</dd>
<!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS -->
<!-- FUNCTION PARAMETERS -->
</div>
</div>
</dl>
<!-- RETURNS -->
<dl>
</dl>
<!-- CALLBACK -->
<!-- MIN_VERSION -->
</div> <!-- /description -->
</div><div class="apiItem">
<a name="method-enable"></a> <!-- method-anchor -->
<h4>enable</h4>
<div class="summary">
<!-- Note: intentionally longer 80 columns -->
<span>chrome.browserAction.enable</span>(<span class="optional"><span>integer</span>
<var><span>tabId</span></var></span>)</div>
<div class="description">
<p>Enables the browser action for a tab. By default, browser actions are enabled.</p>
<!-- PARAMETERS -->
<h4>Parameters</h4>
<dl>
<div>
<div>
<dt>
<var>tabId</var>
<em>
<!-- TYPE -->
<div style="display:inline">
(
<span class="optional">optional</span>
<span id="typeTemplate">
<span>
<span>integer</span>
</span>
</span>
)
</div>
</em>
</dt>
<dd>The id of the tab for which you want to modify the browser action.</dd>
<!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS -->
<!-- FUNCTION PARAMETERS -->
</div>
</div>
</dl>
<!-- RETURNS -->
<dl>
</dl>
<!-- CALLBACK -->
<!-- MIN_VERSION -->
</div> <!-- /description -->
</div><div class="apiItem">
<a name="method-getBadgeBackgroundColor"></a> <!-- method-anchor --> <a name="method-getBadgeBackgroundColor"></a> <!-- method-anchor -->
<h4>getBadgeBackgroundColor</h4> <h4>getBadgeBackgroundColor</h4>
<div class="summary"> <div class="summary">
......
...@@ -488,7 +488,7 @@ You can find samples of this API in ...@@ -488,7 +488,7 @@ You can find samples of this API in
<span>chrome.debugger.sendCommand</span>(<span class="null"><span>debugger.Debuggee</span> <span>chrome.debugger.sendCommand</span>(<span class="null"><span>debugger.Debuggee</span>
<var><span>target</span></var></span><span class="null"><span>, </span><span>string</span> <var><span>target</span></var></span><span class="null"><span>, </span><span>string</span>
<var><span>method</span></var></span><span class="optional"><span>, </span><span>object</span> <var><span>method</span></var></span><span class="optional"><span>, </span><span>object</span>
<var><span>params</span></var></span><span class="optional"><span>, </span><span>function</span> <var><span>commandParams</span></var></span><span class="optional"><span>, </span><span>function</span>
<var><span>callback</span></var></span>)</div> <var><span>callback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Sends given command to the debugging target.</p> <p>Sends given command to the debugging target.</p>
...@@ -544,7 +544,7 @@ You can find samples of this API in ...@@ -544,7 +544,7 @@ You can find samples of this API in
</div><div> </div><div>
<div> <div>
<dt> <dt>
<var>params</var> <var>commandParams</var>
<em> <em>
<!-- TYPE --> <!-- TYPE -->
<div style="display:inline"> <div style="display:inline">
......
...@@ -915,7 +915,7 @@ ...@@ -915,7 +915,7 @@
<var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>ReadCallback</span></var></span>)</div> <var><span>ReadCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Reads data from the given socket.</p> <p>Reads data from the given connected socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1081,7 +1081,7 @@ ...@@ -1081,7 +1081,7 @@
<var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>bufferSize</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>RecvFromCallback</span></var></span>)</div> <var><span>RecvFromCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Reads data from the given socket.</p> <p>Receives data from the given UDP socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1249,7 +1249,7 @@ ...@@ -1249,7 +1249,7 @@
<var><span>port</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>port</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>SendToCallback</span></var></span>)</div> <var><span>SendToCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Writes data on the given socket.</p> <p>Sends data on the given UDP socket to the given address and port.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -1815,7 +1815,7 @@ ...@@ -1815,7 +1815,7 @@
<var><span>data</span></var></span><span class="null"><span>, </span><span>function</span> <var><span>data</span></var></span><span class="null"><span>, </span><span>function</span>
<var><span>WriteCallback</span></var></span>)</div> <var><span>WriteCallback</span></var></span>)</div>
<div class="description"> <div class="description">
<p>Writes data on the given socket.</p> <p>Writes data on the given connected socket.</p>
<!-- PARAMETERS --> <!-- PARAMETERS -->
<h4>Parameters</h4> <h4>Parameters</h4>
<dl> <dl>
...@@ -2265,9 +2265,7 @@ ...@@ -2265,9 +2265,7 @@
</div> </div>
</em> </em>
</dt> </dt>
<dd class="todo"> <dd>The address of the remote machine.</dd>
Undocumented.
</dd>
<!-- OBJECT PROPERTIES --> <!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS --> <!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS --> <!-- OBJECT EVENT FIELDS -->
...@@ -2340,7 +2338,7 @@ ...@@ -2340,7 +2338,7 @@
</div> </div>
</em> </em>
</dt> </dt>
<dd>The resultCode returned from the underlying read() call.</dd> <dd>The resultCode returned from the underlying recvfrom() call.</dd>
<!-- OBJECT PROPERTIES --> <!-- OBJECT PROPERTIES -->
<!-- OBJECT METHODS --> <!-- OBJECT METHODS -->
<!-- OBJECT EVENT FIELDS --> <!-- OBJECT EVENT FIELDS -->
......
...@@ -31,6 +31,8 @@ ...@@ -31,6 +31,8 @@
"chrome.bookmarks.removeTree": "bookmarks.html#method-removeTree", "chrome.bookmarks.removeTree": "bookmarks.html#method-removeTree",
"chrome.bookmarks.search": "bookmarks.html#method-search", "chrome.bookmarks.search": "bookmarks.html#method-search",
"chrome.bookmarks.update": "bookmarks.html#method-update", "chrome.bookmarks.update": "bookmarks.html#method-update",
"chrome.browserAction.disable": "browserAction.html#method-disable",
"chrome.browserAction.enable": "browserAction.html#method-enable",
"chrome.browserAction.getBadgeBackgroundColor": "browserAction.html#method-getBadgeBackgroundColor", "chrome.browserAction.getBadgeBackgroundColor": "browserAction.html#method-getBadgeBackgroundColor",
"chrome.browserAction.getBadgeText": "browserAction.html#method-getBadgeText", "chrome.browserAction.getBadgeText": "browserAction.html#method-getBadgeText",
"chrome.browserAction.getPopup": "browserAction.html#method-getPopup", "chrome.browserAction.getPopup": "browserAction.html#method-getPopup",
......
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