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

Commit 6e9636c5 authored by Lucas Dupin's avatar Lucas Dupin
Browse files

Support @left marker

By default cutouts are centered and support a @right marker to allow
them to be right aligned. Let's also support left alignment by
introducing a @left marker.

Test: atest DisplayCutoutTest
Test: manual
Bug: 143222961
Change-Id: Ic5a645bd9f0513f3665f31c8b0f1861585bf30e6
parent 339650b1
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -66,6 +66,7 @@ public final class DisplayCutout {
    private static final String BOTTOM_MARKER = "@bottom";
    private static final String DP_MARKER = "@dp";
    private static final String RIGHT_MARKER = "@right";
    private static final String LEFT_MARKER = "@left";

    /**
     * Category for overlays that allow emulating a display cutout on devices that don't have
@@ -647,6 +648,9 @@ public final class DisplayCutout {
        if (spec.endsWith(RIGHT_MARKER)) {
            offsetX = displayWidth;
            spec = spec.substring(0, spec.length() - RIGHT_MARKER.length()).trim();
        } else if (spec.endsWith(LEFT_MARKER)) {
            offsetX = 0;
            spec = spec.substring(0, spec.length() - LEFT_MARKER.length()).trim();
        } else {
            offsetX = displayWidth / 2f;
        }
+3 −1
Original line number Diff line number Diff line
@@ -3069,7 +3069,9 @@

         The path is assumed to be specified in display coordinates with pixel units and in
         the display's native orientation, with the origin of the coordinate system at the
         center top of the display.
         center top of the display. Optionally, you can append either `@left` or `@right` to the
         end of the path string, in order to change the path origin to either the top left,
         or top right of the display.

         To facilitate writing device-independent emulation overlays, the marker `@dp` can be
         appended after the path string to interpret coordinates in dp instead of px units.