From 7f1a4a6fb8f9a56236a3278b5f57348e61590948 Mon Sep 17 00:00:00 2001 From: iNPUTmice Date: Sat, 14 Jun 2014 16:59:07 +0200 Subject: infite scrolling --- .../conversations/persistance/DatabaseBackend.java | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'src/eu/siacs/conversations/persistance/DatabaseBackend.java') diff --git a/src/eu/siacs/conversations/persistance/DatabaseBackend.java b/src/eu/siacs/conversations/persistance/DatabaseBackend.java index 26d09378e..fbf45d250 100644 --- a/src/eu/siacs/conversations/persistance/DatabaseBackend.java +++ b/src/eu/siacs/conversations/persistance/DatabaseBackend.java @@ -128,14 +128,26 @@ public class DatabaseBackend extends SQLiteOpenHelper { } return list; } + + public List getMessages(Conversation conversations, int limit) { + return getMessages(conversations, limit,-1); + } - public List getMessages(Conversation conversation, int limit) { + public List getMessages(Conversation conversation, int limit, long timestamp) { List list = new CopyOnWriteArrayList(); SQLiteDatabase db = this.getReadableDatabase(); - String[] selectionArgs = { conversation.getUuid() }; - Cursor cursor = db.query(Message.TABLENAME, null, Message.CONVERSATION - + "=?", selectionArgs, null, null, Message.TIME_SENT + " DESC", - String.valueOf(limit)); + Cursor cursor; + if (timestamp==-1) { + String[] selectionArgs = { conversation.getUuid() }; + cursor = db.query(Message.TABLENAME, null, Message.CONVERSATION + + "=?", selectionArgs, null, null, Message.TIME_SENT + " DESC", + String.valueOf(limit)); + } else { + String[] selectionArgs = { conversation.getUuid() , ""+timestamp}; + cursor = db.query(Message.TABLENAME, null, Message.CONVERSATION + + "=? and "+Message.TIME_SENT+" 0) { cursor.moveToLast(); do { -- cgit v1.2.3