| Index: extensions/browser/api/virtual_keyboard_private/virtual_keyboard_private_api.cc
|
| diff --git a/extensions/browser/api/virtual_keyboard_private/virtual_keyboard_private_api.cc b/extensions/browser/api/virtual_keyboard_private/virtual_keyboard_private_api.cc
|
| index ce80c95037261e4b83018b5dce4a97d80dabd4bc..9b14cd650feb738ef1e4d7f25f50142a9a40ed4b 100644
|
| --- a/extensions/browser/api/virtual_keyboard_private/virtual_keyboard_private_api.cc
|
| +++ b/extensions/browser/api/virtual_keyboard_private/virtual_keyboard_private_api.cc
|
| @@ -7,6 +7,7 @@
|
| #include <memory>
|
| #include <utility>
|
|
|
| +#include "base/bind.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/strings/string16.h"
|
| #include "extensions/browser/api/extensions_api_client.h"
|
| @@ -103,10 +104,15 @@ VirtualKeyboardPrivateKeyboardLoadedFunction::Run() {
|
|
|
| ExtensionFunction::ResponseAction
|
| VirtualKeyboardPrivateGetKeyboardConfigFunction::Run() {
|
| - std::unique_ptr<base::DictionaryValue> results(new base::DictionaryValue());
|
| - if (!delegate()->GetKeyboardConfig(results.get()))
|
| - return RespondNow(Error(kUnknownError));
|
| - return RespondNow(OneArgument(std::move(results)));
|
| + delegate()->GetKeyboardConfig(base::Bind(
|
| + &VirtualKeyboardPrivateGetKeyboardConfigFunction::OnKeyboardConfig,
|
| + this));
|
| + return RespondLater();
|
| +}
|
| +
|
| +void VirtualKeyboardPrivateGetKeyboardConfigFunction::OnKeyboardConfig(
|
| + std::unique_ptr<base::DictionaryValue> results) {
|
| + Respond(results ? OneArgument(std::move(results)) : Error(kUnknownError));
|
| }
|
|
|
| ExtensionFunction::ResponseAction
|
|
|