sanders: dirac: Prevent failures when toggling
Signed-off-by: Ashwin R C <ashwin2001achu@gmail.com> Signed-off-by: utsavbalar1231 <utsavbalar1231@gmail.com> Signed-off-by: ronaxdevil <pratabidya.007@gmail.com>
This commit is contained in:
committed by
ronaxdevil
parent
9967e4db15
commit
b9f5ed218a
@@ -22,6 +22,7 @@ import android.content.Context;
|
|||||||
import android.content.DialogInterface;
|
import android.content.DialogInterface;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.os.Handler;
|
||||||
import android.support.v14.preference.PreferenceFragment;
|
import android.support.v14.preference.PreferenceFragment;
|
||||||
import android.support.v14.preference.SwitchPreference;
|
import android.support.v14.preference.SwitchPreference;
|
||||||
import android.support.v7.preference.ListPreference;
|
import android.support.v7.preference.ListPreference;
|
||||||
@@ -51,6 +52,7 @@ public class DiracSettingsFragment extends PreferenceFragment implements
|
|||||||
private ListPreference mPreset;
|
private ListPreference mPreset;
|
||||||
|
|
||||||
private DiracUtils mDiracUtils;
|
private DiracUtils mDiracUtils;
|
||||||
|
private Handler mHandler = new Handler();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||||
@@ -117,12 +119,28 @@ public class DiracSettingsFragment extends PreferenceFragment implements
|
|||||||
@Override
|
@Override
|
||||||
public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
|
public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
|
||||||
mDiracUtils.setEnabled(isChecked);
|
mDiracUtils.setEnabled(isChecked);
|
||||||
|
|
||||||
mTextView.setText(getString(isChecked ? R.string.switch_bar_on : R.string.switch_bar_off));
|
mTextView.setText(getString(isChecked ? R.string.switch_bar_on : R.string.switch_bar_off));
|
||||||
mSwitchBar.setActivated(isChecked);
|
if (isChecked){
|
||||||
|
mSwitchBar.setEnabled(false);
|
||||||
|
mHandler.postDelayed(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
try{
|
||||||
|
mSwitchBar.setEnabled(true);
|
||||||
|
setEnabled(isChecked);
|
||||||
|
}catch(Exception ignored){
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, 1020);
|
||||||
|
}else{
|
||||||
|
setEnabled(isChecked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
mHeadsetType.setEnabled(isChecked);
|
private void setEnabled(boolean enabled){
|
||||||
mPreset.setEnabled(isChecked);
|
mSwitchBar.setActivated(enabled);
|
||||||
|
mHeadsetType.setEnabled(enabled);
|
||||||
|
mPreset.setEnabled(enabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -86,13 +86,13 @@ public final class DiracUtils {
|
|||||||
public void run() {
|
public void run() {
|
||||||
controller.dispatchMediaButtonEvent(evDownPlay);
|
controller.dispatchMediaButtonEvent(evDownPlay);
|
||||||
}
|
}
|
||||||
}, 500);
|
}, 1000);
|
||||||
mHandler.postDelayed(new Runnable() {
|
mHandler.postDelayed(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
controller.dispatchMediaButtonEvent(evUpPlay);
|
controller.dispatchMediaButtonEvent(evUpPlay);
|
||||||
}
|
}
|
||||||
}, 520);
|
}, 1020);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getMediaControllerPlaybackState(MediaController controller) {
|
private int getMediaControllerPlaybackState(MediaController controller) {
|
||||||
|
|||||||
Reference in New Issue
Block a user