From fc4c3d9d64e4674470af8a37ebf7d4026bbd300f Mon Sep 17 00:00:00 2001 From: NudeDude Date: Sat, 3 Mar 2018 22:54:13 +0100 Subject: [PATCH] Bugfix Optimizations --- .../nuclearfog/twidda/backend/MainPage.java | 4 +-- .../twidda/backend/ProfileLoader.java | 4 +-- .../twidda/backend/StatusLoader.java | 2 +- .../twidda/backend/TwitterSearch.java | 2 +- .../twidda/database/TweetDatabase.java | 29 ++++++--------- app/src/main/res/layout/login.xml | 6 ++-- app/src/main/res/layout/profile.xml | 15 ++++---- app/src/main/res/layout/trend.xml | 1 + app/src/main/res/layout/tweet.xml | 3 +- app/src/main/res/layout/tweet_detail.xml | 36 +++++++++++++------ 10 files changed, 58 insertions(+), 44 deletions(-) diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/MainPage.java b/app/src/main/java/org/nuclearfog/twidda/backend/MainPage.java index e5f93d7b..eb743df3 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/MainPage.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/MainPage.java @@ -69,7 +69,7 @@ public class MainPage extends AsyncTask { timelineAdapter = (TimelineAdapter) timelineList.getAdapter(); if(timelineAdapter != null && timelineAdapter.getCount() != 0) { id = timelineAdapter.getItemId(0); - timelineAdapter.getData().add(mTwitter.getHome(page,id)); + timelineAdapter.getData().insert(mTwitter.getHome(page,id),true); } else { TweetDatabase mTweets = new TweetDatabase(mTwitter.getHome(page,id), context,TweetDatabase.HOME_TL,0); timelineAdapter = new TimelineAdapter(context,mTweets); @@ -84,7 +84,7 @@ public class MainPage extends AsyncTask { mentionAdapter = (TimelineAdapter) mentionList.getAdapter(); if(mentionAdapter != null && mentionAdapter.getCount() != 0) { id = mentionAdapter.getItemId(0); - mentionAdapter.getData().add(mTwitter.getMention(page,id)); + mentionAdapter.getData().insert(mTwitter.getMention(page,id),true); } else { TweetDatabase mention = new TweetDatabase(mTwitter.getMention(page,id), context,TweetDatabase.GET_MENT,0); mentionAdapter = new TimelineAdapter(context,mention); diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/ProfileLoader.java b/app/src/main/java/org/nuclearfog/twidda/backend/ProfileLoader.java index 624e6bb0..da988fda 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/ProfileLoader.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/ProfileLoader.java @@ -122,7 +122,7 @@ public class ProfileLoader extends AsyncTask { homeTl = new TimelineAdapter(context,hTweets); } else { id = homeTl.getItemId(0); - homeTl.getData().add(mTwitter.getUserTweets(userId,args[2],id)); + homeTl.getData().insert(mTwitter.getUserTweets(userId,args[2],id),true); } } else if(MODE == GET_FAVS) @@ -130,7 +130,7 @@ public class ProfileLoader extends AsyncTask { homeFav = (TimelineAdapter) profileFavorits.getAdapter(); if(homeFav != null) { id = homeFav.getItemId(0); - homeFav.getData().add(mTwitter.getUserFavs(userId,args[2],id)); + homeFav.getData().insert(mTwitter.getUserFavs(userId,args[2],id),true); } else { TweetDatabase fTweets = new TweetDatabase(mTwitter.getUserFavs(userId,args[2],id),context,TweetDatabase.FAV_TL,userId); homeFav = new TimelineAdapter(context,fTweets); diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/StatusLoader.java b/app/src/main/java/org/nuclearfog/twidda/backend/StatusLoader.java index 878dc5bf..525c81bb 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/StatusLoader.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/StatusLoader.java @@ -262,7 +262,7 @@ public class StatusLoader extends AsyncTask { replyList.setAdapter(tlAdp); } else { TweetDatabase twDb = tlAdp.getData(); - twDb.addHot(answers); + twDb.insert(answers,false); tlAdp.notifyDataSetChanged(); ansReload.setRefreshing(false); } diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/TwitterSearch.java b/app/src/main/java/org/nuclearfog/twidda/backend/TwitterSearch.java index c1690112..d96468cc 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/TwitterSearch.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/TwitterSearch.java @@ -45,7 +45,7 @@ public class TwitterSearch extends AsyncTask { tlAdp = (TimelineAdapter) tweetSearch.getAdapter(); if(tlAdp != null) { id = tlAdp.getItemId(0); - tlAdp.getData().addHot(mTwitter.searchTweets(get,id)); + tlAdp.getData().insert(mTwitter.searchTweets(get,id),false); } else { tlAdp = new TimelineAdapter(context, new TweetDatabase(mTwitter.searchTweets(get,id),context)); } 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 2b07cec1..3bf3162e 100644 --- a/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java +++ b/app/src/main/java/org/nuclearfog/twidda/database/TweetDatabase.java @@ -5,7 +5,6 @@ import android.content.Context; import android.content.SharedPreferences; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; - import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; @@ -26,9 +25,9 @@ public class TweetDatabase { private List userId,tweetId,timeMillis; private List noRT,noFav, verify; private boolean toggleImg; + private int limit; private int size = 0; private int mode = 0; - private int limit; private long CurrentId = 0; /** @@ -67,24 +66,18 @@ public class TweetDatabase { */ public TweetDatabase(List stats, Context context) { initialize(context); - insert(stats); + add(stats); } /** - * Add new Elements to the Lists and store into Database + * Add new Elements to the List * @param stats List of Tweets + * @param store if True, data will be stored in SQL */ - public void add(List stats) { - store(stats); - insertNew(stats); - } - - /** - * Add new Elements without storing - * @param stats list of Tweets - */ - public void addHot(List stats) { - insertNew(stats); + public void insert(List stats, boolean store) { + if(store) + store(stats); + addFirst(stats); } /** @@ -276,7 +269,7 @@ public class TweetDatabase { initArray(); } - private void insert(List stats) { + private void add(List stats) { for(Status stat: stats) { Status rtStat = stat.getRetweetedStatus(); User usr = stat.getUser(); @@ -285,7 +278,7 @@ public class TweetDatabase { stat = rtStat; usr = rtStat.getUser(); } else { - retweeter.add(" "); + retweeter.add("\0"); } user.add(usr.getName()); scrname.add('@'+usr.getScreenName()); @@ -301,7 +294,7 @@ public class TweetDatabase { } } - private void insertNew(List stats) { + private void addFirst(List stats) { for(int index = stats.size()-1 ; index >=0 ; index--) { Status stat = stats.get(index); Status rtStat = stat.getRetweetedStatus(); diff --git a/app/src/main/res/layout/login.xml b/app/src/main/res/layout/login.xml index dfa5d4c5..0b162670 100644 --- a/app/src/main/res/layout/login.xml +++ b/app/src/main/res/layout/login.xml @@ -15,7 +15,8 @@ android:layout_height="wrap_content" android:layout_marginBottom="40dp" android:background="@android:color/darker_gray" - android:text="@string/register_link" /> + android:text="@string/register_link" + android:textSize="12sp" /> + android:text="@string/verifierbutton" + android:textSize="12sp" /> \ No newline at end of file diff --git a/app/src/main/res/layout/profile.xml b/app/src/main/res/layout/profile.xml index cf876bd4..b8a4229f 100644 --- a/app/src/main/res/layout/profile.xml +++ b/app/src/main/res/layout/profile.xml @@ -72,9 +72,10 @@ + android:layout_marginBottom="2dp" + android:singleLine="true" /> + android:layout_marginBottom="2dp" + android:singleLine="true" /> diff --git a/app/src/main/res/layout/trend.xml b/app/src/main/res/layout/trend.xml index a6a7f9d2..f4a82565 100644 --- a/app/src/main/res/layout/trend.xml +++ b/app/src/main/res/layout/trend.xml @@ -15,6 +15,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="5dp" + android:singleLine="true" android:textSize="20sp" /> diff --git a/app/src/main/res/layout/tweet.xml b/app/src/main/res/layout/tweet.xml index 7687b75a..1703a185 100644 --- a/app/src/main/res/layout/tweet.xml +++ b/app/src/main/res/layout/tweet.xml @@ -62,7 +62,8 @@ + android:layout_height="wrap_content" + android:singleLine="true" /> diff --git a/app/src/main/res/layout/tweet_detail.xml b/app/src/main/res/layout/tweet_detail.xml index eda6e1c0..988757f2 100644 --- a/app/src/main/res/layout/tweet_detail.xml +++ b/app/src/main/res/layout/tweet_detail.xml @@ -39,12 +39,14 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="5dp" + android:singleLine="true" android:textSize="12sp" /> @@ -84,12 +86,14 @@ + android:layout_height="wrap_content" + android:singleLine="true" /> + android:layout_height="wrap_content" + android:singleLine="true" /> @@ -108,6 +112,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:linksClickable="false" + android:singleLine="true" android:textSize="12sp" />