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

Unified Diff: chrome/browser/extensions/api/context_menus/context_menus_api_helpers.cc

Issue 1055673002: [Extensions API] Remove inline enums (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Latest master Created 5 years, 8 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/api/context_menus/context_menus_api_helpers.cc
diff --git a/chrome/browser/extensions/api/context_menus/context_menus_api_helpers.cc b/chrome/browser/extensions/api/context_menus/context_menus_api_helpers.cc
index 2b994855bc9b2a7fa071ff2463aca89214ac76d7..0a4b4ddc9ee3e01cd818adb4b098141488cc8da2 100644
--- a/chrome/browser/extensions/api/context_menus/context_menus_api_helpers.cc
+++ b/chrome/browser/extensions/api/context_menus/context_menus_api_helpers.cc
@@ -51,5 +51,73 @@ MenuItem* GetParent(MenuItem::Id parent_id,
return parent;
}
+MenuItem::ContextList GetContexts(const std::vector<
+ extensions::api::context_menus::ContextType>& in_contexts) {
+ MenuItem::ContextList contexts;
+ for (size_t i = 0; i < in_contexts.size(); ++i) {
+ switch (in_contexts[i]) {
+ case extensions::api::context_menus::CONTEXT_TYPE_ALL:
+ contexts.Add(extensions::MenuItem::ALL);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_PAGE:
+ contexts.Add(extensions::MenuItem::PAGE);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_SELECTION:
+ contexts.Add(extensions::MenuItem::SELECTION);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_LINK:
+ contexts.Add(extensions::MenuItem::LINK);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_EDITABLE:
+ contexts.Add(extensions::MenuItem::EDITABLE);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_IMAGE:
+ contexts.Add(extensions::MenuItem::IMAGE);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_VIDEO:
+ contexts.Add(extensions::MenuItem::VIDEO);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_AUDIO:
+ contexts.Add(extensions::MenuItem::AUDIO);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_FRAME:
+ contexts.Add(extensions::MenuItem::FRAME);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_LAUNCHER:
+ // Not available for <webview>.
+ contexts.Add(extensions::MenuItem::LAUNCHER);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_BROWSER_ACTION:
+ // Not available for <webview>.
+ contexts.Add(extensions::MenuItem::BROWSER_ACTION);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_PAGE_ACTION:
+ // Not available for <webview>.
+ contexts.Add(extensions::MenuItem::PAGE_ACTION);
+ break;
+ case extensions::api::context_menus::CONTEXT_TYPE_NONE:
+ NOTREACHED();
+ }
+ }
+ return contexts;
+}
+
+MenuItem::Type GetType(extensions::api::context_menus::ItemType type,
+ MenuItem::Type default_type) {
+ switch (type) {
+ case extensions::api::context_menus::ITEM_TYPE_NONE:
+ return default_type;
+ case extensions::api::context_menus::ITEM_TYPE_NORMAL:
+ return extensions::MenuItem::NORMAL;
+ case extensions::api::context_menus::ITEM_TYPE_CHECKBOX:
+ return extensions::MenuItem::CHECKBOX;
+ case extensions::api::context_menus::ITEM_TYPE_RADIO:
+ return extensions::MenuItem::RADIO;
+ case extensions::api::context_menus::ITEM_TYPE_SEPARATOR:
+ return extensions::MenuItem::SEPARATOR;
+ }
+ return extensions::MenuItem::NORMAL;
+}
+
} // namespace context_menus_api_helpers
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698