diff options
author | zork@chromium.org <zork@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-27 07:16:24 +0000 |
---|---|---|
committer | zork@chromium.org <zork@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-27 07:16:24 +0000 |
commit | e74ffe2a2968d8d86ddcdb940e70416f16faec9c (patch) | |
tree | 9da468de4fa71bba260170e7123bdfa68cbe94c9 /chrome/common/extensions | |
parent | f5ec7242455afc1747ef0d328990d567d8b2b2fe (diff) | |
download | chromium_src-e74ffe2a2968d8d86ddcdb940e70416f16faec9c.zip chromium_src-e74ffe2a2968d8d86ddcdb940e70416f16faec9c.tar.gz chromium_src-e74ffe2a2968d8d86ddcdb940e70416f16faec9c.tar.bz2 |
Take the IME Extension API out of experimental:
- s/experimental.input.ime/input.ime/g (file contents and names).
- s/EXPERIMENTAL_INPUT_IME/INPUT_IME/g (ditto).
- re-sort anything out of order as a result.
- regenerate docs.
BUG=chromium-os:23646
TEST=browser_tests --gtest_filter=ExtensionApiTest.InputImeApiBasic
Review URL: http://codereview.chromium.org/9169081
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119396 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions')
-rw-r--r-- | chrome/common/extensions/api/extension_api.cc | 2 | ||||
-rw-r--r-- | chrome/common/extensions/api/input.ime.json (renamed from chrome/common/extensions/api/experimental.input.ime.json) | 3 | ||||
-rw-r--r-- | chrome/common/extensions/docs/api_index.html | 2 | ||||
-rw-r--r-- | chrome/common/extensions/docs/js/api_page_generator.js | 2 | ||||
-rw-r--r-- | chrome/common/extensions/docs/samples.html | 2 | ||||
-rw-r--r-- | chrome/common/extensions/docs/samples.json | 17 | ||||
-rw-r--r-- | chrome/common/extensions/extension.cc | 9 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set.cc | 2 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set.h | 2 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set_unittest.cc | 2 |
10 files changed, 33 insertions, 10 deletions
diff --git a/chrome/common/extensions/api/extension_api.cc b/chrome/common/extensions/api/extension_api.cc index 1459e3a..a012c49 100644 --- a/chrome/common/extensions/api/extension_api.cc +++ b/chrome/common/extensions/api/extension_api.cc @@ -91,7 +91,6 @@ ExtensionAPI::ExtensionAPI() { IDR_EXTENSION_API_JSON_EXPERIMENTAL_DNS, IDR_EXTENSION_API_JSON_EXPERIMENTAL_DOWNLOADS, IDR_EXTENSION_API_JSON_EXPERIMENTAL_INFOBARS, - IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_IME, IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_UI, IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_VIRTUALKEYBOARD, IDR_EXTENSION_API_JSON_EXPERIMENTAL_PROCESSES, @@ -106,6 +105,7 @@ ExtensionAPI::ExtensionAPI() { IDR_EXTENSION_API_JSON_HISTORY, IDR_EXTENSION_API_JSON_I18N, IDR_EXTENSION_API_JSON_IDLE, + IDR_EXTENSION_API_JSON_INPUT_IME, IDR_EXTENSION_API_JSON_INPUTMETHODPRIVATE, IDR_EXTENSION_API_JSON_MANAGEMENT, IDR_EXTENSION_API_JSON_MEDIAPLAYERPRIVATE, diff --git a/chrome/common/extensions/api/experimental.input.ime.json b/chrome/common/extensions/api/input.ime.json index 9c4030e..8227c02 100644 --- a/chrome/common/extensions/api/experimental.input.ime.json +++ b/chrome/common/extensions/api/input.ime.json @@ -1,8 +1,7 @@ [ { - "namespace": "experimental.input.ime", + "namespace": "input.ime", "platforms": ["chromeos"], - "nodoc": true, "types": [ { "id": "KeyboardEvent", diff --git a/chrome/common/extensions/docs/api_index.html b/chrome/common/extensions/docs/api_index.html index 78dc513..f1b2f50 100644 --- a/chrome/common/extensions/docs/api_index.html +++ b/chrome/common/extensions/docs/api_index.html @@ -374,7 +374,7 @@ Here are the supported chrome.* APIs: </p> <ul> - <li><a href="bookmarks.html" js="">bookmarks</a></li><li><a href="browserAction.html" js="">browserAction</a></li><li><a href="contentSettings.html" js="">contentSettings</a></li><li><a href="contextMenus.html" js="">contextMenus</a></li><li><a href="cookies.html" js="">cookies</a></li><li><a href="debugger.html" js="">debugger</a></li><li><a href="extension.html" js="">extension</a></li><li><a href="fileBrowserHandler.html" js="">fileBrowserHandler</a></li><li><a href="history.html" js="">history</a></li><li><a href="i18n.html" js="">i18n</a></li><li><a href="idle.html" js="">idle</a></li><li><a href="management.html" js="">management</a></li><li><a href="omnibox.html" js="">omnibox</a></li><li><a href="pageAction.html" js="">pageAction</a></li><li><a href="pageCapture.html" js="">pageCapture</a></li><li><a href="permissions.html" js="">permissions</a></li><li><a href="privacy.html" js="">privacy</a></li><li><a href="proxy.html" js="">proxy</a></li><li><a href="storage.html" js="">storage</a></li><li><a href="tabs.html" js="">tabs</a></li><li><a href="tts.html" js="">tts</a></li><li><a href="ttsEngine.html" js="">ttsEngine</a></li><li><a href="types.html" js="">types</a></li><li><a href="webNavigation.html" js="">webNavigation</a></li><li><a href="webRequest.html" js="">webRequest</a></li><li><a href="windows.html" js="">windows</a></li> + <li><a href="bookmarks.html" js="">bookmarks</a></li><li><a href="browserAction.html" js="">browserAction</a></li><li><a href="contentSettings.html" js="">contentSettings</a></li><li><a href="contextMenus.html" js="">contextMenus</a></li><li><a href="cookies.html" js="">cookies</a></li><li><a href="debugger.html" js="">debugger</a></li><li><a href="extension.html" js="">extension</a></li><li><a href="fileBrowserHandler.html" js="">fileBrowserHandler</a></li><li><a href="history.html" js="">history</a></li><li><a href="i18n.html" js="">i18n</a></li><li><a href="idle.html" js="">idle</a></li><li><a href="input.ime.html" js="">input.ime</a></li><li><a href="management.html" js="">management</a></li><li><a href="omnibox.html" js="">omnibox</a></li><li><a href="pageAction.html" js="">pageAction</a></li><li><a href="pageCapture.html" js="">pageCapture</a></li><li><a href="permissions.html" js="">permissions</a></li><li><a href="privacy.html" js="">privacy</a></li><li><a href="proxy.html" js="">proxy</a></li><li><a href="storage.html" js="">storage</a></li><li><a href="tabs.html" js="">tabs</a></li><li><a href="tts.html" js="">tts</a></li><li><a href="ttsEngine.html" js="">ttsEngine</a></li><li><a href="types.html" js="">types</a></li><li><a href="webNavigation.html" js="">webNavigation</a></li><li><a href="webRequest.html" js="">webRequest</a></li><li><a href="windows.html" js="">windows</a></li> </ul> <h2 id="experimental">Experimental APIs</h2> diff --git a/chrome/common/extensions/docs/js/api_page_generator.js b/chrome/common/extensions/docs/js/api_page_generator.js index 568ec62..b838b22 100644 --- a/chrome/common/extensions/docs/js/api_page_generator.js +++ b/chrome/common/extensions/docs/js/api_page_generator.js @@ -37,7 +37,6 @@ var MODULE_SCHEMAS = [ '../api/experimental.dns.json', '../api/experimental.downloads.json', '../api/experimental.infobars.json', - '../api/experimental.input.ime.json', '../api/experimental.input.ui.json', '../api/experimental.input.virtualKeyboard.json', '../api/experimental.processes.json', @@ -52,6 +51,7 @@ var MODULE_SCHEMAS = [ '../api/history.json', '../api/i18n.json', '../api/idle.json', + '../api/input.ime.json', '../api/inputMethodPrivate.json', '../api/management.json', '../api/mediaPlayerPrivate.json', diff --git a/chrome/common/extensions/docs/samples.html b/chrome/common/extensions/docs/samples.html index 350296d..432a613 100644 --- a/chrome/common/extensions/docs/samples.html +++ b/chrome/common/extensions/docs/samples.html @@ -454,6 +454,8 @@ </span><span> <a href="javascript:void(0);" onclick="setFilter('chrome.idle', this)">chrome.idle</a><span>, </span> </span><span> + <a href="javascript:void(0);" onclick="setFilter('chrome.input.ime', this)">chrome.input.ime</a><span>, </span> + </span><span> <a href="javascript:void(0);" onclick="setFilter('chrome.management', this)">chrome.management</a><span>, </span> </span><span> <a href="javascript:void(0);" onclick="setFilter('chrome.omnibox', this)">chrome.omnibox</a><span>, </span> diff --git a/chrome/common/extensions/docs/samples.json b/chrome/common/extensions/docs/samples.json index 9af2653..72b1eee 100644 --- a/chrome/common/extensions/docs/samples.json +++ b/chrome/common/extensions/docs/samples.json @@ -106,6 +106,23 @@ "chrome.i18n.getMessage": "i18n.html#method-getMessage", "chrome.idle.onStateChanged": "idle.html#event-onStateChanged", "chrome.idle.queryState": "idle.html#method-queryState", + "chrome.input.ime.clearComposition": "input.ime.html#method-clearComposition", + "chrome.input.ime.commitText": "input.ime.html#method-commitText", + "chrome.input.ime.eventHandled": "input.ime.html#method-eventHandled", + "chrome.input.ime.onActivate": "input.ime.html#event-onActivate", + "chrome.input.ime.onBlur": "input.ime.html#event-onBlur", + "chrome.input.ime.onCandidateClicked": "input.ime.html#event-onCandidateClicked", + "chrome.input.ime.onDeactivated": "input.ime.html#event-onDeactivated", + "chrome.input.ime.onFocus": "input.ime.html#event-onFocus", + "chrome.input.ime.onInputContextUpdate": "input.ime.html#event-onInputContextUpdate", + "chrome.input.ime.onKeyEvent": "input.ime.html#event-onKeyEvent", + "chrome.input.ime.onMenuItemActivated": "input.ime.html#event-onMenuItemActivated", + "chrome.input.ime.setCandidateWindowProperties": "input.ime.html#method-setCandidateWindowProperties", + "chrome.input.ime.setCandidates": "input.ime.html#method-setCandidates", + "chrome.input.ime.setComposition": "input.ime.html#method-setComposition", + "chrome.input.ime.setCursorPosition": "input.ime.html#method-setCursorPosition", + "chrome.input.ime.setMenuItems": "input.ime.html#method-setMenuItems", + "chrome.input.ime.updateMenuItems": "input.ime.html#method-updateMenuItems", "chrome.management.get": "management.html#method-get", "chrome.management.getAll": "management.html#method-getAll", "chrome.management.getPermissionWarningsById": "management.html#method-getPermissionWarningsById", diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc index 8dae526..92d0c5e 100644 --- a/chrome/common/extensions/extension.cc +++ b/chrome/common/extensions/extension.cc @@ -2106,8 +2106,7 @@ bool Extension::InitFromValue(extensions::Manifest* manifest, int flags, } } - if (api_permissions.count(ExtensionAPIPermission::kExperimental) && - manifest->HasKey(keys::kInputComponents)) { + if (manifest->HasKey(keys::kInputComponents)) { ListValue* list_value = NULL; if (!manifest->GetList(keys::kInputComponents, &list_value)) { *error = ASCIIToUTF16(errors::kInvalidInputComponents); @@ -2145,6 +2144,12 @@ bool Extension::InitFromValue(extensions::Manifest* manifest, int flags, if (type_str == "ime") { type = INPUT_COMPONENT_TYPE_IME; } else if (type_str == "virtual_keyboard") { + if (api_permissions.count(ExtensionAPIPermission::kExperimental)) { + // Virtual Keyboards require the experimental flag. + *error = ExtensionErrorUtils::FormatErrorMessageUTF16( + errors::kInvalidInputComponentType, base::IntToString(i)); + return false; + } type = INPUT_COMPONENT_TYPE_VIRTUAL_KEYBOARD; } else { *error = ExtensionErrorUtils::FormatErrorMessageUTF16( diff --git a/chrome/common/extensions/extension_permission_set.cc b/chrome/common/extensions/extension_permission_set.cc index 7d68b9a..921eed6 100644 --- a/chrome/common/extensions/extension_permission_set.cc +++ b/chrome/common/extensions/extension_permission_set.cc @@ -242,7 +242,7 @@ void ExtensionAPIPermission::RegisterAllPermissions( kIdle, "idle", 0, ExtensionPermissionMessage::kNone, kFlagNone, kTypeDefault); info->RegisterPermission( - kIme, "ime", 0, ExtensionPermissionMessage::kNone, + kInput, "input", 0, ExtensionPermissionMessage::kNone, kFlagImpliesFullURLAccess, kTypeDefault); info->RegisterPermission( kInputMethodPrivate, "inputMethodPrivate", 0, diff --git a/chrome/common/extensions/extension_permission_set.h b/chrome/common/extensions/extension_permission_set.h index f287bb7..59b71a5 100644 --- a/chrome/common/extensions/extension_permission_set.h +++ b/chrome/common/extensions/extension_permission_set.h @@ -111,7 +111,7 @@ class ExtensionAPIPermission { kGeolocation, kHistory, kIdle, - kIme, + kInput, kInputMethodPrivate, kManagement, kMediaPlayerPrivate, diff --git a/chrome/common/extensions/extension_permission_set_unittest.cc b/chrome/common/extensions/extension_permission_set_unittest.cc index 3b20fe5..4c6b028 100644 --- a/chrome/common/extensions/extension_permission_set_unittest.cc +++ b/chrome/common/extensions/extension_permission_set_unittest.cc @@ -654,7 +654,7 @@ TEST(ExtensionPermissionSetTest, PermissionMessages) { // The ime, proxy, and webRequest permissions are warned as part of host // permission checks. - skip.insert(ExtensionAPIPermission::kIme); + skip.insert(ExtensionAPIPermission::kInput); skip.insert(ExtensionAPIPermission::kProxy); skip.insert(ExtensionAPIPermission::kWebRequest); skip.insert(ExtensionAPIPermission::kWebRequestBlocking); |