diff options
author | Ayaz Ahmad <aahmad@codeaurora.org> | 2013-08-28 12:37:00 +0530 |
---|---|---|
committer | Ayaz Ahmad <aahmad@codeaurora.org> | 2013-08-28 12:51:11 +0530 |
commit | c773d515e9c1648692458ae046efda330b2d028a (patch) | |
tree | e19b23e68e3791d189a77f6392c4f16a6e375f2c /fmapp2/src/com/caf/fmradio/FMRadio.java | |
parent | 6316f4f44d8b121f6645aa565ee5749e4cc12345 (diff) | |
download | android_hardware_qcom_fm-c773d515e9c1648692458ae046efda330b2d028a.tar.gz android_hardware_qcom_fm-c773d515e9c1648692458ae046efda330b2d028a.tar.bz2 android_hardware_qcom_fm-c773d515e9c1648692458ae046efda330b2d028a.zip |
fmapp2: Run enable/disable speaker on seperate thread
Continous switching from speaker to headset or vice versa
causes ANR in FM. Speaker to headset or vice versa switch
operation takes few seconds so to avoid ANR run operation in
seperate thread other than UI thread
Change-Id: I761e936f18ddca5200305b41fc375ab9c9ffc830
CRs-Fixed: 507238
Diffstat (limited to 'fmapp2/src/com/caf/fmradio/FMRadio.java')
-rw-r--r-- | fmapp2/src/com/caf/fmradio/FMRadio.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/fmapp2/src/com/caf/fmradio/FMRadio.java b/fmapp2/src/com/caf/fmradio/FMRadio.java index e311172..c33bbbd 100644 --- a/fmapp2/src/com/caf/fmradio/FMRadio.java +++ b/fmapp2/src/com/caf/fmradio/FMRadio.java @@ -1482,10 +1482,21 @@ public class FMRadio extends Activity @Override public void onClick(View v) { // TODO Auto-generated method stub - enableSpeaker(); + mSpeakerButton.setClickable(false); + mSpeakerButton.setOnClickListener(null); + mHandler.removeCallbacks(mEnableRadioTask); + mHandler.postDelayed(mEnableSpeakerTask, 0); } }; + private Runnable mEnableSpeakerTask = new Runnable() { + public void run() { + enableSpeaker(); + mSpeakerButton.setClickable(true); + mSpeakerButton.setOnClickListener(mSpeakerClickListener); + } + }; + private View.OnClickListener mMuteModeClickListener = new View.OnClickListener() { public void onClick(View v) { |