Better handling & fixing of settings behavior on Android 1.5 phones

pull/14/head
Tim Su 15 years ago
parent 5eb20de821
commit 6d4a7536ee

@ -280,12 +280,11 @@ public class Notifications extends BroadcastReceiver {
notificationManager.notify(notificationId, notification); notificationManager.notify(notificationId, notification);
if (voiceReminder) { if (voiceReminder) {
for(int i = 0; i < 50; i++) { for(int i = 0; i < 50; i++) {
AndroidUtilities.sleepDeep(100);
if(audioManager.getMode() != AudioManager.MODE_RINGTONE) if(audioManager.getMode() != AudioManager.MODE_RINGTONE)
break; break;
AndroidUtilities.sleepDeep(100);
} }
try { try {
System.err.println("QUEUESPEAK " + text);
VoiceOutputService.getVoiceOutputInstance().queueSpeak(text); VoiceOutputService.getVoiceOutputInstance().queueSpeak(text);
} catch (VerifyError e) { } catch (VerifyError e) {
// unavailable // unavailable

@ -34,6 +34,7 @@
<CheckBoxPreference <CheckBoxPreference
android:key="@string/p_voiceInputCreatesTask" android:key="@string/p_voiceInputCreatesTask"
android:title="@string/EPr_voiceInputCreatesTask_title" android:title="@string/EPr_voiceInputCreatesTask_title"
android:dependency="@string/p_voiceInputEnabled"
android:defaultValue="false" /> android:defaultValue="false" />
<CheckBoxPreference <CheckBoxPreference
android:key="@string/p_voiceRemindersEnabled" android:key="@string/p_voiceRemindersEnabled"

@ -22,7 +22,6 @@ import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.preference.CheckBoxPreference; import android.preference.CheckBoxPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceCategory; import android.preference.PreferenceCategory;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
@ -219,31 +218,36 @@ public class EditPreferences extends TodorooPreferences {
} }
} }
// statistics service
else if (r.getString(R.string.p_statistics).equals(preference.getKey())) {
if (value != null && !(Boolean)value)
preference.setSummary(R.string.EPr_statistics_desc_disabled);
else
preference.setSummary(R.string.EPr_statistics_desc_enabled);
}
// voice input and output // voice input and output
else if (r.getString(R.string.p_voiceInputEnabled).equals(preference.getKey())) { if(!addOnService.hasPowerPack())
return;
if (r.getString(R.string.p_voiceInputEnabled).equals(preference.getKey())) {
if (value != null && !(Boolean)value) if (value != null && !(Boolean)value)
preference.setSummary(R.string.EPr_voiceInputEnabled_desc_disabled); preference.setSummary(R.string.EPr_voiceInputEnabled_desc_disabled);
else else
preference.setSummary(R.string.EPr_voiceInputEnabled_desc_enabled); preference.setSummary(R.string.EPr_voiceInputEnabled_desc_enabled);
onVoiceInputStatusChanged(preference, (Boolean)value);
} else if (r.getString(R.string.p_voiceRemindersEnabled).equals(preference.getKey())) { } else if (r.getString(R.string.p_voiceRemindersEnabled).equals(preference.getKey())) {
if (value != null && !(Boolean)value) if (value != null && !(Boolean)value)
preference.setSummary(R.string.EPr_voiceRemindersEnabled_desc_disabled); preference.setSummary(R.string.EPr_voiceRemindersEnabled_desc_disabled);
else else
preference.setSummary(R.string.EPr_voiceRemindersEnabled_desc_enabled); preference.setSummary(R.string.EPr_voiceRemindersEnabled_desc_enabled);
onVoiceReminderStatusChanged(preference, (Boolean)value);
} else if (r.getString(R.string.p_voiceInputCreatesTask).equals(preference.getKey())) { } else if (r.getString(R.string.p_voiceInputCreatesTask).equals(preference.getKey())) {
if (value != null && !(Boolean)value) if (value != null && !(Boolean)value)
preference.setSummary(R.string.EPr_voiceInputCreatesTask_desc_disabled); preference.setSummary(R.string.EPr_voiceInputCreatesTask_desc_disabled);
else else
preference.setSummary(R.string.EPr_voiceInputCreatesTask_desc_enabled); preference.setSummary(R.string.EPr_voiceInputCreatesTask_desc_enabled);
} }
// statistics service
else if (r.getString(R.string.p_statistics).equals(preference.getKey())) {
if (value != null && !(Boolean)value)
preference.setSummary(R.string.EPr_statistics_desc_disabled);
else
preference.setSummary(R.string.EPr_statistics_desc_enabled);
}
} }
@Override @Override
@ -257,34 +261,19 @@ public class EditPreferences extends TodorooPreferences {
} }
public void addPreferenceListeners() { public void addPreferenceListeners() {
Resources r = getResources(); //
findPreference(r.getString(R.string.p_voiceInputEnabled)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference pref, Object newValue) {
onVoiceInputStatusChanged(pref, (Boolean)newValue);
return true;
}
});
findPreference(r.getString(R.string.p_voiceRemindersEnabled)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference pref, Object newValue) {
onVoiceReminderStatusChanged(pref, (Boolean)newValue);
return true;
}
});
} }
private void onVoiceReminderStatusChanged(Preference preference, boolean newValue) { private void onVoiceReminderStatusChanged(final Preference preference, boolean newValue) {
System.err.println
("!!!! LAJLKSDJDS " + newValue);
if(!newValue)
return;
try { try {
VoiceOutputService.getVoiceOutputInstance().checkIsTTSInstalled(); VoiceOutputService.getVoiceOutputInstance();
if(newValue)
VoiceOutputService.getVoiceOutputInstance().checkIsTTSInstalled();
} catch (VerifyError e) { } catch (VerifyError e) {
((CheckBoxPreference)preference).setChecked(false); // doesn't work :(
preference.setEnabled(false);
Preferences.setBoolean(preference.getKey(), false);
} }
} }
@ -335,10 +324,10 @@ public class EditPreferences extends TodorooPreferences {
r.getString(R.string.EPr_voiceInputUnavailable_dlg), r.getString(R.string.EPr_voiceInputUnavailable_dlg),
new OnClickListener() { new OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, public void onClick(DialogInterface dialog1,
int which) { int which1) {
((CheckBoxPreference)preference).setChecked(false); ((CheckBoxPreference)preference).setChecked(false);
dialog.dismiss(); dialog1.dismiss();
} }
}); });
} }

@ -30,7 +30,7 @@ public final class Constants {
/** /**
* Whether to turn on debugging logging and UI * Whether to turn on debugging logging and UI
*/ */
public static final boolean DEBUG = true; public static final boolean DEBUG = false;
/** /**
* Upgrade time * Upgrade time

Loading…
Cancel
Save