Index: chrome/browser/extensions/api/input_ime/input_ime_api_chromeos.cc |
diff --git a/chrome/browser/extensions/api/input_ime/input_ime_api_chromeos.cc b/chrome/browser/extensions/api/input_ime/input_ime_api_chromeos.cc |
index dcba0719ce672b67eb813c873be18dc957b3b798..b0b509adb7e2ba7a5f36a27d5a4337ddb5d6713a 100644 |
--- a/chrome/browser/extensions/api/input_ime/input_ime_api_chromeos.cc |
+++ b/chrome/browser/extensions/api/input_ime/input_ime_api_chromeos.cc |
@@ -372,10 +372,11 @@ ExtensionFunction::ResponseAction InputImeClearCompositionFunction::Run() { |
std::string error; |
bool success = engine->ClearComposition(params.context_id, &error); |
- if (!success) |
- SetError(error); |
- return RespondNow( |
- OneArgument(base::MakeUnique<base::FundamentalValue>(success))); |
+ std::unique_ptr<base::ListValue> results = |
+ base::MakeUnique<base::ListValue>(); |
+ results->Append(base::MakeUnique<base::FundamentalValue>(success)); |
+ return RespondNow(success ? ArgumentList(std::move(results)) |
+ : ErrorWithArguments(std::move(results), error)); |
} |
bool InputImeHideInputViewFunction::RunAsync() { |
@@ -411,9 +412,10 @@ InputImeSetCandidateWindowPropertiesFunction::Run() { |
std::string error; |
if (properties.visible && |
!engine->SetCandidateWindowVisible(*properties.visible, &error)) { |
- SetError(error); |
- return RespondNow( |
- OneArgument(base::MakeUnique<base::FundamentalValue>(false))); |
+ std::unique_ptr<base::ListValue> results = |
+ base::MakeUnique<base::ListValue>(); |
+ results->Append(base::MakeUnique<base::FundamentalValue>(false)); |
+ return RespondNow(ErrorWithArguments(std::move(results), error)); |
} |
InputMethodEngine::CandidateWindowProperty properties_out = |
@@ -493,10 +495,11 @@ ExtensionFunction::ResponseAction InputImeSetCandidatesFunction::Run() { |
std::string error; |
bool success = |
engine->SetCandidates(params.context_id, candidates_out, &error); |
- if (!success) |
- SetError(error); |
- return RespondNow( |
- OneArgument(base::MakeUnique<base::FundamentalValue>(success))); |
+ std::unique_ptr<base::ListValue> results = |
+ base::MakeUnique<base::ListValue>(); |
+ results->Append(base::MakeUnique<base::FundamentalValue>(success)); |
+ return RespondNow(success ? ArgumentList(std::move(results)) |
+ : ErrorWithArguments(std::move(results), error)); |
} |
ExtensionFunction::ResponseAction InputImeSetCursorPositionFunction::Run() { |
@@ -515,10 +518,11 @@ ExtensionFunction::ResponseAction InputImeSetCursorPositionFunction::Run() { |
std::string error; |
bool success = |
engine->SetCursorPosition(params.context_id, params.candidate_id, &error); |
- if (!success) |
- SetError(error); |
- return RespondNow( |
- OneArgument(base::MakeUnique<base::FundamentalValue>(success))); |
+ std::unique_ptr<base::ListValue> results = |
+ base::MakeUnique<base::ListValue>(); |
+ results->Append(base::MakeUnique<base::FundamentalValue>(success)); |
+ return RespondNow(success ? ArgumentList(std::move(results)) |
+ : ErrorWithArguments(std::move(results), error)); |
} |
ExtensionFunction::ResponseAction InputImeSetMenuItemsFunction::Run() { |
@@ -588,8 +592,7 @@ ExtensionFunction::ResponseAction InputImeDeleteSurroundingTextFunction::Run() { |
std::string error; |
engine->DeleteSurroundingText(params.context_id, params.offset, params.length, |
&error); |
- SetError(error); |
- return RespondNow(NoArguments()); |
+ return RespondNow(error.empty() ? NoArguments() : Error(error)); |
} |
ExtensionFunction::ResponseAction |