aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/research/ResearchLogger.java
diff options
context:
space:
mode:
authorKen Wakasa <kwakasa@google.com>2013-10-14 01:09:40 +0900
committerKen Wakasa <kwakasa@google.com>2013-10-14 17:57:48 +0900
commitb9ce84214212f5b5072cd9fda458526887c3c739 (patch)
tree3f4df029f1d89d96cab0396cae3864f38eceb5ba /java/src/com/android/inputmethod/research/ResearchLogger.java
parentc8383eda8bb05e25b22fe6d66100248f7d0e33fa (diff)
downloadlatinime-b9ce84214212f5b5072cd9fda458526887c3c739.tar.gz
latinime-b9ce84214212f5b5072cd9fda458526887c3c739.tar.xz
latinime-b9ce84214212f5b5072cd9fda458526887c3c739.zip
mExpectingUpdateSelection was out of sync when nothing to delete.
This bug was leading to corrupted rendering of surrogate pairs in the following scenario. 1. Type some emojis 2. Move the cursor at the beginning of the text field 3. Hit backspace even though there's nothing to delete 4. Move the cursor after some emoji 5. Hit backspace The root cause of this issue was the out-of-sync mExpectingUpdateSelection if handleBackspace() gets called when the cursor reaches at the beginning of the TextView. In such case, mExpectingUpdateSelection shouldn't be set true because there's nothing to delete, so there will be no onUpdateSelection() calls associated with it. Due to this bug, the cache in RichInputConnection could get stale at step 4 described above. Then the following handleBackspace() that should delete a surrogate pair was not working correctly because of the stale cache. bug: 11181913 Change-Id: I9c6a948331726a821bd3ccec9c1d02dec2c4703a
Diffstat (limited to 'java/src/com/android/inputmethod/research/ResearchLogger.java')
0 files changed, 0 insertions, 0 deletions