mirror of
https://github.com/Docile-Alligator/Infinity-For-Reddit.git
synced 2025-10-29 19:44:40 +00:00
Use getOnBackPressedDispatcher().addCallback in PostTextActivity.
This commit is contained in:
parent
bfa3e284a2
commit
822b050020
@ -282,7 +282,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||
int itemId = item.getItemId();
|
||||
if (itemId == android.R.id.home) {
|
||||
finish();
|
||||
triggerBackPress();
|
||||
return true;
|
||||
} else if (itemId == R.id.action_preview_customize_theme_activity) {
|
||||
Intent intent = new Intent(this, CustomThemePreviewActivity.class);
|
||||
|
||||
@ -8,7 +8,6 @@ import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.res.Resources;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Environment;
|
||||
import android.os.Handler;
|
||||
@ -19,6 +18,7 @@ import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.activity.OnBackPressedCallback;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.content.FileProvider;
|
||||
@ -46,12 +46,9 @@ import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
|
||||
import ml.docilealligator.infinityforreddit.subreddit.Flair;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||
import ml.docilealligator.infinityforreddit.thing.SelectThingReturnKey;
|
||||
import ml.docilealligator.infinityforreddit.thing.UploadedImage;
|
||||
import ml.docilealligator.infinityforreddit.account.Account;
|
||||
import ml.docilealligator.infinityforreddit.adapters.MarkdownBottomBarRecyclerViewAdapter;
|
||||
import ml.docilealligator.infinityforreddit.asynctasks.LoadSubredditIcon;
|
||||
@ -64,6 +61,9 @@ import ml.docilealligator.infinityforreddit.databinding.ActivityPostTextBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.SubmitTextOrLinkPostEvent;
|
||||
import ml.docilealligator.infinityforreddit.events.SwitchAccountEvent;
|
||||
import ml.docilealligator.infinityforreddit.services.SubmitPostService;
|
||||
import ml.docilealligator.infinityforreddit.subreddit.Flair;
|
||||
import ml.docilealligator.infinityforreddit.thing.SelectThingReturnKey;
|
||||
import ml.docilealligator.infinityforreddit.thing.UploadedImage;
|
||||
import ml.docilealligator.infinityforreddit.utils.APIUtils;
|
||||
import ml.docilealligator.infinityforreddit.utils.Utils;
|
||||
import retrofit2.Retrofit;
|
||||
@ -375,6 +375,22 @@ public class PostTextActivity extends BaseActivity implements FlairBottomSheetFr
|
||||
binding.markdownBottomBarRecyclerViewPostTextActivity.setLayoutManager(new LinearLayoutManagerBugFixed(this,
|
||||
LinearLayoutManager.HORIZONTAL, true).setStackFromEndAndReturnCurrentObject());
|
||||
binding.markdownBottomBarRecyclerViewPostTextActivity.setAdapter(adapter);
|
||||
|
||||
getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) {
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
if (isPosting) {
|
||||
promptAlertDialog(R.string.exit_when_submit, R.string.exit_when_submit_post_detail);
|
||||
} else {
|
||||
if (!binding.postTitleEditTextPostTextActivity.getText().toString().equals("") || !binding.postTextContentEditTextPostTextActivity.getText().toString().equals("")) {
|
||||
promptAlertDialog(R.string.discard, R.string.discard_detail);
|
||||
} else {
|
||||
setEnabled(false);
|
||||
triggerBackPress();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void loadCurrentAccount() {
|
||||
@ -501,16 +517,7 @@ public class PostTextActivity extends BaseActivity implements FlairBottomSheetFr
|
||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||
int itemId = item.getItemId();
|
||||
if (itemId == android.R.id.home) {
|
||||
if (isPosting) {
|
||||
promptAlertDialog(R.string.exit_when_submit, R.string.exit_when_submit_post_detail);
|
||||
return true;
|
||||
} else {
|
||||
if (!binding.postTitleEditTextPostTextActivity.getText().toString().equals("") || !binding.postTextContentEditTextPostTextActivity.getText().toString().equals("")) {
|
||||
promptAlertDialog(R.string.discard, R.string.discard_detail);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
finish();
|
||||
triggerBackPress();
|
||||
return true;
|
||||
} else if (itemId == R.id.action_preview_post_text_activity) {
|
||||
Intent intent = new Intent(this, FullMarkdownActivity.class);
|
||||
@ -603,19 +610,6 @@ public class PostTextActivity extends BaseActivity implements FlairBottomSheetFr
|
||||
((JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE)).schedule(jobInfo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (isPosting) {
|
||||
promptAlertDialog(R.string.exit_when_submit, R.string.exit_when_submit_post_detail);
|
||||
} else {
|
||||
if (!binding.postTitleEditTextPostTextActivity.getText().toString().equals("") || !binding.postTextContentEditTextPostTextActivity.getText().toString().equals("")) {
|
||||
promptAlertDialog(R.string.discard, R.string.discard_detail);
|
||||
} else {
|
||||
finish();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onSaveInstanceState(@NonNull Bundle outState) {
|
||||
super.onSaveInstanceState(outState);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user