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

Commit b5714042 authored by Dan Sandler's avatar Dan Sandler
Browse files

Block touches from descendants of an invisible panel.

This defends against a certain class of bugs where swiping
down the notification shade stops working because those gestures
are being sent to the shade contents rather than the panel
dragging code.

Bug: 178277858
Test: none; this adds robustness to broken states
Change-Id: Id088f20599cb272611c141948de6c6303b536960
parent 13a11f78
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -27,7 +27,6 @@ import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
import android.annotation.Nullable;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.SystemClock;
@@ -1243,7 +1242,10 @@ public abstract class PanelViewController {
                    mVelocityTracker.clear();
                    break;
            }
            return false;

            // Finally, if none of the above cases applies, ensure that touches do not get handled
            // by the contents of a panel that is not showing (a bit of a hack to avoid b/178277858)
            return (mView.getVisibility() != View.VISIBLE);
        }

        @Override