Merge "fmapp2: Run enable/disable speaker on seperate thread"
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 @@
           @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) {