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

Commit 10e4148b authored by Dianne Hackborn's avatar Dianne Hackborn Committed by Android (Google) Code Review
Browse files

Merge "Fix issue #3291173: Problem report for NewsRoom - RSS News Reader" into honeycomb

parents 361d6148 420829ef
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -4268,7 +4268,7 @@ public class Activity extends ContextThemeWrapper
        
        mWindow = PolicyManager.makeNewWindow(this);
        mWindow.setCallback(this);
        mWindow.getLayoutInflater().setFactory2(this);
        mWindow.getLayoutInflater().setPrivateFactory(this);
        if (info.softInputMode != WindowManager.LayoutParams.SOFT_INPUT_STATE_UNSPECIFIED) {
            mWindow.setSoftInputMode(info.softInputMode);
        }
+13 −0
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ public abstract class LayoutInflater {
    private boolean mFactorySet;
    private Factory mFactory;
    private Factory2 mFactory2;
    private Factory2 mPrivateFactory;
    private Filter mFilter;

    private final Object[] mConstructorArgs = new Object[2];
@@ -193,6 +194,7 @@ public abstract class LayoutInflater {
        mContext = newContext;
        mFactory = original.mFactory;
        mFactory2 = original.mFactory2;
        mPrivateFactory = original.mPrivateFactory;
        mFilter = original.mFilter;
    }
    
@@ -299,6 +301,13 @@ public abstract class LayoutInflater {
        }
    }

    /**
     * @hide for use by framework
     */
    public void setPrivateFactory(Factory2 factory) {
        mPrivateFactory = factory;
    }

    /**
     * @return The {@link Filter} currently used by this LayoutInflater to restrict the set of Views
     * that are allowed to be inflated.
@@ -651,6 +660,10 @@ public abstract class LayoutInflater {
            else if (mFactory != null) view = mFactory.onCreateView(name, mContext, attrs);
            else view = null;

            if (view == null && mPrivateFactory != null) {
                view = mPrivateFactory.onCreateView(parent, name, mContext, attrs);
            }
            
            if (view == null) {
                if (-1 == name.indexOf('.')) {
                    view = onCreateView(parent, name, attrs);
+8 −7
Original line number Diff line number Diff line
@@ -11315,13 +11315,13 @@ public class WindowManagerService extends IWindowManager.Stub

        mInputMonitor.thawInputDispatchingLw();

        boolean configChanged;
        
        // While the display is frozen we don't re-compute the orientation
        // to avoid inconsistent states.  However, something interesting
        // could have actually changed during that time so re-evaluate it
        // now to catch that.
        if (updateOrientationFromAppTokensLocked(false)) {
            mH.sendEmptyMessage(H.SEND_NEW_CONFIGURATION);
        }
        configChanged = updateOrientationFromAppTokensLocked(false);

        // A little kludge: a lot could have happened while the
        // display was frozen, so now that we are coming back we
@@ -11336,11 +11336,12 @@ public class WindowManagerService extends IWindowManager.Stub
        
        if (updateRotation) {
            if (DEBUG_ORIENTATION) Slog.d(TAG, "Performing post-rotate rotation");
            boolean changed = setRotationUncheckedLocked(
            configChanged |= setRotationUncheckedLocked(
                    WindowManagerPolicy.USE_LAST_ROTATION, 0, false);
            if (changed) {
                sendNewConfiguration();
        }
        
        if (configChanged) {
            mH.sendEmptyMessage(H.SEND_NEW_CONFIGURATION);
        }
    }