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

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

Merge "Suppress haptic feedback for SLEEP key when already asleep." into klp-modular-dev

parents 926e1f01 bae8e77d
Loading
Loading
Loading
Loading
+11 −5
Original line number Diff line number Diff line
@@ -3921,11 +3921,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                    + " policyFlags=" + Integer.toHexString(policyFlags));
        }

        if (down && (policyFlags & WindowManagerPolicy.FLAG_VIRTUAL) != 0
                && event.getRepeatCount() == 0) {
            performHapticFeedbackLw(null, HapticFeedbackConstants.VIRTUAL_KEY, false);
        }

        // Basic policy based on interactive state.
        int result;
        boolean isWakeKey = (policyFlags & (WindowManagerPolicy.FLAG_WAKE
@@ -3948,6 +3943,10 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            return result;
        }

        boolean useHapticFeedback = down
                && (policyFlags & WindowManagerPolicy.FLAG_VIRTUAL) != 0
                && event.getRepeatCount() == 0;

        // Handle special keys.
        switch (keyCode) {
            case KeyEvent.KEYCODE_VOLUME_DOWN:
@@ -4103,6 +4102,9 @@ public class PhoneWindowManager implements WindowManagerPolicy {

            case KeyEvent.KEYCODE_SLEEP: {
                result &= ~ACTION_PASS_TO_USER;
                if (!mPowerManager.isInteractive()) {
                    useHapticFeedback = false; // suppress feedback if already non-interactive
                }
                mPowerManager.goToSleep(event.getEventTime());
                isWakeKey = false;
                break;
@@ -4177,6 +4179,10 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            }
        }

        if (useHapticFeedback) {
            performHapticFeedbackLw(null, HapticFeedbackConstants.VIRTUAL_KEY, false);
        }

        if (isWakeKey) {
            mPowerManager.wakeUp(event.getEventTime());
        }