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

Commit b9f7e269 authored by Lucas Dupin's avatar Lucas Dupin
Browse files

Be forgiving with accidental horizontal scroll

An accidental horizontal touch, due to vertical fling on the -1 screen
could lead to imperceptible change in zoom, and send a frame to client
composition. This CL adds extra padding to overlay scroll amount, to
avoid these accidental gestures.

Bug: 211245940
Test: https://ui.perfetto.dev/#!/viewer?trace_id=3260c116-c578-6dad-e047-0a327b7d346c
Change-Id: Id05e482c79c1dcc2e1ba73baf8a4a4101797bbd2
parent 46728f64
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -294,6 +294,11 @@ public class DepthController implements StateHandler<LauncherState>,
    }

    public void onOverlayScrollChanged(float progress) {
        // Add some padding to the progress, such we don't change the depth on the last frames of
        // the animation. It's possible that a user flinging the feed quickly would scroll
        // horizontally by accident, causing the device to enter client composition unnecessarily.
        progress = Math.min(progress * 1.1f, 1f);

        // Round out the progress to dedupe frequent, non-perceptable updates
        int progressI = (int) (progress * 256);
        float progressF = Utilities.boundToRange(progressI / 256f, 0f, 1f);