From ec4bf33323237e06e550b828621a536013e0e7d8 Mon Sep 17 00:00:00 2001 From: NudeDude Date: Mon, 5 Mar 2018 14:55:58 +0100 Subject: [PATCH] Bugfix Optimizations --- .../org/nuclearfog/twidda/backend/ImagePopup.java | 3 --- .../nuclearfog/twidda/backend/TwitterEngine.java | 9 +++++++-- .../nuclearfog/twidda/database/TweetDatabase.java | 15 +++++++-------- app/src/main/res/layout/login.xml | 12 ++++-------- app/src/main/res/values/styles.xml | 2 -- 5 files changed, 18 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/ImagePopup.java b/app/src/main/java/org/nuclearfog/twidda/backend/ImagePopup.java index 7da7622d..b874a6d8 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/ImagePopup.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/ImagePopup.java @@ -12,10 +12,7 @@ import android.view.Window; import android.widget.Button; import android.widget.ImageView; import android.widget.ProgressBar; - import org.nuclearfog.twidda.R; - -import java.io.File; import java.io.InputStream; import java.net.URL; diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/TwitterEngine.java b/app/src/main/java/org/nuclearfog/twidda/backend/TwitterEngine.java index 4dd92d2f..99953219 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/TwitterEngine.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/TwitterEngine.java @@ -411,14 +411,19 @@ public class TwitterEngine { * Get User who retweeted a Tweet * @param tweetID Tweet ID * @param cursor List Cursor + * @return List of users or empty list if no match * @throws TwitterException if Access is unavailable */ public List getRetweeter(long tweetID, long cursor) throws TwitterException { Status embeddedStat = getStatus(tweetID).getRetweetedStatus(); if(embeddedStat != null) tweetID = embeddedStat.getId(); - IDs test = twitter.getRetweeterIds(tweetID,load,cursor); - return twitter.lookupUsers(test.getIDs()); + long[] userIds = twitter.getRetweeterIds(tweetID,load,cursor).getIDs(); + if(userIds.length == 0) { + return new ArrayList<>(); + } else { + return twitter.lookupUsers(userIds); + } } /** diff --git a/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java b/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java index 3bf3162e..ec6508cc 100644 --- a/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java +++ b/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java @@ -159,23 +159,22 @@ public class TweetDatabase { if(mode==HOME_TL) { SQL_GET_HOME = "SELECT * FROM timeline " + "INNER JOIN tweet ON timeline.tweetID = tweet.tweetID " + - "INNER JOIN user ON tweet.userID=user.userID ORDER BY time DESC"; + "INNER JOIN user ON tweet.userID=user.userID ORDER BY tweetID DESC"; } else if(mode==FAV_TL) { SQL_GET_HOME = "SELECT * FROM favorit " + "INNER JOIN tweet ON favorit.tweetID = tweet.tweetID " + "INNER JOIN user ON tweet.userID=user.userID " + - "WHERE favorit.ownerID = "+CurrentId+" ORDER BY tweet.time DESC"; + "WHERE favorit.ownerID = "+CurrentId+" ORDER BY tweetID DESC"; } else if(mode==USER_TL) { SQL_GET_HOME = "SELECT * FROM user INNER JOIN tweet ON user.userID = tweet.userID " + - "WHERE user.userID = "+CurrentId+" ORDER BY tweet.time DESC"; + "WHERE user.userID = "+CurrentId+" ORDER BY tweetID DESC"; } else if(mode==GET_TWEET) { SQL_GET_HOME = "SELECT * FROM user INNER JOIN tweet ON user.userID = tweet.userID " + - "WHERE tweet.tweetID = "+CurrentId+" ORDER BY tweet.time DESC"; - } else if(mode==GET_MENT){ + "WHERE tweetID = "+CurrentId+" ORDER BY tweetID DESC"; + } else if(mode==GET_MENT) { SQL_GET_HOME = "SELECT * FROM timeline " + "INNER JOIN tweet ON timeline.mTweetID = tweet.tweetID " + - "INNER JOIN user ON tweet.userID=user.userID ORDER BY time DESC"; - limit = 5; //TODO 5 Mentions only! + "INNER JOIN user ON tweet.userID=user.userID ORDER BY tweetID ASC"; } Cursor cursor = db.rawQuery(SQL_GET_HOME,null); @@ -205,7 +204,7 @@ public class TweetDatabase { index = cursor.getColumnIndex("retweeter"); retweeter.add(cursor.getString(index)); size++; - } while(cursor.moveToNext() && size < limit); + } while(cursor.moveToNext()); } cursor.close(); db.close(); diff --git a/app/src/main/res/layout/login.xml b/app/src/main/res/layout/login.xml index 0b162670..0d1f9b38 100644 --- a/app/src/main/res/layout/login.xml +++ b/app/src/main/res/layout/login.xml @@ -1,17 +1,13 @@ + android:orientation="vertical">