Chromium Code Reviews| Index: blimp/client/app/android/web_input_box.cc |
| diff --git a/blimp/client/app/android/web_input_box.cc b/blimp/client/app/android/web_input_box.cc |
| index ffdf9cdd18af1f640c9f8bfedf98ce64057bde63..cdd618a0ac55ace02dcfad16d7771497c7dc4b0f 100644 |
| --- a/blimp/client/app/android/web_input_box.cc |
| +++ b/blimp/client/app/android/web_input_box.cc |
| @@ -5,6 +5,7 @@ |
| #include "base/android/jni_string.h" |
| #include "blimp/client/app/android/blimp_client_session_android.h" |
| #include "blimp/client/app/android/web_input_box.h" |
| +#include "blimp/client/feature/web_input_feature.h" |
| #include "jni/WebInputBox_jni.h" |
| namespace blimp { |
| @@ -13,7 +14,11 @@ namespace client { |
| static jlong Init(JNIEnv* env, |
| const JavaParamRef<jobject>& jobj, |
| const JavaParamRef<jobject>& blimp_client_session) { |
| - return reinterpret_cast<intptr_t>(new WebInputBox(env, jobj)); |
| + BlimpClientSession* client_session = |
| + BlimpClientSessionAndroid::FromJavaObject(env, |
| + blimp_client_session.obj()); |
| + return reinterpret_cast<intptr_t>( |
| + new WebInputBox(env, jobj, client_session->GetWebInputFeature())); |
| } |
| // static |
| @@ -22,8 +27,11 @@ bool WebInputBox::RegisterJni(JNIEnv* env) { |
| } |
| WebInputBox::WebInputBox(JNIEnv* env, |
| - const base::android::JavaParamRef<jobject>& jobj) { |
| + const base::android::JavaParamRef<jobject>& jobj, |
| + WebInputFeature* web_input_feature) { |
| java_obj_.Reset(env, jobj); |
| + web_input_feature_ = web_input_feature; |
| + web_input_feature_->SetDelegate(this); |
| } |
| WebInputBox::~WebInputBox() {} |
|
David Trainor- moved to gerrit
2016/03/14 17:59:41
Clear the delegate
shaktisahu
2016/03/15 23:44:13
Done.
|
| @@ -32,15 +40,20 @@ void WebInputBox::Destroy(JNIEnv* env, const JavaParamRef<jobject>& jobj) { |
| delete this; |
| } |
| -void WebInputBox::OnImeRequested(bool show) { |
| +void WebInputBox::OnImeRequested(bool show, |
| + int input_type, |
| + const std::string& text) { |
| JNIEnv* env = base::android::AttachCurrentThread(); |
| - Java_WebInputBox_onImeRequested(env, java_obj_.obj(), show); |
| + Java_WebInputBox_onImeRequested( |
| + env, java_obj_.obj(), show, input_type, |
| + base::android::ConvertUTF8ToJavaString(env, text).obj()); |
| } |
| void WebInputBox::OnImeTextEntered(JNIEnv* env, |
| const JavaParamRef<jobject>& jobj, |
| const JavaParamRef<jstring>& text) { |
| - // TODO(shaktisahu): Send text to browser. |
| + std::string str = base::android::ConvertJavaStringToUTF8(env, text); |
|
David Trainor- moved to gerrit
2016/03/14 17:59:41
"str" feels a little too 'code lab' to me. Could
shaktisahu
2016/03/15 23:44:13
Done.
|
| + web_input_feature_->SendImeTextToEngine(str); |
| } |
| } // namespace client |