summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authorohrn@opera.com <ohrn@opera.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-12 16:17:10 +0000
committerohrn@opera.com <ohrn@opera.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-12 16:17:10 +0000
commit761eeca283a00ac9a45c67a5efec1ec0bbf2ef13 (patch)
tree80f5c21ddc7a3b7035173b0d676e151313e223a4 /content
parent2de685cb184bca8520ae65d20bd8115805efbeac (diff)
downloadchromium_src-761eeca283a00ac9a45c67a5efec1ec0bbf2ef13.zip
chromium_src-761eeca283a00ac9a45c67a5efec1ec0bbf2ef13.tar.gz
chromium_src-761eeca283a00ac9a45c67a5efec1ec0bbf2ef13.tar.bz2
Remove zero length composing spans.
This fixes the following logcat error: E/SpannableStringBuilder(14995): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length BUG=229809 Review URL: https://chromiumcodereview.appspot.com/13820016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193948 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r--content/public/android/java/src/org/chromium/content/browser/input/AdapterInputConnection.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/content/public/android/java/src/org/chromium/content/browser/input/AdapterInputConnection.java b/content/public/android/java/src/org/chromium/content/browser/input/AdapterInputConnection.java
index 045a542..68fb786 100644
--- a/content/public/android/java/src/org/chromium/content/browser/input/AdapterInputConnection.java
+++ b/content/public/android/java/src/org/chromium/content/browser/input/AdapterInputConnection.java
@@ -151,7 +151,12 @@ public class AdapterInputConnection extends BaseInputConnection {
}
Selection.setSelection(editable, selectionStart, selectionEnd);
- super.setComposingRegion(compositionStart, compositionEnd);
+
+ if (compositionStart == compositionEnd) {
+ removeComposingSpans(editable);
+ } else {
+ super.setComposingRegion(compositionStart, compositionEnd);
+ }
if (mIgnoreTextInputStateUpdates) return;
updateSelection(selectionStart, selectionEnd, compositionStart, compositionEnd);
@@ -380,7 +385,12 @@ public class AdapterInputConnection extends BaseInputConnection {
if (DEBUG) Log.w(TAG, "setComposingRegion [" + start + " " + end + "]");
int a = Math.min(start, end);
int b = Math.max(start, end);
- super.setComposingRegion(a, b);
+
+ if (a == b) {
+ removeComposingSpans(getEditable());
+ } else {
+ super.setComposingRegion(a, b);
+ }
return mImeAdapter.setComposingRegion(a, b);
}