Loading core/java/android/app/ContextImpl.java +25 −22 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.app; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.ContentProvider; Loading @@ -30,6 +32,7 @@ import android.content.IntentSender; import android.content.ReceiverCallNotAllowedException; import android.content.ServiceConnection; import android.content.SharedPreferences; import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.IPackageManager; import android.content.pm.PackageManager; Loading Loading @@ -155,10 +158,9 @@ class ContextImpl extends Context { private final String mBasePackageName; private final String mOpPackageName; private final ResourcesManager mResourcesManager; private final Resources mResources; private final Display mDisplay; // may be null if default display private final DisplayAdjustments mDisplayAdjustments = new DisplayAdjustments(); private final @NonNull ResourcesManager mResourcesManager; private final @NonNull Resources mResources; private @Nullable Display mDisplay; // may be null if default display private final int mFlags; Loading Loading @@ -1897,18 +1899,6 @@ class ContextImpl extends Context { mUser, mFlags, display, null, Display.INVALID_DISPLAY); } Display getDisplay() { if (mDisplay != null) { return mDisplay; } return ResourcesManager.getInstance().getAdjustedDisplay( Display.DEFAULT_DISPLAY, mDisplayAdjustments); } private int getDisplayId() { return mDisplay != null ? mDisplay.getDisplayId() : Display.DEFAULT_DISPLAY; } @Override public Context createDeviceProtectedStorageContext() { final int flags = (mFlags & ~Context.CONTEXT_CREDENTIAL_PROTECTED_STORAGE) Loading Loading @@ -1940,9 +1930,24 @@ class ContextImpl extends Context { return (mFlags & Context.CONTEXT_CREDENTIAL_PROTECTED_STORAGE) != 0; } @Override public Display getDisplay() { final DisplayAdjustments displayAdjustments = mResources.getDisplayAdjustments(); if (mDisplay == null) { return mResourcesManager.getAdjustedDisplay(Display.DEFAULT_DISPLAY, displayAdjustments); } if (!mDisplay.getDisplayAdjustments().equals(displayAdjustments)) { mDisplay = mResourcesManager.getAdjustedDisplay(mDisplay.getDisplayId(), displayAdjustments); } return mDisplay; } @Override public DisplayAdjustments getDisplayAdjustments(int displayId) { return mDisplayAdjustments; return mResources.getDisplayAdjustments(); } @Override Loading Loading @@ -2057,11 +2062,6 @@ class ContextImpl extends Context { ? packageInfo.getCompatibilityInfo() : CompatibilityInfo.DEFAULT_COMPATIBILITY_INFO; } mDisplayAdjustments.setCompatibilityInfo(compatInfo); mDisplayAdjustments.setConfiguration(overrideConfiguration); mDisplay = (createDisplayWithId == Display.INVALID_DISPLAY) ? display : ResourcesManager.getInstance().getAdjustedDisplay(displayId, mDisplayAdjustments); Resources resources = packageInfo.getResources(mainThread); if (resources != null) { Loading Loading @@ -2101,6 +2101,9 @@ class ContextImpl extends Context { } mResources = resources; mDisplay = (createDisplayWithId == Display.INVALID_DISPLAY) ? display : mResourcesManager.getAdjustedDisplay(displayId, mResources.getDisplayAdjustments()); if (container != null) { mBasePackageName = container.mBasePackageName; mOpPackageName = container.mOpPackageName; Loading core/java/android/app/Presentation.java +1 −1 Original line number Diff line number Diff line Loading @@ -310,7 +310,7 @@ public class Presentation extends Dialog { final WindowManagerImpl outerWindowManager = (WindowManagerImpl)outerContext.getSystemService(Context.WINDOW_SERVICE); final WindowManagerImpl displayWindowManager = outerWindowManager.createPresentationWindowManager(display); outerWindowManager.createPresentationWindowManager(displayContext); return new ContextThemeWrapper(displayContext, theme) { @Override public Object getSystemService(String name) { Loading core/java/android/app/ResourcesManager.java +5 −4 Original line number Diff line number Diff line Loading @@ -304,10 +304,11 @@ public class ResourcesManager { } private @NonNull ResourcesImpl createResourcesImpl(@NonNull ResourcesKey key) { AssetManager assets = createAssetManager(key); DisplayMetrics dm = getDisplayMetrics(key.mDisplayId); Configuration config = generateConfig(key, dm); ResourcesImpl impl = new ResourcesImpl(assets, dm, config, key.mCompatInfo); final AssetManager assets = createAssetManager(key); final DisplayMetrics dm = getDisplayMetrics(key.mDisplayId); final Configuration config = generateConfig(key, dm); final ResourcesImpl impl = new ResourcesImpl(assets, dm, config, key.mCompatInfo, key.mOverrideConfiguration); if (DEBUG) { Slog.d(TAG, "- creating impl=" + impl + " with key: " + key); } Loading core/java/android/app/SystemServiceRegistry.java +1 −1 Original line number Diff line number Diff line Loading @@ -559,7 +559,7 @@ final class SystemServiceRegistry { new CachedServiceFetcher<WindowManager>() { @Override public WindowManager createService(ContextImpl ctx) { return new WindowManagerImpl(ctx.getDisplay()); return new WindowManagerImpl(ctx); }}); registerService(Context.USER_SERVICE, UserManager.class, Loading core/java/android/content/Context.java +5 −0 Original line number Diff line number Diff line Loading @@ -4277,6 +4277,11 @@ public abstract class Context { */ public abstract DisplayAdjustments getDisplayAdjustments(int displayId); /** * @hide */ public abstract Display getDisplay(); /** * Indicates whether this Context is restricted. * Loading Loading
core/java/android/app/ContextImpl.java +25 −22 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.app; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.ContentProvider; Loading @@ -30,6 +32,7 @@ import android.content.IntentSender; import android.content.ReceiverCallNotAllowedException; import android.content.ServiceConnection; import android.content.SharedPreferences; import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.IPackageManager; import android.content.pm.PackageManager; Loading Loading @@ -155,10 +158,9 @@ class ContextImpl extends Context { private final String mBasePackageName; private final String mOpPackageName; private final ResourcesManager mResourcesManager; private final Resources mResources; private final Display mDisplay; // may be null if default display private final DisplayAdjustments mDisplayAdjustments = new DisplayAdjustments(); private final @NonNull ResourcesManager mResourcesManager; private final @NonNull Resources mResources; private @Nullable Display mDisplay; // may be null if default display private final int mFlags; Loading Loading @@ -1897,18 +1899,6 @@ class ContextImpl extends Context { mUser, mFlags, display, null, Display.INVALID_DISPLAY); } Display getDisplay() { if (mDisplay != null) { return mDisplay; } return ResourcesManager.getInstance().getAdjustedDisplay( Display.DEFAULT_DISPLAY, mDisplayAdjustments); } private int getDisplayId() { return mDisplay != null ? mDisplay.getDisplayId() : Display.DEFAULT_DISPLAY; } @Override public Context createDeviceProtectedStorageContext() { final int flags = (mFlags & ~Context.CONTEXT_CREDENTIAL_PROTECTED_STORAGE) Loading Loading @@ -1940,9 +1930,24 @@ class ContextImpl extends Context { return (mFlags & Context.CONTEXT_CREDENTIAL_PROTECTED_STORAGE) != 0; } @Override public Display getDisplay() { final DisplayAdjustments displayAdjustments = mResources.getDisplayAdjustments(); if (mDisplay == null) { return mResourcesManager.getAdjustedDisplay(Display.DEFAULT_DISPLAY, displayAdjustments); } if (!mDisplay.getDisplayAdjustments().equals(displayAdjustments)) { mDisplay = mResourcesManager.getAdjustedDisplay(mDisplay.getDisplayId(), displayAdjustments); } return mDisplay; } @Override public DisplayAdjustments getDisplayAdjustments(int displayId) { return mDisplayAdjustments; return mResources.getDisplayAdjustments(); } @Override Loading Loading @@ -2057,11 +2062,6 @@ class ContextImpl extends Context { ? packageInfo.getCompatibilityInfo() : CompatibilityInfo.DEFAULT_COMPATIBILITY_INFO; } mDisplayAdjustments.setCompatibilityInfo(compatInfo); mDisplayAdjustments.setConfiguration(overrideConfiguration); mDisplay = (createDisplayWithId == Display.INVALID_DISPLAY) ? display : ResourcesManager.getInstance().getAdjustedDisplay(displayId, mDisplayAdjustments); Resources resources = packageInfo.getResources(mainThread); if (resources != null) { Loading Loading @@ -2101,6 +2101,9 @@ class ContextImpl extends Context { } mResources = resources; mDisplay = (createDisplayWithId == Display.INVALID_DISPLAY) ? display : mResourcesManager.getAdjustedDisplay(displayId, mResources.getDisplayAdjustments()); if (container != null) { mBasePackageName = container.mBasePackageName; mOpPackageName = container.mOpPackageName; Loading
core/java/android/app/Presentation.java +1 −1 Original line number Diff line number Diff line Loading @@ -310,7 +310,7 @@ public class Presentation extends Dialog { final WindowManagerImpl outerWindowManager = (WindowManagerImpl)outerContext.getSystemService(Context.WINDOW_SERVICE); final WindowManagerImpl displayWindowManager = outerWindowManager.createPresentationWindowManager(display); outerWindowManager.createPresentationWindowManager(displayContext); return new ContextThemeWrapper(displayContext, theme) { @Override public Object getSystemService(String name) { Loading
core/java/android/app/ResourcesManager.java +5 −4 Original line number Diff line number Diff line Loading @@ -304,10 +304,11 @@ public class ResourcesManager { } private @NonNull ResourcesImpl createResourcesImpl(@NonNull ResourcesKey key) { AssetManager assets = createAssetManager(key); DisplayMetrics dm = getDisplayMetrics(key.mDisplayId); Configuration config = generateConfig(key, dm); ResourcesImpl impl = new ResourcesImpl(assets, dm, config, key.mCompatInfo); final AssetManager assets = createAssetManager(key); final DisplayMetrics dm = getDisplayMetrics(key.mDisplayId); final Configuration config = generateConfig(key, dm); final ResourcesImpl impl = new ResourcesImpl(assets, dm, config, key.mCompatInfo, key.mOverrideConfiguration); if (DEBUG) { Slog.d(TAG, "- creating impl=" + impl + " with key: " + key); } Loading
core/java/android/app/SystemServiceRegistry.java +1 −1 Original line number Diff line number Diff line Loading @@ -559,7 +559,7 @@ final class SystemServiceRegistry { new CachedServiceFetcher<WindowManager>() { @Override public WindowManager createService(ContextImpl ctx) { return new WindowManagerImpl(ctx.getDisplay()); return new WindowManagerImpl(ctx); }}); registerService(Context.USER_SERVICE, UserManager.class, Loading
core/java/android/content/Context.java +5 −0 Original line number Diff line number Diff line Loading @@ -4277,6 +4277,11 @@ public abstract class Context { */ public abstract DisplayAdjustments getDisplayAdjustments(int displayId); /** * @hide */ public abstract Display getDisplay(); /** * Indicates whether this Context is restricted. * Loading