mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-28 18:12:31 -06:00
144 lines
4.6 KiB
Java
144 lines
4.6 KiB
Java
package androidx.appcompat.view;
|
|
|
|
import android.content.Context;
|
|
import android.content.ContextWrapper;
|
|
import android.content.res.AssetManager;
|
|
import android.content.res.Configuration;
|
|
import android.content.res.Resources;
|
|
import android.view.LayoutInflater;
|
|
import androidx.appcompat.R;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class ContextThemeWrapper extends ContextWrapper {
|
|
private static Configuration sEmptyConfig;
|
|
private LayoutInflater mInflater;
|
|
private Configuration mOverrideConfiguration;
|
|
private Resources mResources;
|
|
private Resources.Theme mTheme;
|
|
private int mThemeResource;
|
|
|
|
public int getThemeResId() {
|
|
return this.mThemeResource;
|
|
}
|
|
|
|
public ContextThemeWrapper() {
|
|
super(null);
|
|
}
|
|
|
|
public ContextThemeWrapper(Context context, int i) {
|
|
super(context);
|
|
this.mThemeResource = i;
|
|
}
|
|
|
|
public ContextThemeWrapper(Context context, Resources.Theme theme) {
|
|
super(context);
|
|
this.mTheme = theme;
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper
|
|
protected void attachBaseContext(Context context) {
|
|
super.attachBaseContext(context);
|
|
}
|
|
|
|
public void applyOverrideConfiguration(Configuration configuration) {
|
|
if (this.mResources != null) {
|
|
throw new IllegalStateException("getResources() or getAssets() has already been called");
|
|
}
|
|
if (this.mOverrideConfiguration != null) {
|
|
throw new IllegalStateException("Override configuration has already been set");
|
|
}
|
|
this.mOverrideConfiguration = new Configuration(configuration);
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper, android.content.Context
|
|
public Resources getResources() {
|
|
return getResourcesInternal();
|
|
}
|
|
|
|
private Resources getResourcesInternal() {
|
|
if (this.mResources == null) {
|
|
if (this.mOverrideConfiguration == null || isEmptyConfiguration(this.mOverrideConfiguration)) {
|
|
this.mResources = super.getResources();
|
|
} else {
|
|
this.mResources = Api17Impl.createConfigurationContext(this, this.mOverrideConfiguration).getResources();
|
|
}
|
|
}
|
|
return this.mResources;
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper, android.content.Context
|
|
public void setTheme(int i) {
|
|
if (this.mThemeResource != i) {
|
|
this.mThemeResource = i;
|
|
initializeTheme();
|
|
}
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper, android.content.Context
|
|
public Resources.Theme getTheme() {
|
|
Resources.Theme theme = this.mTheme;
|
|
if (theme != null) {
|
|
return theme;
|
|
}
|
|
if (this.mThemeResource == 0) {
|
|
this.mThemeResource = R.style.Theme_AppCompat_Light;
|
|
}
|
|
initializeTheme();
|
|
return this.mTheme;
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper, android.content.Context
|
|
public Object getSystemService(String str) {
|
|
if (!"layout_inflater".equals(str)) {
|
|
return getBaseContext().getSystemService(str);
|
|
}
|
|
if (this.mInflater == null) {
|
|
this.mInflater = LayoutInflater.from(getBaseContext()).cloneInContext(this);
|
|
}
|
|
return this.mInflater;
|
|
}
|
|
|
|
protected void onApplyThemeResource(Resources.Theme theme, int i, boolean z) {
|
|
theme.applyStyle(i, true);
|
|
}
|
|
|
|
private void initializeTheme() {
|
|
boolean z = this.mTheme == null;
|
|
if (z) {
|
|
this.mTheme = getResources().newTheme();
|
|
Resources.Theme theme = getBaseContext().getTheme();
|
|
if (theme != null) {
|
|
this.mTheme.setTo(theme);
|
|
}
|
|
}
|
|
onApplyThemeResource(this.mTheme, this.mThemeResource, z);
|
|
}
|
|
|
|
@Override // android.content.ContextWrapper, android.content.Context
|
|
public AssetManager getAssets() {
|
|
return getResources().getAssets();
|
|
}
|
|
|
|
private static boolean isEmptyConfiguration(Configuration configuration) {
|
|
if (configuration == null) {
|
|
return true;
|
|
}
|
|
if (sEmptyConfig == null) {
|
|
Configuration configuration2 = new Configuration();
|
|
configuration2.fontScale = 0.0f;
|
|
sEmptyConfig = configuration2;
|
|
}
|
|
return configuration.equals(sEmptyConfig);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* loaded from: classes.dex */
|
|
public static class Api17Impl {
|
|
private Api17Impl() {
|
|
}
|
|
|
|
static Context createConfigurationContext(ContextThemeWrapper contextThemeWrapper, Configuration configuration) {
|
|
return contextThemeWrapper.createConfigurationContext(configuration);
|
|
}
|
|
}
|
|
}
|