summaryrefslogtreecommitdiff
path: root/core/java/android/widget/TextView.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/widget/TextView.java')
-rw-r--r--core/java/android/widget/TextView.java25
1 files changed, 24 insertions, 1 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 31f50555af1d..90e8ef2c6423 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -345,6 +345,8 @@ import java.util.function.Supplier;
public class TextView extends View implements ViewTreeObserver.OnPreDrawListener {
static final String LOG_TAG = "TextView";
static final boolean DEBUG_EXTRACT = false;
+ static final boolean DEBUG_CURSOR = false;
+
private static final float[] TEMP_POSITION = new float[2];
// Enum for the "typeface" XML parameter.
@@ -10857,6 +10859,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
@Override
public boolean onTouchEvent(MotionEvent event) {
+ if (DEBUG_CURSOR) {
+ logCursor("onTouchEvent", MotionEvent.actionToString(event.getActionMasked()));
+ }
+
final int action = event.getActionMasked();
if (mEditor != null) {
mEditor.onTouchEvent(event);
@@ -10868,6 +10874,9 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
}
final boolean superResult = super.onTouchEvent(event);
+ if (DEBUG_CURSOR) {
+ logCursor("onTouchEvent", "superResult=%s", superResult);
+ }
/*
* Don't handle the release after a long press, because it will move the selection away from
@@ -10876,7 +10885,9 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
*/
if (mEditor != null && mEditor.mDiscardNextActionUp && action == MotionEvent.ACTION_UP) {
mEditor.mDiscardNextActionUp = false;
-
+ if (DEBUG_CURSOR) {
+ logCursor("onTouchEvent", "release after long press detected");
+ }
if (mEditor.mIsInsertionActionModeStartPending) {
mEditor.startInsertionActionMode();
mEditor.mIsInsertionActionModeStartPending = false;
@@ -12254,6 +12265,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
@Override
public boolean performLongClick() {
+ if (DEBUG_CURSOR) {
+ logCursor("performLongClick", null);
+ }
+
boolean handled = false;
boolean performedHapticFeedback = false;
@@ -13481,4 +13496,12 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
TextView.this.spanChange(buf, what, s, -1, e, -1);
}
}
+
+ private static void logCursor(String location, @Nullable String msgFormat, Object ... msgArgs) {
+ if (msgFormat == null) {
+ Log.d(LOG_TAG, location);
+ } else {
+ Log.d(LOG_TAG, location + ": " + String.format(msgFormat, msgArgs));
+ }
+ }
}