Skip to content

Commit f5c8e7a

Browse files
domdomeggmisaochan
authored andcommitted
Fix #2214: Use Utils.isDarkTheme for consistency (#2268)
1 parent e773a82 commit f5c8e7a

File tree

2 files changed

+7
-24
lines changed

2 files changed

+7
-24
lines changed

app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package fr.free.nrw.commons.settings;
22

33
import android.os.Bundle;
4-
import android.preference.PreferenceManager;
54
import android.support.v7.app.AppCompatDelegate;
65
import android.view.MenuItem;
76

@@ -21,13 +20,6 @@ public class SettingsActivity extends NavigationBaseActivity {
2120
*/
2221
@Override
2322
protected void onCreate(Bundle savedInstanceState) {
24-
// Check prefs on every activity starts
25-
if (PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme",false)) {
26-
setTheme(R.style.DarkAppTheme);
27-
} else {
28-
setTheme(R.style.LightAppTheme);
29-
}
30-
3123
super.onCreate(savedInstanceState);
3224
setContentView(R.layout.activity_settings);
3325

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,28 @@
11
package fr.free.nrw.commons.theme;
22

3-
import android.content.Intent;
43
import android.os.Bundle;
5-
import android.preference.PreferenceManager;
64

75
import fr.free.nrw.commons.R;
6+
import fr.free.nrw.commons.Utils;
87
import fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity;
98

109
public abstract class BaseActivity extends CommonsDaggerAppCompatActivity {
11-
protected boolean currentTheme;
10+
protected boolean wasPreviouslyDarkTheme;
1211

1312
@Override
1413
protected void onCreate(Bundle savedInstanceState) {
15-
boolean currentThemeIsDark = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme", false);
16-
if (currentThemeIsDark){
17-
currentTheme = true;
18-
setTheme(R.style.DarkAppTheme);
19-
} else {
20-
currentTheme = false;
21-
setTheme(R.style.LightAppTheme); // default
22-
}
14+
wasPreviouslyDarkTheme = Utils.isDarkTheme(this);
15+
setTheme(wasPreviouslyDarkTheme ? R.style.DarkAppTheme : R.style.LightAppTheme);
2316
super.onCreate(savedInstanceState);
2417
}
2518

2619
@Override
2720
protected void onResume() {
2821
// Restart activity if theme is changed
29-
boolean newTheme = PreferenceManager.getDefaultSharedPreferences(this).getBoolean("theme", false);
30-
if (currentTheme != newTheme) { //is activity theme changed
31-
Intent intent = getIntent();
32-
finish();
33-
startActivity(intent);
22+
if (wasPreviouslyDarkTheme != Utils.isDarkTheme(this)) {
23+
recreate();
3424
}
25+
3526
super.onResume();
3627
}
3728
}

0 commit comments

Comments
 (0)