summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_function.h
diff options
context:
space:
mode:
authorasargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-23 06:52:41 +0000
committerasargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-23 06:52:41 +0000
commit2e3b520ff4318342b027ea8aa303e5981ea9ce79 (patch)
treef2eba7cf4a7d6179033d9cc0f4bba5981984ec55 /chrome/browser/extensions/extension_function.h
parentd11a34ba95bc98cf2c4b6caa2ce6ed469ae229ce (diff)
downloadchromium_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.h6
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; }