gradle dependency update, renamed classes, tweet filter update
This commit is contained in:
parent
8988109707
commit
56c2fc50bf
|
@ -56,7 +56,7 @@ proguardDictionaries {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'androidx.appcompat:appcompat:1.4.2'
|
||||
implementation 'androidx.appcompat:appcompat:1.5.0'
|
||||
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||
implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
|
||||
implementation 'com.google.android.material:material:1.6.1'
|
||||
|
|
|
@ -1758,11 +1758,19 @@ public class Twitter implements GlobalSettings.SettingsListener {
|
|||
* filter tweets from blocked users
|
||||
*/
|
||||
private void filterTweets(List<Tweet> tweets) {
|
||||
Set<Long> exclude = filterDatabase.getExcludeSet();
|
||||
Set<Long> excludedIds = filterDatabase.getFilteredUserIds();
|
||||
for (int pos = tweets.size() - 1; pos >= 0; pos--) {
|
||||
if (exclude.contains(tweets.get(pos).getAuthor().getId())) {
|
||||
long authorId = tweets.get(pos).getAuthor().getId();
|
||||
Tweet embeddedTweet = tweets.get(pos).getEmbeddedTweet();
|
||||
if (excludedIds.contains(authorId)) {
|
||||
tweets.remove(pos);
|
||||
}
|
||||
else if (embeddedTweet != null) {
|
||||
authorId = embeddedTweet.getAuthor().getId();
|
||||
if (excludedIds.contains(authorId)) {
|
||||
tweets.remove(pos);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1770,7 +1778,7 @@ public class Twitter implements GlobalSettings.SettingsListener {
|
|||
* remove blocked users from list
|
||||
*/
|
||||
private void filterUsers(List<User> users) {
|
||||
Set<Long> exclude = filterDatabase.getExcludeSet();
|
||||
Set<Long> exclude = filterDatabase.getFilteredUserIds();
|
||||
for (int pos = users.size() - 1; pos >= 0; pos--) {
|
||||
if (exclude.contains(users.get(pos).getId())) {
|
||||
users.remove(pos);
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.util.List;
|
|||
*
|
||||
* @author nuclearfog
|
||||
*/
|
||||
public class UserExcludeLoader extends AsyncTask<String, Void, Void> {
|
||||
public class FilterLoader extends AsyncTask<String, Void, Void> {
|
||||
|
||||
/**
|
||||
* refresh exclude list
|
||||
|
@ -48,7 +48,7 @@ public class UserExcludeLoader extends AsyncTask<String, Void, Void> {
|
|||
private int mode;
|
||||
|
||||
|
||||
public UserExcludeLoader(UsersActivity activity, int mode) {
|
||||
public FilterLoader(UsersActivity activity, int mode) {
|
||||
super();
|
||||
twitter = Twitter.get(activity);
|
||||
appDatabase = new AppDatabase(activity);
|
||||
|
@ -64,7 +64,7 @@ public class UserExcludeLoader extends AsyncTask<String, Void, Void> {
|
|||
switch (mode) {
|
||||
case REFRESH:
|
||||
List<Long> ids = twitter.getIdBlocklist();
|
||||
filterDatabase.setExcludeList(ids);
|
||||
filterDatabase.setFilteredUserIds(ids);
|
||||
break;
|
||||
|
||||
case MUTE_USER:
|
|
@ -47,11 +47,11 @@ public class FilterDatabase {
|
|||
}
|
||||
|
||||
/**
|
||||
* replace exclude list with a new version
|
||||
* create a new filterlist containing user IDs
|
||||
*
|
||||
* @param ids list of user IDs
|
||||
*/
|
||||
public void setExcludeList(List<Long> ids) {
|
||||
public void setFilteredUserIds(List<Long> ids) {
|
||||
long homeId = settings.getCurrentUserId();
|
||||
String[] args = {Long.toString(homeId)};
|
||||
SQLiteDatabase db = getDbWrite();
|
||||
|
@ -67,11 +67,11 @@ public class FilterDatabase {
|
|||
}
|
||||
|
||||
/**
|
||||
* return current users exclude set containing user IDs
|
||||
* return the current filterlist containing user IDs
|
||||
*
|
||||
* @return a set of user IDs
|
||||
*/
|
||||
public Set<Long> getExcludeSet() {
|
||||
public Set<Long> getFilteredUserIds() {
|
||||
String[] args = {Long.toString(settings.getCurrentUserId())};
|
||||
SQLiteDatabase db = getDbRead();
|
||||
Cursor cursor = db.query(UserExcludeTable.NAME, LIST_ID_COL, LIST_SELECT, args, null, null, null, null);
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
package org.nuclearfog.twidda.ui.activities;
|
||||
|
||||
import static android.os.AsyncTask.Status.RUNNING;
|
||||
import static org.nuclearfog.twidda.backend.async.UserExcludeLoader.BLOCK_USER;
|
||||
import static org.nuclearfog.twidda.backend.async.UserExcludeLoader.MUTE_USER;
|
||||
import static org.nuclearfog.twidda.backend.async.UserExcludeLoader.REFRESH;
|
||||
import static org.nuclearfog.twidda.backend.async.FilterLoader.BLOCK_USER;
|
||||
import static org.nuclearfog.twidda.backend.async.FilterLoader.MUTE_USER;
|
||||
import static org.nuclearfog.twidda.backend.async.FilterLoader.REFRESH;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
|
@ -27,7 +27,7 @@ import com.google.android.material.tabs.TabLayout.Tab;
|
|||
|
||||
import org.nuclearfog.twidda.R;
|
||||
import org.nuclearfog.twidda.adapter.FragmentAdapter;
|
||||
import org.nuclearfog.twidda.backend.async.UserExcludeLoader;
|
||||
import org.nuclearfog.twidda.backend.async.FilterLoader;
|
||||
import org.nuclearfog.twidda.backend.utils.AppStyles;
|
||||
import org.nuclearfog.twidda.backend.utils.ErrorHandler;
|
||||
import org.nuclearfog.twidda.database.GlobalSettings;
|
||||
|
@ -94,7 +94,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
|
|||
public static final int USERLIST_REQUESTS = 0x0948693;
|
||||
|
||||
private GlobalSettings settings;
|
||||
private UserExcludeLoader userExclTask;
|
||||
private FilterLoader userExclTask;
|
||||
|
||||
private Toolbar toolbar;
|
||||
private TabLayout tablayout;
|
||||
|
@ -211,7 +211,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
|
|||
if (item.getItemId() == R.id.menu_exclude_refresh) {
|
||||
if (userExclTask == null || userExclTask.getStatus() != RUNNING) {
|
||||
Toast.makeText(this, R.string.info_refreshing_exclude_list, Toast.LENGTH_SHORT).show();
|
||||
userExclTask = new UserExcludeLoader(this, REFRESH);
|
||||
userExclTask = new FilterLoader(this, REFRESH);
|
||||
userExclTask.execute();
|
||||
}
|
||||
}
|
||||
|
@ -240,12 +240,12 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
|
|||
public boolean onQueryTextSubmit(String query) {
|
||||
if (userExclTask == null || userExclTask.getStatus() != RUNNING) {
|
||||
if (tablayout.getSelectedTabPosition() == 0) {
|
||||
userExclTask = new UserExcludeLoader(this, MUTE_USER);
|
||||
userExclTask = new FilterLoader(this, MUTE_USER);
|
||||
userExclTask.execute(query);
|
||||
return true;
|
||||
}
|
||||
if (tablayout.getSelectedTabPosition() == 1) {
|
||||
userExclTask = new UserExcludeLoader(this, BLOCK_USER);
|
||||
userExclTask = new FilterLoader(this, BLOCK_USER);
|
||||
userExclTask.execute(query);
|
||||
return true;
|
||||
}
|
||||
|
@ -260,7 +260,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
|
|||
}
|
||||
|
||||
/**
|
||||
* called from {@link UserExcludeLoader} if task finished successfully
|
||||
* called from {@link FilterLoader} if task finished successfully
|
||||
*/
|
||||
public void onSuccess(int mode) {
|
||||
switch (mode) {
|
||||
|
@ -281,7 +281,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
|
|||
}
|
||||
|
||||
/**
|
||||
* called from {@link UserExcludeLoader} if an error occurs
|
||||
* called from {@link FilterLoader} if an error occurs
|
||||
*/
|
||||
public void onError(ErrorHandler.TwitterError err) {
|
||||
ErrorHandler.handleFailure(this, err);
|
||||
|
|
Loading…
Reference in New Issue