aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/event/CombinerChain.java
diff options
context:
space:
mode:
authorKen Wakasa <kwakasa@google.com>2014-07-29 15:43:59 +0000
committerKen Wakasa <kwakasa@google.com>2014-07-29 15:43:59 +0000
commit8aa74da98d328a70f61569ce2a97945d442871ce (patch)
tree81b65c94141e286b64dd342b357d3e999ffb49fa /java/src/com/android/inputmethod/event/CombinerChain.java
parent60a2cd8ac439bf41bfddc5f5f339feda7c7ff175 (diff)
downloadlatinime-8aa74da98d328a70f61569ce2a97945d442871ce.tar.gz
latinime-8aa74da98d328a70f61569ce2a97945d442871ce.tar.xz
latinime-8aa74da98d328a70f61569ce2a97945d442871ce.zip
Revert "[HW7.5] Introduce the @Nonnull annotation"
This reverts commit 60a2cd8ac439bf41bfddc5f5f339feda7c7ff175. Reverting due to build breakage under the unbundled branch. Change-Id: Iab2988c53884166f62c95da920ac7a7079a0e5a0
Diffstat (limited to 'java/src/com/android/inputmethod/event/CombinerChain.java')
-rw-r--r--java/src/com/android/inputmethod/event/CombinerChain.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/event/CombinerChain.java b/java/src/com/android/inputmethod/event/CombinerChain.java
index f69bf4fd0..8ddc9e7d9 100644
--- a/java/src/com/android/inputmethod/event/CombinerChain.java
+++ b/java/src/com/android/inputmethod/event/CombinerChain.java
@@ -24,8 +24,6 @@ import com.android.inputmethod.latin.Constants;
import java.util.ArrayList;
import java.util.HashMap;
-import javax.annotation.Nonnull;
-
/**
* This class implements the logic chain between receiving events and generating code points.
*
@@ -89,7 +87,6 @@ public class CombinerChain {
* @return the processed event. It may be the same event, or a consumed event, or a completely
* new event. However it may never be null.
*/
- @Nonnull
public Event processEvent(final ArrayList<Event> previousEvents, final Event newEvent) {
final ArrayList<Event> modifiablePreviousEvents = new ArrayList<>(previousEvents);
Event event = newEvent;
@@ -97,6 +94,10 @@ public class CombinerChain {
// A combiner can never return more than one event; it can return several
// code points, but they should be encapsulated within one event.
event = combiner.processEvent(modifiablePreviousEvents, event);
+ if (null == event) {
+ // Combiners return null if they eat the event.
+ break;
+ }
}
return event;
}