am eba508d0: am 932ec21b: Merge "Null check; back behavior" into jb-dev
* commit 'eba508d0697c06c4a889c06ad7728a0cbce78e49':
Null check; back behavior
diff --git a/src/com/android/ex/chips/RecipientAlternatesAdapter.java b/src/com/android/ex/chips/RecipientAlternatesAdapter.java
index e3ef6cd..553890e 100644
--- a/src/com/android/ex/chips/RecipientAlternatesAdapter.java
+++ b/src/com/android/ex/chips/RecipientAlternatesAdapter.java
@@ -31,6 +31,7 @@
import com.android.ex.chips.Queries.Query;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -55,7 +56,7 @@
private Query mQuery;
public static HashMap<String, RecipientEntry> getMatchingRecipients(Context context,
- String[] inAddresses) {
+ ArrayList<String> inAddresses) {
return getMatchingRecipients(context, inAddresses, QUERY_TYPE_EMAIL);
}
@@ -69,20 +70,20 @@
* @return HashMap<String,RecipientEntry>
*/
public static HashMap<String, RecipientEntry> getMatchingRecipients(Context context,
- String[] inAddresses, int addressType) {
+ ArrayList<String> inAddresses, int addressType) {
Queries.Query query;
if (addressType == QUERY_TYPE_EMAIL) {
query = Queries.EMAIL;
} else {
query = Queries.PHONE;
}
- int addressesSize = Math.min(MAX_LOOKUPS, inAddresses.length);
+ int addressesSize = Math.min(MAX_LOOKUPS, inAddresses.size());
String[] addresses = new String[addressesSize];
StringBuilder bindString = new StringBuilder();
// Create the "?" string and set up arguments.
for (int i = 0; i < addressesSize; i++) {
- Rfc822Token[] tokens = Rfc822Tokenizer.tokenize(inAddresses[i].toLowerCase());
- addresses[i] = (tokens.length > 0 ? tokens[0].getAddress() : inAddresses[i]);
+ Rfc822Token[] tokens = Rfc822Tokenizer.tokenize(inAddresses.get(i).toLowerCase());
+ addresses[i] = (tokens.length > 0 ? tokens[0].getAddress() : inAddresses.get(i));
bindString.append("?");
if (i < addressesSize - 1) {
bindString.append(",");
diff --git a/src/com/android/ex/chips/RecipientEditTextView.java b/src/com/android/ex/chips/RecipientEditTextView.java
index ac3caa8..1377ff0 100644
--- a/src/com/android/ex/chips/RecipientEditTextView.java
+++ b/src/com/android/ex/chips/RecipientEditTextView.java
@@ -995,8 +995,9 @@
*/
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
- if (keyCode == KeyEvent.KEYCODE_BACK) {
+ if (keyCode == KeyEvent.KEYCODE_BACK && mSelectedChip != null) {
clearSelectedChip();
+ return true;
}
return super.onKeyPreIme(keyCode, event);
}
@@ -1037,6 +1038,7 @@
return true;
}
}
+ break;
}
return super.onKeyUp(keyCode, event);
}
@@ -2298,12 +2300,12 @@
if (mRemovedSpans != null) {
originalRecipients.addAll(mRemovedSpans);
}
- String[] addresses = new String[originalRecipients.size()];
+ ArrayList<String> addresses = new ArrayList<String>();
RecipientChip chip;
for (int i = 0; i < originalRecipients.size(); i++) {
chip = originalRecipients.get(i);
if (chip != null) {
- addresses[i] = createAddressText(chip.getEntry());
+ addresses.add(createAddressText(chip.getEntry()));
}
}
HashMap<String, RecipientEntry> entries = RecipientAlternatesAdapter
@@ -2363,12 +2365,12 @@
// chip.
final ArrayList<RecipientChip> originalRecipients =
(ArrayList<RecipientChip>) params[0];
- String[] addresses = new String[originalRecipients.size()];
+ ArrayList<String> addresses = new ArrayList<String>();
RecipientChip chip;
for (int i = 0; i < originalRecipients.size(); i++) {
chip = originalRecipients.get(i);
if (chip != null) {
- addresses[i] = createAddressText(chip.getEntry());
+ addresses.add(createAddressText(chip.getEntry()));
}
}
HashMap<String, RecipientEntry> entries = RecipientAlternatesAdapter