Loading packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java +16 −16 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.systemui.volume; package com.android.systemui.volume; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_GENERIC; import android.accessibilityservice.AccessibilityServiceInfo; import android.accessibilityservice.AccessibilityServiceInfo; import android.animation.LayoutTransition; import android.animation.LayoutTransition; Loading Loading @@ -422,17 +423,15 @@ public class VolumeDialog { protected void rescheduleTimeoutH() { protected void rescheduleTimeoutH() { mHandler.removeMessages(H.DISMISS); mHandler.removeMessages(H.DISMISS); int timeout = -1; final int timeout = computeTimeoutH(); if (!mAccessibility.mFeedbackEnabled) { timeout = computeTimeoutH(); mHandler.sendMessageDelayed(mHandler mHandler.sendMessageDelayed(mHandler .obtainMessage(H.DISMISS, Events.DISMISS_REASON_TIMEOUT, 0), timeout); .obtainMessage(H.DISMISS, Events.DISMISS_REASON_TIMEOUT, 0), timeout); } if (D.BUG) Log.d(TAG, "rescheduleTimeout " + timeout + " " + Debug.getCaller()); if (D.BUG) Log.d(TAG, "rescheduleTimeout " + timeout + " " + Debug.getCaller()); mController.userActivity(); mController.userActivity(); } } private int computeTimeoutH() { private int computeTimeoutH() { if (mAccessibility.mFeedbackEnabled) return 20000; if (mSafetyWarning != null) return 5000; if (mSafetyWarning != null) return 5000; if (mExpanded || mExpanding) return 5000; if (mExpanded || mExpanding) return 5000; if (mActiveStream == AudioManager.STREAM_MUSIC) return 1500; if (mActiveStream == AudioManager.STREAM_MUSIC) return 1500; Loading Loading @@ -959,7 +958,7 @@ public class VolumeDialog { } } } } private final class Accessibility { private final class Accessibility extends AccessibilityDelegate { private AccessibilityManager mMgr; private AccessibilityManager mMgr; private boolean mFeedbackEnabled; private boolean mFeedbackEnabled; Loading @@ -976,14 +975,7 @@ public class VolumeDialog { updateFeedbackEnabled(); updateFeedbackEnabled(); } } }); }); mDialogView.setAccessibilityDelegate(new AccessibilityDelegate() { mDialogView.setAccessibilityDelegate(this); @Override public boolean onRequestSendAccessibilityEvent(ViewGroup host, View child, AccessibilityEvent event) { rescheduleTimeoutH(); return super.onRequestSendAccessibilityEvent(host, child, event); } }); mMgr.addAccessibilityStateChangeListener(new AccessibilityStateChangeListener() { mMgr.addAccessibilityStateChangeListener(new AccessibilityStateChangeListener() { @Override @Override public void onAccessibilityStateChanged(boolean enabled) { public void onAccessibilityStateChanged(boolean enabled) { Loading @@ -993,15 +985,23 @@ public class VolumeDialog { updateFeedbackEnabled(); updateFeedbackEnabled(); } } @Override public boolean onRequestSendAccessibilityEvent(ViewGroup host, View child, AccessibilityEvent event) { rescheduleTimeoutH(); return super.onRequestSendAccessibilityEvent(host, child, event); } private void updateFeedbackEnabled() { private void updateFeedbackEnabled() { mFeedbackEnabled = computeFeedbackEnabled(); mFeedbackEnabled = computeFeedbackEnabled(); } } private boolean computeFeedbackEnabled() { private boolean computeFeedbackEnabled() { // are there any enabled non-generic a11y services? final List<AccessibilityServiceInfo> services = final List<AccessibilityServiceInfo> services = mMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK); mMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK); for (AccessibilityServiceInfo asi : services) { for (AccessibilityServiceInfo asi : services) { if ((asi.feedbackType & FEEDBACK_ALL_MASK) != 0) { if (asi.feedbackType != 0 && asi.feedbackType != FEEDBACK_GENERIC) { return true; return true; } } } } Loading Loading
packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java +16 −16 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.systemui.volume; package com.android.systemui.volume; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_GENERIC; import android.accessibilityservice.AccessibilityServiceInfo; import android.accessibilityservice.AccessibilityServiceInfo; import android.animation.LayoutTransition; import android.animation.LayoutTransition; Loading Loading @@ -422,17 +423,15 @@ public class VolumeDialog { protected void rescheduleTimeoutH() { protected void rescheduleTimeoutH() { mHandler.removeMessages(H.DISMISS); mHandler.removeMessages(H.DISMISS); int timeout = -1; final int timeout = computeTimeoutH(); if (!mAccessibility.mFeedbackEnabled) { timeout = computeTimeoutH(); mHandler.sendMessageDelayed(mHandler mHandler.sendMessageDelayed(mHandler .obtainMessage(H.DISMISS, Events.DISMISS_REASON_TIMEOUT, 0), timeout); .obtainMessage(H.DISMISS, Events.DISMISS_REASON_TIMEOUT, 0), timeout); } if (D.BUG) Log.d(TAG, "rescheduleTimeout " + timeout + " " + Debug.getCaller()); if (D.BUG) Log.d(TAG, "rescheduleTimeout " + timeout + " " + Debug.getCaller()); mController.userActivity(); mController.userActivity(); } } private int computeTimeoutH() { private int computeTimeoutH() { if (mAccessibility.mFeedbackEnabled) return 20000; if (mSafetyWarning != null) return 5000; if (mSafetyWarning != null) return 5000; if (mExpanded || mExpanding) return 5000; if (mExpanded || mExpanding) return 5000; if (mActiveStream == AudioManager.STREAM_MUSIC) return 1500; if (mActiveStream == AudioManager.STREAM_MUSIC) return 1500; Loading Loading @@ -959,7 +958,7 @@ public class VolumeDialog { } } } } private final class Accessibility { private final class Accessibility extends AccessibilityDelegate { private AccessibilityManager mMgr; private AccessibilityManager mMgr; private boolean mFeedbackEnabled; private boolean mFeedbackEnabled; Loading @@ -976,14 +975,7 @@ public class VolumeDialog { updateFeedbackEnabled(); updateFeedbackEnabled(); } } }); }); mDialogView.setAccessibilityDelegate(new AccessibilityDelegate() { mDialogView.setAccessibilityDelegate(this); @Override public boolean onRequestSendAccessibilityEvent(ViewGroup host, View child, AccessibilityEvent event) { rescheduleTimeoutH(); return super.onRequestSendAccessibilityEvent(host, child, event); } }); mMgr.addAccessibilityStateChangeListener(new AccessibilityStateChangeListener() { mMgr.addAccessibilityStateChangeListener(new AccessibilityStateChangeListener() { @Override @Override public void onAccessibilityStateChanged(boolean enabled) { public void onAccessibilityStateChanged(boolean enabled) { Loading @@ -993,15 +985,23 @@ public class VolumeDialog { updateFeedbackEnabled(); updateFeedbackEnabled(); } } @Override public boolean onRequestSendAccessibilityEvent(ViewGroup host, View child, AccessibilityEvent event) { rescheduleTimeoutH(); return super.onRequestSendAccessibilityEvent(host, child, event); } private void updateFeedbackEnabled() { private void updateFeedbackEnabled() { mFeedbackEnabled = computeFeedbackEnabled(); mFeedbackEnabled = computeFeedbackEnabled(); } } private boolean computeFeedbackEnabled() { private boolean computeFeedbackEnabled() { // are there any enabled non-generic a11y services? final List<AccessibilityServiceInfo> services = final List<AccessibilityServiceInfo> services = mMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK); mMgr.getEnabledAccessibilityServiceList(FEEDBACK_ALL_MASK); for (AccessibilityServiceInfo asi : services) { for (AccessibilityServiceInfo asi : services) { if ((asi.feedbackType & FEEDBACK_ALL_MASK) != 0) { if (asi.feedbackType != 0 && asi.feedbackType != FEEDBACK_GENERIC) { return true; return true; } } } } Loading