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

Commit 645b05a6 authored by Jeff Brown's avatar Jeff Brown Committed by Android (Google) Code Review
Browse files

Merge "Blank all displays including Wifi Display when screen is off." into jb-mr1-dev

parents fe3376b4 8ec0943a
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -305,6 +305,8 @@ public final class DisplayManagerService extends IDisplayManager.Stub {
                    DisplayDevice device = mDisplayDevices.get(i);
                    device.blankLocked();
                }

                scheduleTraversalLocked(false);
            }
        }
    }
@@ -322,6 +324,8 @@ public final class DisplayManagerService extends IDisplayManager.Stub {
                    DisplayDevice device = mDisplayDevices.get(i);
                    device.unblankLocked();
                }

                scheduleTraversalLocked(false);
            }
        }
    }
@@ -755,7 +759,9 @@ public final class DisplayManagerService extends IDisplayManager.Stub {
                    + device.getDisplayDeviceInfoLocked());
            return;
        } else {
            display.configureDisplayInTransactionLocked(device);
            boolean isBlanked = (mAllDisplayBlankStateFromPowerManager
                    == DISPLAY_BLANK_STATE_BLANKED);
            display.configureDisplayInTransactionLocked(device, isBlanked);
        }

        // Update the viewports if needed.
+8 −2
Original line number Diff line number Diff line
@@ -55,6 +55,10 @@ import libcore.util.Objects;
final class LogicalDisplay {
    private final DisplayInfo mBaseDisplayInfo = new DisplayInfo();

    // The layer stack we use when the display has been blanked to prevent any
    // of its content from appearing.
    private static final int BLANK_LAYER_STACK = -1;

    private final int mDisplayId;
    private final int mLayerStack;
    private DisplayInfo mOverrideDisplayInfo; // set by the window manager
@@ -217,13 +221,15 @@ final class LogicalDisplay {
     * where the display is being mirrored.
     *
     * @param device The display device to modify.
     * @param isBlanked True if the device is being blanked.
     */
    public void configureDisplayInTransactionLocked(DisplayDevice device) {
    public void configureDisplayInTransactionLocked(DisplayDevice device,
            boolean isBlanked) {
        final DisplayInfo displayInfo = getDisplayInfoLocked();
        final DisplayDeviceInfo displayDeviceInfo = device.getDisplayDeviceInfoLocked();

        // Set the layer stack.
        device.setLayerStackInTransactionLocked(mLayerStack);
        device.setLayerStackInTransactionLocked(isBlanked ? BLANK_LAYER_STACK : mLayerStack);

        // Set the viewport.
        // This is the area of the logical display that we intend to show on the