Fix theming issue in CameraContactSelectionFragment.

This commit is contained in:
Greyson Parrelli
2020-02-21 10:30:26 -05:00
parent 739e38a047
commit e62e630987
2 changed files with 20 additions and 14 deletions

View File

@@ -1,13 +1,13 @@
package org.thoughtcrime.securesms.util;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Build;
import androidx.annotation.NonNull;
import androidx.annotation.StyleRes;
import androidx.appcompat.app.AppCompatDelegate;
import org.thoughtcrime.securesms.R;
@@ -35,15 +35,7 @@ public class DynamicTheme {
}
private @StyleRes int getSelectedTheme(Activity activity) {
String theme = TextSecurePreferences.getTheme(activity);
if (theme.equals(SYSTEM) && systemThemeAvailable()) {
if (isSystemInDarkTheme(activity)) {
return getDarkThemeStyle();
} else {
return getLightThemeStyle();
}
} else if (theme.equals(DARK)) {
if (isDarkTheme(activity)) {
return getDarkThemeStyle();
} else {
return getLightThemeStyle();
@@ -62,8 +54,21 @@ public class DynamicTheme {
return Build.VERSION.SDK_INT >= 29;
}
private static boolean isSystemInDarkTheme(@NonNull Activity activity) {
return (activity.getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES;
/**
* Takes the system theme into account.
*/
public static boolean isDarkTheme(@NonNull Context context) {
String theme = TextSecurePreferences.getTheme(context);
if (theme.equals(SYSTEM) && systemThemeAvailable()) {
return isSystemInDarkTheme(context);
} else {
return theme.equals(DARK);
}
}
private static boolean isSystemInDarkTheme(@NonNull Context context) {
return (context.getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES;
}
private static final class OverridePendingTransition {