Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1321)

Unified Diff: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java

Issue 14100003: [Android] Moving input related files to a separate input/ directory. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
index 9b8cde61ef94cdbf6f262c24e2cc6553a9fc680b..6d44e042af538f17c108e45c3c0b3dc3706ee2b3 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
@@ -42,8 +42,14 @@ import org.chromium.base.JNINamespace;
import org.chromium.base.WeakContext;
import org.chromium.content.R;
import org.chromium.content.browser.ContentViewGestureHandler.MotionEventDelegate;
-import org.chromium.content.browser.ImeAdapter.AdapterInputConnectionFactory;
import org.chromium.content.browser.accessibility.AccessibilityInjector;
+import org.chromium.content.browser.input.AdapterInputConnection;
+import org.chromium.content.browser.input.HandleView;
+import org.chromium.content.browser.input.ImeAdapter;
+import org.chromium.content.browser.input.ImeAdapter.AdapterInputConnectionFactory;
+import org.chromium.content.browser.input.InsertionHandleController;
+import org.chromium.content.browser.input.SelectPopupDialog;
+import org.chromium.content.browser.input.SelectionHandleController;
import org.chromium.content.common.TraceEvent;
import org.chromium.ui.gfx.NativeWindow;
@@ -192,7 +198,7 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
// Only valid when focused on a text / password field.
private ImeAdapter mImeAdapter;
private ImeAdapter.AdapterInputConnectionFactory mAdapterInputConnectionFactory;
- private ImeAdapter.AdapterInputConnection mInputConnection;
+ private AdapterInputConnection mInputConnection;
private SelectionHandleController mSelectionHandleController;
private InsertionHandleController mInsertionHandleController;
@@ -326,17 +332,17 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
}
@VisibleForTesting
- protected ImeAdapter getImeAdapterForTest() {
+ public ImeAdapter getImeAdapterForTest() {
return mImeAdapter;
}
@VisibleForTesting
- protected void setAdapterInputConnectionFactory(AdapterInputConnectionFactory factory) {
+ public void setAdapterInputConnectionFactory(AdapterInputConnectionFactory factory) {
mAdapterInputConnectionFactory = factory;
}
@VisibleForTesting
- protected ImeAdapter.AdapterInputConnection getInputConnectionForTest() {
+ public AdapterInputConnection getInputConnectionForTest() {
return mInputConnection;
}
@@ -1293,8 +1299,9 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
if (newConfig.keyboard != Configuration.KEYBOARD_NOKEYS) {
mImeAdapter.attach(nativeGetNativeImeAdapter(mNativeContentViewCore),
- ImeAdapter.sTextInputTypeNone, ImeAdapter.INVALID_SELECTION,
- ImeAdapter.INVALID_SELECTION);
+ ImeAdapter.getTextInputTypeNone(),
+ AdapterInputConnection.INVALID_SELECTION,
+ AdapterInputConnection.INVALID_SELECTION);
InputMethodManager manager = (InputMethodManager)
getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
manager.restartInput(mContainerView);
@@ -1662,7 +1669,7 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
return mZoomManager.isMultiTouchZoomSupported();
}
- void selectPopupMenuItems(int[] indices) {
+ public void selectPopupMenuItems(int[] indices) {
if (mNativeContentViewCore != 0) {
nativeSelectPopupMenuItems(mNativeContentViewCore, indices);
}
@@ -2057,11 +2064,7 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
String text, int selectionStart, int selectionEnd,
int compositionStart, int compositionEnd, boolean showImeIfNeeded) {
TraceEvent.begin();
-
- // Non-breaking spaces can cause the IME to get confused. Replace with normal spaces.
- text = text.replace('\u00A0', ' ');
-
- mSelectionEditable = (textInputType != ImeAdapter.sTextInputTypeNone);
+ mSelectionEditable = (textInputType != ImeAdapter.getTextInputTypeNone());
if (mActionMode != null) mActionMode.invalidate();
@@ -2069,12 +2072,6 @@ public class ContentViewCore implements MotionEventDelegate, NavigationClient {
selectionStart, selectionEnd, showImeIfNeeded);
if (mInputConnection != null) {
- // In WebKit if there's a composition then the selection will usually be the
- // same as the composition, whereas Android IMEs expect the selection to be
- // just a caret at the end of the composition.
- if (selectionStart == compositionStart && selectionEnd == compositionEnd) {
- selectionStart = selectionEnd;
- }
mInputConnection.setEditableText(text, selectionStart, selectionEnd,
compositionStart, compositionEnd);
}
« no previous file with comments | « content/content_jni.gypi ('k') | content/public/android/java/src/org/chromium/content/browser/CursorController.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698