Chromium Code Reviews| Index: chrome/common/extensions/api/input_ime/input_components_handler.cc |
| diff --git a/chrome/common/extensions/api/input_ime/input_components_handler.cc b/chrome/common/extensions/api/input_ime/input_components_handler.cc |
| index 67a1c95d9374a1ea12016d6fabf22f14814d0cf0..6e25f368b638c6e16bc223082afcb5e0c5378574 100644 |
| --- a/chrome/common/extensions/api/input_ime/input_components_handler.cc |
| +++ b/chrome/common/extensions/api/input_ime/input_components_handler.cc |
| @@ -64,6 +64,7 @@ bool InputComponentsHandler::Parse(Extension* extension, |
| std::set<std::string> layouts; |
| std::string shortcut_keycode_str; |
| GURL input_view_url; |
| + GURL options_page_url; |
| bool shortcut_alt = false; |
| bool shortcut_ctrl = false; |
| bool shortcut_shift = false; |
| @@ -194,6 +195,18 @@ bool InputComponentsHandler::Parse(Extension* extension, |
| } |
| } |
| + // Get input_components[i].options_page_url. |
| + // Note: 'options_page_url' is optional in manifest. |
|
not at google - send to devlin
2014/01/14 17:28:06
it's just "options_page"?
Shu Chen
2014/01/15 05:24:54
Done.
|
| + std::string options_page_str; |
| + if (module_value->GetString(keys::kImeOptionsPage, &options_page_str)) { |
| + options_page_url = extension->GetResourceURL(options_page_str); |
| + if (!options_page_url.is_valid()) { |
| + // Fall back to extension's options page. |
| + // This is for backward compatibility. |
| + options_page_url = extensions::ManifestURL::GetOptionsPage(extension); |
| + } |
| + } |
|
kevers
2014/01/14 19:33:08
Missing else block? options_page_url does not app
Shu Chen
2014/01/15 05:24:54
Done.
|
| + |
| info->input_components.push_back(InputComponentInfo()); |
| info->input_components.back().name = name_str; |
| info->input_components.back().type = type; |
| @@ -206,8 +219,7 @@ bool InputComponentsHandler::Parse(Extension* extension, |
| info->input_components.back().shortcut_alt = shortcut_alt; |
| info->input_components.back().shortcut_ctrl = shortcut_ctrl; |
| info->input_components.back().shortcut_shift = shortcut_shift; |
| - info->input_components.back().options_page_url = |
| - extensions::ManifestURL::GetOptionsPage(extension); |
| + info->input_components.back().options_page_url = options_page_url; |
| info->input_components.back().input_view_url = input_view_url; |
| } |
| extension->SetManifestData(keys::kInputComponents, info.release()); |