diff options
author | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-23 06:52:41 +0000 |
---|---|---|
committer | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-23 06:52:41 +0000 |
commit | 2e3b520ff4318342b027ea8aa303e5981ea9ce79 (patch) | |
tree | f2eba7cf4a7d6179033d9cc0f4bba5981984ec55 /chrome/browser/extensions/extension_function.h | |
parent | d11a34ba95bc98cf2c4b6caa2ce6ed469ae229ce (diff) | |
download | chromium_src-2e3b520ff4318342b027ea8aa303e5981ea9ce79.zip chromium_src-2e3b520ff4318342b027ea8aa303e5981ea9ce79.tar.gz chromium_src-2e3b520ff4318342b027ea8aa303e5981ea9ce79.tar.bz2 |
Initial version of an experimental Extensions Context Menu API.
The proposal for the API is documented at:
http://dev.chromium.org/developers/design-documents/extensions/context-menu-api
Notable limitations in this initial implementation:
-No reliable way to get at the unique, actual node clicked on in contexts like
IMAGE/LINK/etc. We'll need to fix this in the long run - see the API proposal
page for some notes on this.
-No update or deleteAll methods ; the only way you can change items is to delete
by id and re-add.
-We aren't yet matching the UI goal of having the extension items at the
top level include the extension icon on the left. This will require a
refactoring of RenderViewContextMenu to steal some of the code from the
bookmarks bar context menus, which can display favicons.
-The only kind of parent->child menu that currently works is if you have
a single top-level parent, and only one level of children. (This is because
of how RenderViewContextMenu currently works)
-No browser tests that the menu items actually get drawn (will wait on those
until the above mentioned refactor is complete), or API tests (the API may
change a bit based on feedback, at which point I'll write more tests).
-Unit tests need to cover some more cases.
BUG=32363
TEST=Should be able to create context menus with this API.
Review URL: http://codereview.chromium.org/1042003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42321 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_function.h')
-rw-r--r-- | chrome/browser/extensions/extension_function.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extension_function.h b/chrome/browser/extensions/extension_function.h index 06f69ab..75e2553a 100644 --- a/chrome/browser/extensions/extension_function.h +++ b/chrome/browser/extensions/extension_function.h @@ -24,6 +24,12 @@ class QuotaLimitHeuristic; } \ } while (0) +#define EXTENSION_FUNCTION_ERROR(error) do { \ + error_ = error; \ + bad_message_ = true; \ + return false; \ + } while (0) + #define DECLARE_EXTENSION_FUNCTION_NAME(name) \ public: static const char* function_name() { return name; } |