mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 20:33:53 +01:00
parent
e773a82206
commit
f5c8e7ad93
2 changed files with 7 additions and 24 deletions
|
|
@ -1,7 +1,6 @@
|
||||||
package fr.free.nrw.commons.settings;
|
package fr.free.nrw.commons.settings;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
import android.support.v7.app.AppCompatDelegate;
|
import android.support.v7.app.AppCompatDelegate;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
|
|
||||||
|
|
@ -21,13 +20,6 @@ public class SettingsActivity extends NavigationBaseActivity {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
// Check prefs on every activity starts
|
|
||||||
if (PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme",false)) {
|
|
||||||
setTheme(R.style.DarkAppTheme);
|
|
||||||
} else {
|
|
||||||
setTheme(R.style.LightAppTheme);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.activity_settings);
|
setContentView(R.layout.activity_settings);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,37 +1,28 @@
|
||||||
package fr.free.nrw.commons.theme;
|
package fr.free.nrw.commons.theme;
|
||||||
|
|
||||||
import android.content.Intent;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
|
|
||||||
import fr.free.nrw.commons.R;
|
import fr.free.nrw.commons.R;
|
||||||
|
import fr.free.nrw.commons.Utils;
|
||||||
import fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity;
|
import fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity;
|
||||||
|
|
||||||
public abstract class BaseActivity extends CommonsDaggerAppCompatActivity {
|
public abstract class BaseActivity extends CommonsDaggerAppCompatActivity {
|
||||||
protected boolean currentTheme;
|
protected boolean wasPreviouslyDarkTheme;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
boolean currentThemeIsDark = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme", false);
|
wasPreviouslyDarkTheme = Utils.isDarkTheme(this);
|
||||||
if (currentThemeIsDark){
|
setTheme(wasPreviouslyDarkTheme ? R.style.DarkAppTheme : R.style.LightAppTheme);
|
||||||
currentTheme = true;
|
|
||||||
setTheme(R.style.DarkAppTheme);
|
|
||||||
} else {
|
|
||||||
currentTheme = false;
|
|
||||||
setTheme(R.style.LightAppTheme); // default
|
|
||||||
}
|
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onResume() {
|
protected void onResume() {
|
||||||
// Restart activity if theme is changed
|
// Restart activity if theme is changed
|
||||||
boolean newTheme = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme", false);
|
if (wasPreviouslyDarkTheme != Utils.isDarkTheme(this)) {
|
||||||
if (currentTheme != newTheme) { //is activity theme changed
|
recreate();
|
||||||
Intent intent = getIntent();
|
|
||||||
finish();
|
|
||||||
startActivity(intent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
super.onResume();
|
super.onResume();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue