Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06c88414 authored by Adam Lesinski's avatar Adam Lesinski Committed by android-build-merger
Browse files

Merge "Use Activity resources in DecorContext" into nyc-dev

am: 6cc31990

* commit '6cc31990':
  Use Activity resources in DecorContext

Change-Id: I84b65df4644dc08e252a609a0544138228e9e4c9
parents 60ba3b37 6cc31990
Loading
Loading
Loading
Loading
+17 −2
Original line number Diff line number Diff line
@@ -17,22 +17,27 @@
package com.android.internal.policy;

import android.content.Context;
import android.content.res.AssetManager;
import android.content.res.Resources;
import android.view.ContextThemeWrapper;
import android.view.WindowManager;
import android.view.WindowManagerImpl;

/**
 * Context for decor views which can be seeded with pure application context and not depend on the
 * activity, but still provide some of the facilities that Activity has, e.g. themes.
 * activity, but still provide some of the facilities that Activity has,
 * e.g. themes, activity-based resources, etc.
 *
 * @hide
 */
class DecorContext extends ContextThemeWrapper {
    private PhoneWindow mPhoneWindow;
    private WindowManager mWindowManager;
    private Resources mActivityResources;

    public DecorContext(Context context) {
    public DecorContext(Context context, Resources activityResources) {
        super(context, null);
        mActivityResources = activityResources;
    }

    void setPhoneWindow(PhoneWindow phoneWindow) {
@@ -52,4 +57,14 @@ class DecorContext extends ContextThemeWrapper {
        }
        return super.getSystemService(name);
    }

    @Override
    public Resources getResources() {
        return mActivityResources;
    }

    @Override
    public AssetManager getAssets() {
        return mActivityResources.getAssets();
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -2297,7 +2297,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
            if (applicationContext == null) {
                context = getContext();
            } else {
                context = new DecorContext(applicationContext);
                context = new DecorContext(applicationContext, getContext().getResources());
                if (mTheme != -1) {
                    context.setTheme(mTheme);
                }