| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/browser/renderer_host/ime_adapter_android.h" | 5 #include "content/browser/renderer_host/ime_adapter_android.h" |
| 6 | 6 |
| 7 #include <android/input.h> | 7 #include <android/input.h> |
| 8 | 8 |
| 9 #include "base/android/jni_android.h" | 9 #include "base/android/jni_android.h" |
| 10 #include "base/android/jni_string.h" | 10 #include "base/android/jni_string.h" |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 | 56 |
| 57 Java_ImeAdapter_initializeWebInputEvents(env, | 57 Java_ImeAdapter_initializeWebInputEvents(env, |
| 58 WebKit::WebInputEvent::RawKeyDown, | 58 WebKit::WebInputEvent::RawKeyDown, |
| 59 WebKit::WebInputEvent::KeyUp, | 59 WebKit::WebInputEvent::KeyUp, |
| 60 WebKit::WebInputEvent::Char, | 60 WebKit::WebInputEvent::Char, |
| 61 WebKit::WebInputEvent::ShiftKey, | 61 WebKit::WebInputEvent::ShiftKey, |
| 62 WebKit::WebInputEvent::AltKey, | 62 WebKit::WebInputEvent::AltKey, |
| 63 WebKit::WebInputEvent::ControlKey, | 63 WebKit::WebInputEvent::ControlKey, |
| 64 WebKit::WebInputEvent::CapsLockOn, | 64 WebKit::WebInputEvent::CapsLockOn, |
| 65 WebKit::WebInputEvent::NumLockOn); | 65 WebKit::WebInputEvent::NumLockOn); |
| 66 // TODO(miguelg) note that WebKit is removing the date time related |
| 67 // input elements from the enum since they are no longer considered |
| 68 // to be textual input ields. As the entry point is now different we can |
| 69 // actually tell the IME adapter if it's a dialog type without having |
| 70 // to reply on the enum values for that. |
| 66 Java_ImeAdapter_initializeTextInputTypes( | 71 Java_ImeAdapter_initializeTextInputTypes( |
| 67 env, | 72 env, |
| 68 ui::TEXT_INPUT_TYPE_NONE, | 73 ui::TEXT_INPUT_TYPE_NONE, |
| 69 ui::TEXT_INPUT_TYPE_TEXT, | 74 ui::TEXT_INPUT_TYPE_TEXT, |
| 70 ui::TEXT_INPUT_TYPE_TEXT_AREA, | 75 ui::TEXT_INPUT_TYPE_TEXT_AREA, |
| 71 ui::TEXT_INPUT_TYPE_PASSWORD, | 76 ui::TEXT_INPUT_TYPE_PASSWORD, |
| 72 ui::TEXT_INPUT_TYPE_SEARCH, | 77 ui::TEXT_INPUT_TYPE_SEARCH, |
| 73 ui::TEXT_INPUT_TYPE_URL, | 78 ui::TEXT_INPUT_TYPE_URL, |
| 74 ui::TEXT_INPUT_TYPE_EMAIL, | 79 ui::TEXT_INPUT_TYPE_EMAIL, |
| 75 ui::TEXT_INPUT_TYPE_TELEPHONE, | 80 ui::TEXT_INPUT_TYPE_TELEPHONE, |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 } | 168 } |
| 164 | 169 |
| 165 void ImeAdapterAndroid::AttachImeAdapter(JNIEnv* env, jobject java_object) { | 170 void ImeAdapterAndroid::AttachImeAdapter(JNIEnv* env, jobject java_object) { |
| 166 java_ime_adapter_ = AttachCurrentThread()->NewGlobalRef(java_object); | 171 java_ime_adapter_ = AttachCurrentThread()->NewGlobalRef(java_object); |
| 167 } | 172 } |
| 168 | 173 |
| 169 void ImeAdapterAndroid::CancelComposition() { | 174 void ImeAdapterAndroid::CancelComposition() { |
| 170 Java_ImeAdapter_cancelComposition(AttachCurrentThread(), java_ime_adapter_); | 175 Java_ImeAdapter_cancelComposition(AttachCurrentThread(), java_ime_adapter_); |
| 171 } | 176 } |
| 172 | 177 |
| 173 void ImeAdapterAndroid::ReplaceText(JNIEnv* env, jobject, jstring text) { | 178 void ImeAdapterAndroid::ReplaceDateTime(JNIEnv* env, jobject, jstring text) { |
| 174 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( | 179 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( |
| 175 rwhva_->GetRenderWidgetHost()); | 180 rwhva_->GetRenderWidgetHost()); |
| 176 if (!rwhi) | 181 if (!rwhi) |
| 177 return; | 182 return; |
| 178 | 183 |
| 179 string16 text16 = ConvertJavaStringToUTF16(env, text); | 184 string16 text16 = ConvertJavaStringToUTF16(env, text); |
| 180 rwhi->Send(new ViewMsg_ReplaceAll(rwhi->GetRoutingID(), text16)); | 185 rwhi->Send(new ViewMsg_ReplaceDateTime(rwhi->GetRoutingID(), text16)); |
| 181 } | 186 } |
| 182 | 187 |
| 183 void ImeAdapterAndroid::ClearFocus(JNIEnv* env, jobject) { | 188 |
| 189 void ImeAdapterAndroid::CancelDialog(JNIEnv* env, jobject) { |
| 184 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( | 190 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( |
| 185 rwhva_->GetRenderWidgetHost()); | 191 rwhva_->GetRenderWidgetHost()); |
| 186 if (!rwhi) | 192 if (!rwhi) |
| 187 return; | 193 return; |
| 188 | 194 |
| 189 rwhi->Send(new ViewMsg_ClearFocusedNode(rwhi->GetRoutingID())); | 195 rwhi->Send(new ViewMsg_CancelDateTimeDialog(rwhi->GetRoutingID())); |
| 190 } | 196 } |
| 191 | 197 |
| 192 void ImeAdapterAndroid::SetEditableSelectionOffsets(JNIEnv*, jobject, | 198 void ImeAdapterAndroid::SetEditableSelectionOffsets(JNIEnv*, jobject, |
| 193 int start, int end) { | 199 int start, int end) { |
| 194 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( | 200 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( |
| 195 rwhva_->GetRenderWidgetHost()); | 201 rwhva_->GetRenderWidgetHost()); |
| 196 if (!rwhi) | 202 if (!rwhi) |
| 197 return; | 203 return; |
| 198 | 204 |
| 199 rwhi->Send(new ViewMsg_SetEditableSelectionOffsets(rwhi->GetRoutingID(), | 205 rwhi->Send(new ViewMsg_SetEditableSelectionOffsets(rwhi->GetRoutingID(), |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 265 void ImeAdapterAndroid::Paste(JNIEnv* env, jobject) { | 271 void ImeAdapterAndroid::Paste(JNIEnv* env, jobject) { |
| 266 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( | 272 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From( |
| 267 rwhva_->GetRenderWidgetHost()); | 273 rwhva_->GetRenderWidgetHost()); |
| 268 if (!rwhi) | 274 if (!rwhi) |
| 269 return; | 275 return; |
| 270 | 276 |
| 271 rwhi->Send(new ViewMsg_Paste(rwhi->GetRoutingID())); | 277 rwhi->Send(new ViewMsg_Paste(rwhi->GetRoutingID())); |
| 272 } | 278 } |
| 273 | 279 |
| 274 } // namespace content | 280 } // namespace content |
| OLD | NEW |