bug fix, renamed variables, added comments

This commit is contained in:
nuclearfog 2020-12-24 18:33:38 +01:00
parent 72bbf7e814
commit a370ce10ea
No known key found for this signature in database
GPG Key ID: D5490E4A81F97B14
10 changed files with 135 additions and 80 deletions

View File

@ -116,8 +116,9 @@ public class ListDetail extends AppCompatActivity implements OnTabSelectedListen
Bundle param = getIntent().getExtras();
if (param != null) {
boolean currentUserOwnsList;
if (param.containsKey(KEY_LIST_DATA)) {
userList = (UserList) param.getSerializable(KEY_LIST_DATA);
Object data = param.getSerializable(KEY_LIST_DATA);
if (data instanceof UserList) {
userList = (UserList) data;
toolbar.setTitle(userList.getTitle());
toolbar.setSubtitle(userList.getDescription());
currentUserOwnsList = userList.isListOwner();

View File

@ -68,13 +68,16 @@ public class ListPopup extends AppCompatActivity implements OnClickListener, OnD
FontTool.setViewFont(settings, root);
Bundle extras = getIntent().getExtras();
if (extras != null && extras.containsKey(KEY_LIST_EDITOR_DATA)) {
userList = (UserList) extras.getSerializable(KEY_LIST_EDITOR_DATA);
titleInput.setText(userList.getTitle());
subTitleInput.setText(userList.getDescription());
visibility.setChecked(!userList.isPrivate());
popupTitle.setText(R.string.menu_edit_list);
updateButton.setText(R.string.update_list);
if (extras != null) {
Object data = extras.getSerializable(KEY_LIST_EDITOR_DATA);
if (data instanceof UserList) {
userList = (UserList) data;
titleInput.setText(userList.getTitle());
subTitleInput.setText(userList.getDescription());
visibility.setChecked(!userList.isPrivate());
popupTitle.setText(R.string.menu_edit_list);
updateButton.setText(R.string.update_list);
}
}
leaveDialog = DialogBuilder.create(this, LISTPOPUP_LEAVE, this);
updateButton.setOnClickListener(this);

View File

@ -134,8 +134,9 @@ public class TweetActivity extends AppCompatActivity implements OnClickListener,
FragmentAdapter adapter = new FragmentAdapter(getSupportFragmentManager());
if (param != null) {
String username;
if (param.containsKey(KEY_TWEET_DATA)) {
tweet = (Tweet) param.getSerializable(KEY_TWEET_DATA);
Object data = param.getSerializable(KEY_TWEET_DATA);
if (data instanceof Tweet) {
tweet = (Tweet) data;
username = tweet.getUser().getScreenname();
tweetId = tweet.getId();
} else {

View File

@ -1,5 +1,6 @@
package org.nuclearfog.twidda.activity;
import android.annotation.SuppressLint;
import android.app.Dialog;
import android.content.ActivityNotFoundException;
import android.content.Context;
@ -179,6 +180,7 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
}
@SuppressLint("MissingPermission")
@Override
protected void onDestroy() {
if (uploaderAsync != null && uploaderAsync.getStatus() == RUNNING)
@ -457,6 +459,7 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
/**
* Get current GPS location to attach to tweet
*/
@SuppressLint("MissingPermission") // suppressing because of an android studio bug
private void getLocation() {
boolean accessGranted = true;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

View File

@ -197,8 +197,9 @@ public class UserProfile extends AppCompatActivity implements OnClickListener, O
Bundle param = getIntent().getExtras();
if (param != null) {
if (param.containsKey(KEY_PROFILE_DATA)) {
user = (User) param.getSerializable(KEY_PROFILE_DATA);
Object data = param.getSerializable(KEY_PROFILE_DATA);
if (data instanceof User) {
user = (User) data;
userId = user.getId();
username = user.getScreenname();
} else {

View File

@ -41,6 +41,8 @@ public class ListAction extends AsyncTask<Long, Void, UserList> {
private EngineException err;
private Action action;
private long missingListId;
/**
* @param callback Callback to update list information
* @param action what action should be performed
@ -72,6 +74,7 @@ public class ListAction extends AsyncTask<Long, Void, UserList> {
}
} catch (EngineException err) {
this.err = err;
missingListId = ids[0];
}
return null;
}
@ -84,7 +87,7 @@ public class ListAction extends AsyncTask<Long, Void, UserList> {
if (userList != null) {
callback.onSuccess(userList, action);
} else {
callback.onFailure(err, userList.getId());
callback.onFailure(err, missingListId);
}
}
}

View File

@ -23,7 +23,7 @@ public class UserLoader extends AsyncTask<Long, Void, TwitterUserList> {
/**
* actions to perform
*/
public enum Action {
public enum Type {
/**
* load follower list
*/
@ -60,16 +60,16 @@ public class UserLoader extends AsyncTask<Long, Void, TwitterUserList> {
private final WeakReference<UserFragment> callback;
private final TwitterEngine mTwitter;
private final Action action;
private final Type type;
private final String search;
private final long id;
public UserLoader(UserFragment callback, Action action, long id, String search) {
public UserLoader(UserFragment callback, Type type, long id, String search) {
super();
this.callback = new WeakReference<>(callback);
mTwitter = TwitterEngine.getInstance(callback.getContext());
this.action = action;
this.type = type;
this.search = search;
this.id = id;
}
@ -79,7 +79,7 @@ public class UserLoader extends AsyncTask<Long, Void, TwitterUserList> {
protected TwitterUserList doInBackground(Long[] param) {
try {
long cursor = param[0];
switch (action) {
switch (type) {
case FOLLOWS:
return mTwitter.getFollower(id, cursor);

View File

@ -47,25 +47,73 @@ public class TweetFragment extends ListFragment implements TweetClickListener {
*/
public static final String INTENT_TWEET_REMOVED_ID = "tweet_removed_id";
/**
* setup list for home timeline
*/
public static final int TWEET_FRAG_HOME = 1;
/**
* setup list for mention timeline
*/
public static final int TWEET_FRAG_MENT = 2;
/**
* setup list for user tweets
*/
public static final int TWEET_FRAG_TWEETS = 3;
/**
* setup list for user favorites
*/
public static final int TWEET_FRAG_FAVORS = 4;
/**
* setup list for tweet replies
*/
public static final int TWEET_FRAG_ANSWER = 5;
/**
* setup list for search
*/
public static final int TWEET_FRAG_SEARCH = 6;
/**
* setup list for user list tweets
*/
public static final int TWEET_FRAG_LIST = 7;
/**
* replace all items from list
*/
public static final int CLEAR_LIST = -1;
/**
* return code if a tweet was not found
*/
public static final int RETURN_TWEET_CHANGED = 1;
/**
* request code to check for tweet changes
*/
private static final int REQUEST_TWEET_CHANGED = 2;
private TweetLoader tweetTask;
private TweetAdapter adapter;
private String search = "";
private int mode = 0;
private long id = 0;
@Override
protected void onCreated() {
settings = GlobalSettings.getInstance(requireContext());
Bundle param = getArguments();
if (param != null) {
mode = param.getInt(KEY_FRAG_TWEET_MODE, 0);
id = param.getLong(KEY_FRAG_TWEET_ID, 0);
search = param.getString(KEY_FRAG_TWEET_SEARCH, "");
}
}
@ -143,7 +191,6 @@ public class TweetFragment extends ListFragment implements TweetClickListener {
}
}
/**
* Set Tweet data to list
*
@ -159,7 +206,6 @@ public class TweetFragment extends ListFragment implements TweetClickListener {
setRefresh(false);
}
/**
* called from {@link TweetLoader} if an error occurs
*
@ -171,7 +217,6 @@ public class TweetFragment extends ListFragment implements TweetClickListener {
setRefresh(false);
}
/**
* load content into the list
*
@ -180,47 +225,41 @@ public class TweetFragment extends ListFragment implements TweetClickListener {
* @param index index where tweet list should be added
*/
private void load(long sinceId, long maxId, int index) {
Bundle param = getArguments();
if (param != null) {
int mode = param.getInt(KEY_FRAG_TWEET_MODE, 0);
long id = param.getLong(KEY_FRAG_TWEET_ID, 0);
String search = param.getString(KEY_FRAG_TWEET_SEARCH, "");
ListType action = ListType.NONE;
ListType listType = ListType.NONE;
switch (mode) {
case TWEET_FRAG_HOME:
action = ListType.TL_HOME;
break;
switch (mode) {
case TWEET_FRAG_HOME:
listType = ListType.TL_HOME;
break;
case TWEET_FRAG_MENT:
action = ListType.TL_MENT;
break;
case TWEET_FRAG_MENT:
listType = ListType.TL_MENT;
break;
case TWEET_FRAG_TWEETS:
action = ListType.USR_TWEETS;
break;
case TWEET_FRAG_TWEETS:
listType = ListType.USR_TWEETS;
break;
case TWEET_FRAG_FAVORS:
action = ListType.USR_FAVORS;
break;
case TWEET_FRAG_FAVORS:
listType = ListType.USR_FAVORS;
break;
case TWEET_FRAG_ANSWER:
if (tweetTask != null || settings.getAnswerLoad())
action = ListType.REPLIES;
else
action = ListType.DB_ANS;
break;
case TWEET_FRAG_ANSWER:
if (tweetTask != null || settings.getAnswerLoad())
listType = ListType.REPLIES;
else
listType = ListType.DB_ANS;
break;
case TWEET_FRAG_SEARCH:
action = ListType.TWEET_SEARCH;
break;
case TWEET_FRAG_SEARCH:
listType = ListType.TWEET_SEARCH;
break;
case TWEET_FRAG_LIST:
action = ListType.USERLIST;
break;
}
tweetTask = new TweetLoader(this, action, id, search, index);
tweetTask.execute(sinceId, maxId);
case TWEET_FRAG_LIST:
listType = ListType.USERLIST;
break;
}
tweetTask = new TweetLoader(this, listType, id, search, index);
tweetTask.execute(sinceId, maxId);
}
}

View File

@ -12,7 +12,7 @@ import org.nuclearfog.twidda.adapter.UserAdapter.UserClickListener;
import org.nuclearfog.twidda.backend.ListManager;
import org.nuclearfog.twidda.backend.ListManager.ListManagerCallback;
import org.nuclearfog.twidda.backend.UserLoader;
import org.nuclearfog.twidda.backend.UserLoader.Action;
import org.nuclearfog.twidda.backend.UserLoader.Type;
import org.nuclearfog.twidda.backend.engine.EngineException;
import org.nuclearfog.twidda.backend.holder.TwitterUserList;
import org.nuclearfog.twidda.backend.items.User;
@ -39,7 +39,7 @@ public class UserFragment extends ListFragment implements UserClickListener,
public static final String KEY_FRAG_USER_MODE = "user_mode";
/**
* key to define search string
* key to define search string like username
*/
public static final String KEY_FRAG_USER_SEARCH = "user_search";
@ -143,6 +143,7 @@ public class UserFragment extends ListFragment implements UserClickListener,
@Override
protected UserAdapter initAdapter() {
adapter = new UserAdapter(this, settings);
adapter.enableDeleteButton(delUser);
return adapter;
}
@ -233,38 +234,37 @@ public class UserFragment extends ListFragment implements UserClickListener,
* @param cursor cursor of the list or {@link UserLoader#NO_CURSOR} if there is none
*/
private void load(long cursor) {
Action action = Action.NONE;
Type listType = Type.NONE;
switch (mode) {
case USER_FRAG_FOLLOWS:
action = Action.FOLLOWS;
listType = Type.FOLLOWS;
break;
case USER_FRAG_FRIENDS:
action = Action.FRIENDS;
listType = UserLoader.Type.FRIENDS;
break;
case USER_FRAG_RETWEET:
action = Action.RETWEET;
listType = Type.RETWEET;
break;
case USER_FRAG_FAVORIT:
action = Action.FAVORIT;
listType = Type.FAVORIT;
break;
case USER_FRAG_SEARCH:
action = Action.SEARCH;
listType = Type.SEARCH;
break;
case USER_FRAG_SUBSCR:
action = Action.SUBSCRIBER;
listType = Type.SUBSCRIBER;
break;
case USER_FRAG_LISTS:
action = Action.LISTMEMBER;
listType = Type.LISTMEMBER;
break;
}
adapter.enableDeleteButton(delUser);
userTask = new UserLoader(this, action, id, search);
userTask = new UserLoader(this, listType, id, search);
userTask.execute(cursor);
if (cursor == NO_CURSOR) {
setRefresh(true);

View File

@ -74,9 +74,19 @@ public class UserListFragment extends ListFragment implements ListClickListener
private ListLoader listTask;
private ListAdapter adapter;
private String ownerName = "";
private long id = 0;
private int type = 0;
@Override
protected void onCreated() {
Bundle param = getArguments();
if (param != null) {
id = param.getLong(KEY_FRAG_LIST_OWNER_ID, -1);
ownerName = param.getString(KEY_FRAG_LIST_OWNER_NAME, "");
type = param.getInt(KEY_FRAG_LIST_LIST_TYPE);
}
settings = GlobalSettings.getInstance(requireContext());
}
@ -179,18 +189,12 @@ public class UserListFragment extends ListFragment implements ListClickListener
* load content into the list
*/
private void load(long cursor) {
Bundle param = getArguments();
if (param != null) {
long id = param.getLong(KEY_FRAG_LIST_OWNER_ID, -1);
String ownerName = param.getString(KEY_FRAG_LIST_OWNER_NAME, "");
int type = param.getInt(KEY_FRAG_LIST_LIST_TYPE);
if (type == LIST_USER_OWNS) {
listTask = new ListLoader(this, LOAD_USERLISTS, id, ownerName);
listTask.execute(cursor);
} else if (type == LIST_USER_SUBSCR_TO) {
listTask = new ListLoader(this, LOAD_MEMBERSHIPS, id, ownerName);
listTask.execute(cursor);
}
if (type == LIST_USER_OWNS) {
listTask = new ListLoader(this, LOAD_USERLISTS, id, ownerName);
listTask.execute(cursor);
} else if (type == LIST_USER_SUBSCR_TO) {
listTask = new ListLoader(this, LOAD_MEMBERSHIPS, id, ownerName);
listTask.execute(cursor);
}
}
}