summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/java/android/widget/Editor.java2
-rw-r--r--core/java/com/android/internal/view/FloatingActionMode.java12
2 files changed, 11 insertions, 3 deletions
diff --git a/core/java/android/widget/Editor.java b/core/java/android/widget/Editor.java
index 010cb27..5b042c6 100644
--- a/core/java/android/widget/Editor.java
+++ b/core/java/android/widget/Editor.java
@@ -3308,7 +3308,7 @@ public class Editor {
mSelectionBounds.set(
primaryHorizontal,
layout.getLineTop(line),
- primaryHorizontal + 1,
+ primaryHorizontal,
layout.getLineTop(line + 1) + mHandleHeight);
}
// Take TextView's padding and scroll into account.
diff --git a/core/java/com/android/internal/view/FloatingActionMode.java b/core/java/com/android/internal/view/FloatingActionMode.java
index 41628d0..9761661 100644
--- a/core/java/com/android/internal/view/FloatingActionMode.java
+++ b/core/java/com/android/internal/view/FloatingActionMode.java
@@ -194,8 +194,16 @@ public class FloatingActionMode extends ActionMode {
mContext.getResources().getDisplayMetrics().widthPixels,
mContext.getResources().getDisplayMetrics().heightPixels);
- return Rect.intersects(mContentRectOnScreen, mScreenRect)
- && Rect.intersects(mContentRectOnScreen, mViewRectOnScreen);
+ return intersectsClosed(mContentRectOnScreen, mScreenRect)
+ && intersectsClosed(mContentRectOnScreen, mViewRectOnScreen);
+ }
+
+ /*
+ * Same as Rect.intersects, but includes cases where the rectangles touch.
+ */
+ private static boolean intersectsClosed(Rect a, Rect b) {
+ return a.left <= b.right && b.left <= a.right
+ && a.top <= b.bottom && b.top <= a.bottom;
}
@Override