diff options
author | Adrian Roos <roosa@google.com> | 2017-01-04 00:01:04 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2017-01-04 00:01:07 +0000 |
commit | f39f98f56251b497fa510ff7fda286f9bbd853cd (patch) | |
tree | bc1491a2e9b48a48aea065346e83816264e0070f | |
parent | a50cc714719ffa1f7ab4937a795b89cb3ac10846 (diff) | |
parent | acf90acf137f236db7cf6df8d7c67228ec2c131b (diff) |
Merge "QS - Fix race condition in accessibility" into nyc-mr2-dev
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/qs/QSPanel.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java index bdb488feffa5..61812b6d2a26 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java @@ -345,7 +345,10 @@ public class QSPanel extends LinearLayout implements Tunable, Callback { @Override public void onAnnouncementRequested(CharSequence announcement) { - announceForAccessibility(announcement); + if (announcement != null) { + mHandler.obtainMessage(H.ANNOUNCE_FOR_ACCESSIBILITY, announcement) + .sendToTarget(); + } } }; r.tile.addCallback(callback); @@ -518,10 +521,13 @@ public class QSPanel extends LinearLayout implements Tunable, Callback { private class H extends Handler { private static final int SHOW_DETAIL = 1; private static final int SET_TILE_VISIBILITY = 2; + private static final int ANNOUNCE_FOR_ACCESSIBILITY = 3; @Override public void handleMessage(Message msg) { if (msg.what == SHOW_DETAIL) { handleShowDetail((Record)msg.obj, msg.arg1 != 0); + } else if (msg.what == ANNOUNCE_FOR_ACCESSIBILITY) { + announceForAccessibility((CharSequence)msg.obj); } } } |