summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
diff options
context:
space:
mode:
authorzachh <zachh@google.com>2017-08-25 12:19:07 -0700
committerEric Erfanian <erfanian@google.com>2017-08-30 16:26:55 -0700
commit51f2b28ae6a45f57f94e5c9a66081a10aebc8349 (patch)
tree51f16d3431b9e7aeeed3719303b00fca20cb7d88 /java/com/android/dialer/calllog/datasources/util/RowCombiner.java
parent73f450c63cae19c7e0404fcddbc8db55a1aa5fba (diff)
Added partial UI to new call log.
UI notes: -Updated view holder to show number and basic secondary text -Updated adapter to divide "Today" and "Older" entries -Photo is just an anonymous avatar for now -Clicking anywhere is a no-op Other things done in this CL: -Plumbed a few more columns through the call log framework -Tweaked some column names in the data model (contract) -Cleaned up some existing tests and added some new ones Screenshot: https://screenshot.googleplex.com/DiMscW47AYb This is the complete spec I am working from: https://screenshot.googleplex.com/XLquTek1oHk Bug: 34672501 Test: existing and new Change-Id: Ice0e538e23e59b7d752f47125a5f9da96bf91430 PiperOrigin-RevId: 166508997
Diffstat (limited to 'java/com/android/dialer/calllog/datasources/util/RowCombiner.java')
-rw-r--r--java/com/android/dialer/calllog/datasources/util/RowCombiner.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/java/com/android/dialer/calllog/datasources/util/RowCombiner.java b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
index 0c7be1e27..3595a055d 100644
--- a/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
+++ b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
@@ -36,12 +36,23 @@ public class RowCombiner {
return this;
}
+ /** Use the most recent value for the specified column. */
+ public RowCombiner useMostRecentString(String columnName) {
+ combinedRow.put(columnName, individualRowsSortedByTimestampDesc.get(0).getAsString(columnName));
+ return this;
+ }
+
/** Asserts that all column values for the given column name are the same, and uses it. */
public RowCombiner useSingleValueString(String columnName) {
Iterator<ContentValues> iterator = individualRowsSortedByTimestampDesc.iterator();
String singleValue = iterator.next().getAsString(columnName);
while (iterator.hasNext()) {
- Assert.checkState(iterator.next().getAsString(columnName).equals(singleValue));
+ String current = iterator.next().getAsString(columnName);
+ if (current == null) {
+ Assert.checkState(singleValue == null);
+ } else {
+ Assert.checkState(current.equals(singleValue));
+ }
}
combinedRow.put(columnName, singleValue);
return this;