mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2025-02-06 22:54:47 +01:00
Minor improvements to manage multicommunities
This commit is contained in:
parent
421342734c
commit
726eac70a9
@ -122,7 +122,7 @@ public class EditMultiRedditActivity extends BaseActivity {
|
|||||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||||
|
|
||||||
mAccessToken = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCESS_TOKEN, null);
|
mAccessToken = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCESS_TOKEN, null);
|
||||||
mAccountName = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCOUNT_NAME, "-");
|
mAccountName = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCOUNT_QUALIFIED_NAME, "-");
|
||||||
|
|
||||||
if (mAccessToken == null) {
|
if (mAccessToken == null) {
|
||||||
visibilityLinearLayout.setVisibility(View.GONE);
|
visibilityLinearLayout.setVisibility(View.GONE);
|
||||||
@ -144,41 +144,24 @@ public class EditMultiRedditActivity extends BaseActivity {
|
|||||||
|
|
||||||
private void bindView() {
|
private void bindView() {
|
||||||
if (multiReddit == null) {
|
if (multiReddit == null) {
|
||||||
if (mAccessToken == null) {
|
|
||||||
FetchMultiRedditInfo.anonymousFetchMultiRedditInfo(mExecutor, new Handler(),
|
|
||||||
mRedditDataRoomDatabase, multipath, new FetchMultiRedditInfo.FetchMultiRedditInfoListener() {
|
|
||||||
@Override
|
|
||||||
public void success(MultiReddit multiReddit) {
|
|
||||||
EditMultiRedditActivity.this.multiReddit = multiReddit;
|
|
||||||
progressBar.setVisibility(View.GONE);
|
|
||||||
linearLayout.setVisibility(View.VISIBLE);
|
|
||||||
nameEditText.setText(multiReddit.getDisplayName());
|
|
||||||
descriptionEditText.setText(multiReddit.getDescription());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
FetchMultiRedditInfo.anonymousFetchMultiRedditInfo(mExecutor, new Handler(),
|
||||||
public void failed() {
|
mRedditDataRoomDatabase, multipath, mAccountName, new FetchMultiRedditInfo.FetchMultiRedditInfoListener() {
|
||||||
//Will not be called
|
@Override
|
||||||
}
|
public void success(MultiReddit multiReddit) {
|
||||||
});
|
EditMultiRedditActivity.this.multiReddit = multiReddit;
|
||||||
} else {
|
progressBar.setVisibility(View.GONE);
|
||||||
FetchMultiRedditInfo.fetchMultiRedditInfo(mRetrofit, mAccessToken, multipath, new FetchMultiRedditInfo.FetchMultiRedditInfoListener() {
|
linearLayout.setVisibility(View.VISIBLE);
|
||||||
@Override
|
nameEditText.setText(multiReddit.getDisplayName());
|
||||||
public void success(MultiReddit multiReddit) {
|
descriptionEditText.setText(multiReddit.getDescription());
|
||||||
EditMultiRedditActivity.this.multiReddit = multiReddit;
|
}
|
||||||
progressBar.setVisibility(View.GONE);
|
|
||||||
linearLayout.setVisibility(View.VISIBLE);
|
@Override
|
||||||
nameEditText.setText(multiReddit.getDisplayName());
|
public void failed() {
|
||||||
descriptionEditText.setText(multiReddit.getDescription());
|
//Will not be called
|
||||||
visibilitySwitch.setChecked(!multiReddit.getVisibility().equals("public"));
|
}
|
||||||
}
|
});
|
||||||
|
|
||||||
@Override
|
|
||||||
public void failed() {
|
|
||||||
Snackbar.make(coordinatorLayout, R.string.cannot_fetch_multireddit, Snackbar.LENGTH_SHORT).show();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
progressBar.setVisibility(View.GONE);
|
progressBar.setVisibility(View.GONE);
|
||||||
linearLayout.setVisibility(View.VISIBLE);
|
linearLayout.setVisibility(View.VISIBLE);
|
||||||
@ -215,39 +198,24 @@ public class EditMultiRedditActivity extends BaseActivity {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mAccessToken == null) {
|
|
||||||
String name = nameEditText.getText().toString();
|
|
||||||
multiReddit.setDisplayName(name);
|
|
||||||
multiReddit.setName(name);
|
|
||||||
multiReddit.setDescription(descriptionEditText.getText().toString());
|
|
||||||
EditMultiReddit.anonymousEditMultiReddit(mExecutor, new Handler(), mRedditDataRoomDatabase,
|
|
||||||
multiReddit, new EditMultiReddit.EditMultiRedditListener() {
|
|
||||||
@Override
|
|
||||||
public void success() {
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
String name = nameEditText.getText().toString();
|
||||||
public void failed() {
|
multiReddit.setDisplayName(name);
|
||||||
//Will not be called
|
multiReddit.setName(name);
|
||||||
}
|
multiReddit.setDescription(descriptionEditText.getText().toString());
|
||||||
});
|
EditMultiReddit.anonymousEditMultiReddit(mExecutor, new Handler(), mRedditDataRoomDatabase,
|
||||||
} else {
|
multiReddit, new EditMultiReddit.EditMultiRedditListener() {
|
||||||
/*String jsonModel = new MultiRedditJSONModel(nameEditText.getText().toString(), descriptionEditText.getText().toString(),
|
@Override
|
||||||
visibilitySwitch.isChecked(), multiReddit.getSubreddits()).createJSONModel();
|
public void success() {
|
||||||
EditMultiReddit.editMultiReddit(mRetrofit, mAccessToken, multiReddit.getPath(),
|
finish();
|
||||||
jsonModel, new EditMultiReddit.EditMultiRedditListener() {
|
}
|
||||||
@Override
|
|
||||||
public void success() {
|
@Override
|
||||||
finish();
|
public void failed() {
|
||||||
}
|
//Will not be called
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
@Override
|
|
||||||
public void failed() {
|
|
||||||
Snackbar.make(coordinatorLayout, R.string.edit_multi_reddit_failed, Snackbar.LENGTH_SHORT).show();
|
|
||||||
}
|
|
||||||
});*/
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -63,7 +63,6 @@ import eu.toldi.infinityforlemmy.events.SwitchAccountEvent;
|
|||||||
import eu.toldi.infinityforlemmy.fragments.FollowedUsersListingFragment;
|
import eu.toldi.infinityforlemmy.fragments.FollowedUsersListingFragment;
|
||||||
import eu.toldi.infinityforlemmy.fragments.MultiRedditListingFragment;
|
import eu.toldi.infinityforlemmy.fragments.MultiRedditListingFragment;
|
||||||
import eu.toldi.infinityforlemmy.fragments.SubscribedSubredditsListingFragment;
|
import eu.toldi.infinityforlemmy.fragments.SubscribedSubredditsListingFragment;
|
||||||
import eu.toldi.infinityforlemmy.multireddit.DeleteMultiReddit;
|
|
||||||
import eu.toldi.infinityforlemmy.multireddit.FetchMyMultiReddits;
|
import eu.toldi.infinityforlemmy.multireddit.FetchMyMultiReddits;
|
||||||
import eu.toldi.infinityforlemmy.multireddit.MultiReddit;
|
import eu.toldi.infinityforlemmy.multireddit.MultiReddit;
|
||||||
import eu.toldi.infinityforlemmy.subreddit.SubredditData;
|
import eu.toldi.infinityforlemmy.subreddit.SubredditData;
|
||||||
@ -386,7 +385,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
|
|||||||
FetchMyMultiReddits.fetchMyMultiReddits(mOauthRetrofit, mAccessToken, new FetchMyMultiReddits.FetchMyMultiRedditsListener() {
|
FetchMyMultiReddits.fetchMyMultiReddits(mOauthRetrofit, mAccessToken, new FetchMyMultiReddits.FetchMyMultiRedditsListener() {
|
||||||
@Override
|
@Override
|
||||||
public void success(ArrayList<MultiReddit> multiReddits) {
|
public void success(ArrayList<MultiReddit> multiReddits) {
|
||||||
InsertMultireddit.insertMultireddits(mExecutor, new Handler(), mRedditDataRoomDatabase, multiReddits, mAccountName, () -> {
|
InsertMultireddit.insertMultireddits(mExecutor, new Handler(), mRedditDataRoomDatabase, multiReddits, mAccountQualifiedName, () -> {
|
||||||
mInsertMultiredditSuccess = true;
|
mInsertMultiredditSuccess = true;
|
||||||
sectionsPagerAdapter.stopMultiRedditRefreshProgressbar();
|
sectionsPagerAdapter.stopMultiRedditRefreshProgressbar();
|
||||||
});
|
});
|
||||||
@ -408,27 +407,11 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
|
|||||||
.setMessage(R.string.delete_multi_reddit_dialog_message)
|
.setMessage(R.string.delete_multi_reddit_dialog_message)
|
||||||
.setPositiveButton(R.string.delete, (dialogInterface, i)
|
.setPositiveButton(R.string.delete, (dialogInterface, i)
|
||||||
-> {
|
-> {
|
||||||
if (mAccessToken == null) {
|
|
||||||
DeleteMultiredditInDatabase.deleteMultiredditInDatabase(mExecutor, new Handler(), mRedditDataRoomDatabase, mAccountName, multiReddit.getPath(),
|
|
||||||
() -> Toast.makeText(SubscribedThingListingActivity.this,
|
|
||||||
R.string.delete_multi_reddit_success, Toast.LENGTH_SHORT).show());
|
|
||||||
} else {
|
|
||||||
DeleteMultiReddit.deleteMultiReddit(mExecutor, new Handler(), mOauthRetrofit, mRedditDataRoomDatabase,
|
|
||||||
mAccessToken, mAccountName, multiReddit.getPath(), new DeleteMultiReddit.DeleteMultiRedditListener() {
|
|
||||||
@Override
|
|
||||||
public void success() {
|
|
||||||
Toast.makeText(SubscribedThingListingActivity.this,
|
|
||||||
R.string.delete_multi_reddit_success, Toast.LENGTH_SHORT).show();
|
|
||||||
//loadMultiReddits();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
DeleteMultiredditInDatabase.deleteMultiredditInDatabase(mExecutor, new Handler(), mRedditDataRoomDatabase, mAccountQualifiedName, multiReddit.getPath(),
|
||||||
public void failed() {
|
() -> Toast.makeText(SubscribedThingListingActivity.this,
|
||||||
Toast.makeText(SubscribedThingListingActivity.this,
|
R.string.delete_multi_reddit_success, Toast.LENGTH_SHORT).show());
|
||||||
R.string.delete_multi_reddit_failed, Toast.LENGTH_SHORT).show();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
.setNegativeButton(R.string.cancel, null)
|
.setNegativeButton(R.string.cancel, null)
|
||||||
.show();
|
.show();
|
||||||
|
@ -13,11 +13,7 @@ public class DeleteMultiredditInDatabase {
|
|||||||
String accountName, String multipath,
|
String accountName, String multipath,
|
||||||
DeleteMultiredditInDatabaseListener deleteMultiredditInDatabaseListener) {
|
DeleteMultiredditInDatabaseListener deleteMultiredditInDatabaseListener) {
|
||||||
executor.execute(() -> {
|
executor.execute(() -> {
|
||||||
if (accountName.equals("-")) {
|
redditDataRoomDatabase.multiRedditDao().anonymousDeleteMultiReddit(multipath);
|
||||||
redditDataRoomDatabase.multiRedditDao().anonymousDeleteMultiReddit(multipath);
|
|
||||||
} else {
|
|
||||||
redditDataRoomDatabase.multiRedditDao().deleteMultiReddit(multipath, accountName);
|
|
||||||
}
|
|
||||||
handler.post(deleteMultiredditInDatabaseListener::success);
|
handler.post(deleteMultiredditInDatabaseListener::success);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -50,10 +50,10 @@ public class FetchMultiRedditInfo {
|
|||||||
|
|
||||||
public static void anonymousFetchMultiRedditInfo(Executor executor, Handler handler,
|
public static void anonymousFetchMultiRedditInfo(Executor executor, Handler handler,
|
||||||
RedditDataRoomDatabase redditDataRoomDatabase,
|
RedditDataRoomDatabase redditDataRoomDatabase,
|
||||||
String multipath,
|
String multipath, String accountName,
|
||||||
FetchMultiRedditInfoListener fetchMultiRedditInfoListener) {
|
FetchMultiRedditInfoListener fetchMultiRedditInfoListener) {
|
||||||
executor.execute(() -> {
|
executor.execute(() -> {
|
||||||
MultiReddit multiReddit = redditDataRoomDatabase.multiRedditDao().getMultiReddit(multipath, "-");
|
MultiReddit multiReddit = redditDataRoomDatabase.multiRedditDao().getMultiReddit(multipath, accountName);
|
||||||
ArrayList<AnonymousMultiredditSubreddit> anonymousMultiredditSubreddits =
|
ArrayList<AnonymousMultiredditSubreddit> anonymousMultiredditSubreddits =
|
||||||
(ArrayList<AnonymousMultiredditSubreddit>) redditDataRoomDatabase.anonymousMultiredditSubredditDao().getAllAnonymousMultiRedditSubreddits(multipath);
|
(ArrayList<AnonymousMultiredditSubreddit>) redditDataRoomDatabase.anonymousMultiredditSubredditDao().getAllAnonymousMultiRedditSubreddits(multipath);
|
||||||
ArrayList<SubredditWithSelection> subredditNames = new ArrayList<>();
|
ArrayList<SubredditWithSelection> subredditNames = new ArrayList<>();
|
||||||
|
@ -89,10 +89,11 @@
|
|||||||
android:id="@+id/visibility_wrapper_linear_layout_edit_multi_reddit_activity"
|
android:id="@+id/visibility_wrapper_linear_layout_edit_multi_reddit_activity"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="16dp"
|
android:background="?attr/selectableItemBackground"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:focusable="true"
|
android:focusable="true"
|
||||||
android:background="?attr/selectableItemBackground">
|
android:padding="16dp"
|
||||||
|
tools:visibility="gone">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/visibility_text_view_edit_multi_reddit_activity"
|
android:id="@+id/visibility_text_view_edit_multi_reddit_activity"
|
||||||
@ -100,8 +101,8 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="@string/private_multi_reddit"
|
android:text="@string/private_multi_reddit"
|
||||||
android:textSize="?attr/font_default"
|
android:textColor="?attr/primaryTextColor"
|
||||||
android:textColor="?attr/primaryTextColor" />
|
android:textSize="?attr/font_default" />
|
||||||
|
|
||||||
<Switch
|
<Switch
|
||||||
android:id="@+id/visibility_switch_edit_multi_reddit_activity"
|
android:id="@+id/visibility_switch_edit_multi_reddit_activity"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user