Better theme restarting

captchafix
Florens Douwes 11 years ago
parent 181478253d
commit a9ed31714f
  1. 12
      Clover/app/src/main/java/org/floens/chan/ui/activity/BaseActivity.java
  2. 18
      Clover/app/src/main/java/org/floens/chan/ui/activity/SettingsActivity.java

@ -59,6 +59,8 @@ import org.floens.chan.utils.Utils;
import java.util.List;
public abstract class BaseActivity extends Activity implements PanelSlideListener, PinnedManager.PinListener {
public static boolean doRestartOnResume = false;
private final static int ACTION_OPEN_URL = 1;
protected PinnedAdapter pinnedAdapter;
@ -112,6 +114,16 @@ public abstract class BaseActivity extends Activity implements PanelSlideListene
ChanApplication.getPinnedManager().removePinListener(this);
}
@Override
protected void onResume() {
super.onResume();
if (doRestartOnResume) {
doRestartOnResume = false;
recreate();
}
}
private void initPane() {
threadPane.setPanelSlideListener(this);
threadPane.setParallaxDistance(200);

@ -47,24 +47,18 @@ public class SettingsActivity extends Activity {
doingThemeRestart = true;
startActivity(intent);
finish();
doingThemeRestart = false;
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}
@Override
protected void onDestroy() {
super.onDestroy();
protected void onPause() {
super.onPause();
if (doingThemeRestart) {
doingThemeRestart = false;
} else {
if (ThemeHelper.getInstance().getTheme() != lastTheme) {
lastTheme = ThemeHelper.getInstance().getTheme();
Intent intent = new Intent(this, BoardActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
if (ThemeHelper.getInstance().getTheme() != lastTheme) {
lastTheme = ThemeHelper.getInstance().getTheme();
startActivity(intent);
}
BaseActivity.doRestartOnResume = true;
}
}
}

Loading…
Cancel
Save