diff --git a/res/drawable-hdpi/inbox_zero.png b/res/drawable-hdpi/inbox_zero.png new file mode 100644 index 000000000..fb95a35cd Binary files /dev/null and b/res/drawable-hdpi/inbox_zero.png differ diff --git a/res/drawable-mdpi/inbox_zero.png b/res/drawable-mdpi/inbox_zero.png new file mode 100644 index 000000000..7018fde64 Binary files /dev/null and b/res/drawable-mdpi/inbox_zero.png differ diff --git a/res/drawable-xhdpi/inbox_zero.png b/res/drawable-xhdpi/inbox_zero.png new file mode 100644 index 000000000..ca25d05ca Binary files /dev/null and b/res/drawable-xhdpi/inbox_zero.png differ diff --git a/res/drawable-xxhdpi/inbox_zero.png b/res/drawable-xxhdpi/inbox_zero.png new file mode 100644 index 000000000..a4b069614 Binary files /dev/null and b/res/drawable-xxhdpi/inbox_zero.png differ diff --git a/res/drawable-xxxhdpi/inbox_zero.png b/res/drawable-xxxhdpi/inbox_zero.png new file mode 100644 index 000000000..7f3fc7a3f Binary files /dev/null and b/res/drawable-xxxhdpi/inbox_zero.png differ diff --git a/res/layout/conversation_list_item_inbox_zero.xml b/res/layout/conversation_list_item_inbox_zero.xml new file mode 100644 index 000000000..149e45ad9 --- /dev/null +++ b/res/layout/conversation_list_item_inbox_zero.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/res/values/strings.xml b/res/values/strings.xml index c47a24118..53d762036 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -1491,6 +1491,8 @@ Verify Your Number Please enter your mobile number to receive a verification code. Carrier rates may apply. Give your inbox something to write home about. Get started by messaging a friend. + Inbox zeeerrro + Zip. Zilch. Zero. Nada. You\'re all caught up! diff --git a/src/org/thoughtcrime/securesms/ConversationListAdapter.java b/src/org/thoughtcrime/securesms/ConversationListAdapter.java index f6b7fd5a3..16d74d364 100644 --- a/src/org/thoughtcrime/securesms/ConversationListAdapter.java +++ b/src/org/thoughtcrime/securesms/ConversationListAdapter.java @@ -50,6 +50,7 @@ class ConversationListAdapter extends CursorRecyclerViewAdapter { if (clickListener != null) clickListener.onSwitchToArchive(); }); return new ViewHolder(action); + } else if (viewType == MESSAGE_TYPE_INBOX_ZERO) { + return new ViewHolder((ConversationListItemInboxZero)inflater.inflate(R.layout.conversation_list_item_inbox_zero, parent, false)); } else { final ConversationListItem item = (ConversationListItem)inflater.inflate(R.layout.conversation_list_item_view, parent, false); @@ -148,6 +151,8 @@ class ConversationListAdapter extends CursorRecyclerViewAdapter selectedThreads, boolean batchMode) { + + } +} diff --git a/src/org/thoughtcrime/securesms/database/ThreadDatabase.java b/src/org/thoughtcrime/securesms/database/ThreadDatabase.java index 943d517d0..9d72d5d3c 100644 --- a/src/org/thoughtcrime/securesms/database/ThreadDatabase.java +++ b/src/org/thoughtcrime/securesms/database/ThreadDatabase.java @@ -608,6 +608,7 @@ public class ThreadDatabase extends Database { public static final int BROADCAST = 1; public static final int CONVERSATION = 2; public static final int ARCHIVE = 3; + public static final int INBOX_ZERO = 4; } public class Reader { @@ -635,7 +636,7 @@ public class ThreadDatabase extends Database { Optional settings; Optional groupRecord; - if (distributionType != DistributionTypes.ARCHIVE) { + if (distributionType != DistributionTypes.ARCHIVE && distributionType != DistributionTypes.INBOX_ZERO) { settings = DatabaseFactory.getRecipientDatabase(context).getRecipientSettings(cursor); groupRecord = DatabaseFactory.getGroupDatabase(context).getGroup(cursor); } else { diff --git a/src/org/thoughtcrime/securesms/database/loaders/ConversationListLoader.java b/src/org/thoughtcrime/securesms/database/loaders/ConversationListLoader.java index 1d527fd94..0620f3178 100644 --- a/src/org/thoughtcrime/securesms/database/loaders/ConversationListLoader.java +++ b/src/org/thoughtcrime/securesms/database/loaders/ConversationListLoader.java @@ -47,10 +47,17 @@ public class ConversationListLoader extends AbstractCursorLoader { ThreadDatabase.ARCHIVED, ThreadDatabase.STATUS, ThreadDatabase.DELIVERY_RECEIPT_COUNT, ThreadDatabase.EXPIRES_IN, ThreadDatabase.LAST_SEEN, ThreadDatabase.READ_RECEIPT_COUNT}, 1); + + if (cursorList.get(0).getCount() <= 0) { + switchToArchiveCursor.addRow(new Object[] {-1L, System.currentTimeMillis(), archivedCount, + "-1", null, 1, ThreadDatabase.DistributionTypes.INBOX_ZERO, + 0, null, 0, -1, 0, 0, 0, -1}); + } + switchToArchiveCursor.addRow(new Object[] {-1L, System.currentTimeMillis(), archivedCount, "-1", null, 1, ThreadDatabase.DistributionTypes.ARCHIVE, 0, null, 0, -1, 0, 0, 0, -1}); - + cursorList.add(switchToArchiveCursor); }