Fix a NPE in replyfragment, and restoring reply after suspend.

captchafix
Florens Douwes 11 years ago
parent 37dfd1c804
commit d22ea3deff
  1. 4
      Clover/app/src/main/java/org/floens/chan/ui/activity/ReplyActivity.java
  2. 22
      Clover/app/src/main/java/org/floens/chan/ui/fragment/ReplyFragment.java

@ -42,7 +42,7 @@ public class ReplyActivity extends Activity {
ThemeHelper.setTheme(this);
if (loadable != null) {
if (loadable != null && savedInstanceState == null) {
getActionBar().setDisplayHomeAsUpEnabled(true);
FragmentTransaction ft = getFragmentManager().beginTransaction();
@ -50,7 +50,7 @@ public class ReplyActivity extends Activity {
ft.commitAllowingStateLoss();
loadable = null;
} else {
} else if (savedInstanceState == null) {
Logger.e(TAG, "ThreadFragment was null, exiting!");
finish();
}

@ -112,6 +112,7 @@ public class ReplyFragment extends DialogFragment {
super.onSaveInstanceState(outState);
loadable.writeToBundle(context, outState);
outState.putBoolean(context.getPackageName() + ".quickmode", quickMode);
}
@Override
@ -123,6 +124,7 @@ public class ReplyFragment extends DialogFragment {
if (loadable == null && savedInstanceState != null) {
loadable = new Loadable();
loadable.readFromBundle(context, savedInstanceState);
quickMode = savedInstanceState.getBoolean(context.getPackageName() + ".quickmode");
}
if (loadable != null) {
@ -170,6 +172,16 @@ public class ReplyFragment extends DialogFragment {
Selection.setSelection(commentView.getText(), commentView.getText().length());
setFile(draft.fileName, draft.file);
if (loadable.isThreadMode()) {
subjectView.setVisibility(View.GONE);
}
if (quickMode) {
nameView.setVisibility(View.GONE);
emailView.setVisibility(View.GONE);
subjectView.setVisibility(View.GONE);
}
getCaptcha();
} else {
Logger.e(TAG, "Loadable in ReplyFragment was null");
@ -239,16 +251,6 @@ public class ReplyFragment extends DialogFragment {
container.findViewById(R.id.reply_captcha).setVisibility(View.GONE);
}
if (quickMode) {
nameView.setVisibility(View.GONE);
emailView.setVisibility(View.GONE);
subjectView.setVisibility(View.GONE);
}
if (loadable.isThreadMode()) {
subjectView.setVisibility(View.GONE);
}
cancelButton = (Button) container.findViewById(R.id.reply_cancel);
cancelButton.setOnClickListener(new OnClickListener() {
@Override

Loading…
Cancel
Save