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

Commit 82a951ab authored by Charles Chen's avatar Charles Chen Committed by Automerger Merge Worker
Browse files

Merge "Revert "Revert "Enable IMS and its config context to obtain UI...

Merge "Revert "Revert "Enable IMS and its config context to obtain UI component""" into rvc-dev am: 8deb612a am: f9ccadb0 am: 2712b5e4 am: 718528f4

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12004931

Change-Id: I669e79f51cd8a2390c53308b30cbe1d94a3b39c5
parents 24c5984a 718528f4
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1900,11 +1900,13 @@ class ContextImpl extends Context {

    @Override
    public Object getSystemService(String name) {
        // We may override this API from outer context.
        final boolean isUiContext = isUiContext() || getOuterContext().isUiContext();
        // Check incorrect Context usage.
        if (isUiComponent(name) && !isUiContext() && vmIncorrectContextUseEnabled()) {
        if (isUiComponent(name) && !isUiContext && vmIncorrectContextUseEnabled()) {
            final String errorMessage = "Tried to access visual service "
                    + SystemServiceRegistry.getSystemServiceClassName(name)
                    + " from a non-visual Context. ";
                    + " from a non-visual Context:" + getOuterContext();
            final String message = "Visual services, such as WindowManager, WallpaperService or "
                    + "LayoutInflater should be accessed from Activity or other visual Context. "
                    + "Use an Activity or a Context created with "
@@ -2370,6 +2372,7 @@ class ContextImpl extends Context {
        context.setResources(createResources(mToken, mPackageInfo, mSplitName, displayId,
                overrideConfiguration, getDisplayAdjustments(displayId).getCompatibilityInfo(),
                mResources.getLoaders()));
        context.mIsUiContext = isUiContext() || getOuterContext().isUiContext();
        return context;
    }

+3 −2
Original line number Diff line number Diff line
@@ -500,12 +500,13 @@ public class ViewConfiguration {
     */
    public static ViewConfiguration get(Context context) {
        if (!context.isUiContext() && vmIncorrectContextUseEnabled()) {
            final String errorMessage = "Tried to access UI constants from a non-visual Context.";
            final String errorMessage = "Tried to access UI constants from a non-visual Context:"
                    + context;
            final String message = "UI constants, such as display metrics or window metrics, "
                    + "must be accessed from Activity or other visual Context. "
                    + "Use an Activity or a Context created with "
                    + "Context#createWindowContext(int, Bundle), which are adjusted to the "
                    + "configuration and visual bounds of an area on screen.";
                    + "configuration and visual bounds of an area on screen";
            final Exception exception = new IllegalArgumentException(errorMessage);
            StrictMode.onIncorrectContextUsed(message, exception);
            Log.e(TAG, errorMessage + message, exception);