diff --git a/app/build.gradle b/app/build.gradle index e55afe3b..d562fc81 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -24,6 +24,7 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug { + minifyEnabled false applicationIdSuffix ".debug" versionNameSuffix '.DEBUG' } diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/ImageLoader.java b/app/src/main/java/org/nuclearfog/twidda/backend/ImageLoader.java index a57ebd5d..a5bf1e6a 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/ImageLoader.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/ImageLoader.java @@ -14,6 +14,7 @@ import org.nuclearfog.twidda.R; import org.nuclearfog.twidda.adapter.ImageAdapter; import org.nuclearfog.twidda.window.ImageDetail; +import java.io.InputStream; import java.lang.ref.WeakReference; import java.net.URL; @@ -35,14 +36,17 @@ public class ImageLoader extends AsyncTask { @Override protected Boolean doInBackground(String... links) { try { + int i = 0; images = new Bitmap[links.length]; - for (int i = 0; i < links.length; i++) { - String link = links[i]; + for (String link : links) { if (link.startsWith("/")) - images[i] = BitmapFactory.decodeFile(link); - else - images[i] = BitmapFactory.decodeStream(new URL(link).openStream()); + images[i++] = BitmapFactory.decodeFile(link); + else { + URL u = new URL(link); + InputStream stream = u.openStream(); + images[i++] = BitmapFactory.decodeStream(stream); + } } } catch (Exception err) { if (err.getMessage() != null) diff --git a/app/src/main/java/org/nuclearfog/twidda/fragment/MessageListFragment.java b/app/src/main/java/org/nuclearfog/twidda/fragment/MessageListFragment.java index 35848321..35477f55 100644 --- a/app/src/main/java/org/nuclearfog/twidda/fragment/MessageListFragment.java +++ b/app/src/main/java/org/nuclearfog/twidda/fragment/MessageListFragment.java @@ -33,16 +33,16 @@ public class MessageListFragment extends Fragment implements OnRefreshListener, @Override public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup parent, Bundle param) { + GlobalSettings settings = GlobalSettings.getInstance(getContext()); View v = inflater.inflate(R.layout.fragment_list, parent, false); RecyclerView list = v.findViewById(R.id.fragment_list); reload = v.findViewById(R.id.fragment_reload); - - GlobalSettings settings = GlobalSettings.getInstance(getContext()); + reload.setProgressBackgroundColorSchemeColor(settings.getHighlightColor()); + reload.setOnRefreshListener(this); MessageAdapter adapter = new MessageAdapter(this); adapter.setColor(settings.getHighlightColor(), settings.getFontColor()); adapter.toggleImage(settings.getImageLoad()); - reload.setProgressBackgroundColorSchemeColor(settings.getHighlightColor()); list.setLayoutManager(new LinearLayoutManager(getContext())); list.setHasFixedSize(true); list.setAdapter(adapter); @@ -61,7 +61,7 @@ public class MessageListFragment extends Fragment implements OnRefreshListener, public void onStart() { super.onStart(); if (messageTask == null) { - messageTask = new MessageLoader(root, Mode.LOAD); + messageTask = new MessageLoader(root, Mode.DB); messageTask.execute(); } } diff --git a/app/src/main/java/org/nuclearfog/twidda/fragment/backend/MessageLoader.java b/app/src/main/java/org/nuclearfog/twidda/fragment/backend/MessageLoader.java index 197a0bad..dad7f646 100644 --- a/app/src/main/java/org/nuclearfog/twidda/fragment/backend/MessageLoader.java +++ b/app/src/main/java/org/nuclearfog/twidda/fragment/backend/MessageLoader.java @@ -24,6 +24,7 @@ public class MessageLoader extends AsyncTask { public enum Mode { + DB, LOAD, DEL } @@ -67,6 +68,11 @@ public class MessageLoader extends AsyncTask { long messageId = 0; try { switch (mode) { + case DB: + messages = db.getMessages(); + if (!messages.isEmpty()) + break; + case LOAD: messages = mTwitter.getMessages(); db.storeMessage(messages); diff --git a/app/src/main/java/org/nuclearfog/twidda/fragment/backend/UserLoader.java b/app/src/main/java/org/nuclearfog/twidda/fragment/backend/UserLoader.java index bc879f23..d4d9c36e 100644 --- a/app/src/main/java/org/nuclearfog/twidda/fragment/backend/UserLoader.java +++ b/app/src/main/java/org/nuclearfog/twidda/fragment/backend/UserLoader.java @@ -14,6 +14,7 @@ import org.nuclearfog.twidda.backend.TwitterEngine; import org.nuclearfog.twidda.backend.items.TwitterUser; import java.lang.ref.WeakReference; +import java.util.LinkedList; import java.util.List; import twitter4j.TwitterException; @@ -77,6 +78,7 @@ public class UserLoader extends AsyncTask { break; case FAVORIT: + users = new LinkedList<>(); // TODO not jet implemented in Twitter4J break; case SEARCH: