From 0009892918b9a1f433758ca2a82dd903b4964d99 Mon Sep 17 00:00:00 2001 From: obsproth Date: Wed, 18 Jan 2017 22:25:14 +0900 Subject: [PATCH 1/2] Android: fixed string comparisons. --- .../src/main/java/edu/berkeley/boinc/PrefsFragment.java | 8 ++++---- .../berkeley/boinc/attach/BatchProcessingActivity.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java b/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java index 8999cf6181..0845e702c9 100644 --- a/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java +++ b/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java @@ -343,13 +343,13 @@ public class PrefsFragment extends Fragment { public void onClick(View v) { try{ for(SelectionDialogOption option: options) { - if(option.name == getResources().getString(R.string.prefs_power_source_ac)) + if(option.name.equals(getResources().getString(R.string.prefs_power_source_ac))) BOINCActivity.monitor.setPowerSourceAc(option.selected); - if(option.name == getResources().getString(R.string.prefs_power_source_usb)) + if(option.name.equals(getResources().getString(R.string.prefs_power_source_usb))) BOINCActivity.monitor.setPowerSourceUsb(option.selected); - if(option.name == getResources().getString(R.string.prefs_power_source_wireless)) + if(option.name.equals(getResources().getString(R.string.prefs_power_source_wireless))) BOINCActivity.monitor.setPowerSourceWireless(option.selected); - if(option.name == getResources().getString(R.string.prefs_power_source_battery)) { + if(option.name.equals(getResources().getString(R.string.prefs_power_source_battery))) { clientPrefs.run_on_batteries = option.selected; new WriteClientPrefsAsync().execute(clientPrefs); //async task triggers layout update } diff --git a/android/BOINC/app/src/main/java/edu/berkeley/boinc/attach/BatchProcessingActivity.java b/android/BOINC/app/src/main/java/edu/berkeley/boinc/attach/BatchProcessingActivity.java index b8eaa7036c..2e5f605d1e 100644 --- a/android/BOINC/app/src/main/java/edu/berkeley/boinc/attach/BatchProcessingActivity.java +++ b/android/BOINC/app/src/main/java/edu/berkeley/boinc/attach/BatchProcessingActivity.java @@ -146,7 +146,7 @@ public class BatchProcessingActivity extends FragmentActivity{ // Add data to the intent, the receiving app will decide what to do with it. intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.social_invite_content_title)); - if (android.os.Build.MANUFACTURER.toUpperCase() == "AMAZON") { + if (android.os.Build.MANUFACTURER.toUpperCase().equals("AMAZON")) { intent.putExtra(Intent.EXTRA_TEXT, String.format(getString(R.string.social_invite_content_body), android.os.Build.MANUFACTURER, getString(R.string.social_invite_content_url_amazon))); } else { intent.putExtra(Intent.EXTRA_TEXT, String.format(getString(R.string.social_invite_content_body), android.os.Build.MANUFACTURER, getString(R.string.social_invite_content_url_google))); From bef7c0d9b3b231434a8cfcabb67768b956a80b8c Mon Sep 17 00:00:00 2001 From: obsproth Date: Sat, 21 Jan 2017 11:49:24 +0900 Subject: [PATCH 2/2] Android: Simplified handling of power source prefs options --- .../edu/berkeley/boinc/PrefsFragment.java | 39 +++++++++++++------ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java b/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java index 0845e702c9..e25c15334c 100644 --- a/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java +++ b/android/BOINC/app/src/main/java/edu/berkeley/boinc/PrefsFragment.java @@ -329,10 +329,10 @@ public class PrefsFragment extends Fragment { }); }else if(item.ID == R.string.prefs_power_source_header) { final ArrayList options = new ArrayList(); - options.add(new SelectionDialogOption(getResources().getString(R.string.prefs_power_source_ac), BOINCActivity.monitor.getPowerSourceAc())); - options.add(new SelectionDialogOption(getResources().getString(R.string.prefs_power_source_usb), BOINCActivity.monitor.getPowerSourceUsb())); - options.add(new SelectionDialogOption(getResources().getString(R.string.prefs_power_source_wireless), BOINCActivity.monitor.getPowerSourceWireless())); - options.add(new SelectionDialogOption(getResources().getString(R.string.prefs_power_source_battery), clientPrefs.run_on_batteries, true)); + options.add(new SelectionDialogOption(R.string.prefs_power_source_ac, BOINCActivity.monitor.getPowerSourceAc())); + options.add(new SelectionDialogOption(R.string.prefs_power_source_usb, BOINCActivity.monitor.getPowerSourceUsb())); + options.add(new SelectionDialogOption(R.string.prefs_power_source_wireless, BOINCActivity.monitor.getPowerSourceWireless())); + options.add(new SelectionDialogOption(R.string.prefs_power_source_battery, clientPrefs.run_on_batteries, true)); ListView lv = (ListView) dialog.findViewById(R.id.selection); new PrefsSelectionDialogListAdapter(getActivity(), lv, R.id.selection, options); @@ -343,16 +343,21 @@ public class PrefsFragment extends Fragment { public void onClick(View v) { try{ for(SelectionDialogOption option: options) { - if(option.name.equals(getResources().getString(R.string.prefs_power_source_ac))) + switch (option.ID){ + case R.string.prefs_power_source_ac: BOINCActivity.monitor.setPowerSourceAc(option.selected); - if(option.name.equals(getResources().getString(R.string.prefs_power_source_usb))) + break; + case R.string.prefs_power_source_usb: BOINCActivity.monitor.setPowerSourceUsb(option.selected); - if(option.name.equals(getResources().getString(R.string.prefs_power_source_wireless))) + break; + case R.string.prefs_power_source_wireless: BOINCActivity.monitor.setPowerSourceWireless(option.selected); - if(option.name.equals(getResources().getString(R.string.prefs_power_source_battery))) { + break; + case R.string.prefs_power_source_battery: clientPrefs.run_on_batteries = option.selected; new WriteClientPrefsAsync().execute(clientPrefs); //async task triggers layout update - } + break; + }; } dialog.dismiss(); } catch(RemoteException e) {} @@ -681,6 +686,7 @@ public class PrefsFragment extends Fragment { public class SelectionDialogOption { public String name; + public Integer ID = null; public Boolean selected = false; public Boolean highlighted = false; @@ -689,14 +695,23 @@ public class PrefsFragment extends Fragment { } public SelectionDialogOption(String name, Boolean selected) { - this.name = name; + this(name); this.selected = selected; } public SelectionDialogOption(String name, Boolean selected, Boolean highlighted) { - this.name = name; - this.selected = selected; + this(name, selected); this.highlighted = highlighted; } + + public SelectionDialogOption(int ID, Boolean selected) { + this(getResources().getString(ID), selected); + this.ID = Integer.valueOf(ID); + } + + public SelectionDialogOption(int ID, Boolean selected, Boolean highlighted) { + this(getResources().getString(ID), selected, highlighted); + this.ID = Integer.valueOf(ID); + } } }