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

Commit 8deb612a authored by Charles Chen's avatar Charles Chen Committed by Android (Google) Code Review
Browse files

Merge "Revert "Revert "Enable IMS and its config context to obtain UI component""" into rvc-dev

parents 93920d3b ba4ffa4a
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 "
@@ -2369,6 +2371,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);