From aa2b794baeffe7afc8c3c5bbac8b76e8829af84f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Parm=C3=A9nides=20GV?= Date: Mon, 14 Oct 2013 13:08:22 +0200 Subject: Successfully rebased onto progress-bars. --- src/se/leap/bitmaskclient/ConfigurationWizard.java | 32 ++++++++++++---------- src/se/leap/bitmaskclient/ProviderAPI.java | 5 +++- src/se/leap/bitmaskclient/ProviderListAdapter.java | 20 ++++++-------- src/se/leap/bitmaskclient/ProviderListContent.java | 9 ++---- .../leap/bitmaskclient/ProviderListFragment.java | 1 + 5 files changed, 33 insertions(+), 34 deletions(-) (limited to 'src') diff --git a/src/se/leap/bitmaskclient/ConfigurationWizard.java b/src/se/leap/bitmaskclient/ConfigurationWizard.java index cb1d01db..faff4455 100644 --- a/src/se/leap/bitmaskclient/ConfigurationWizard.java +++ b/src/se/leap/bitmaskclient/ConfigurationWizard.java @@ -148,16 +148,14 @@ implements ProviderListFragment.Callbacks, NewProviderDialog.NewProviderDialogIn if(resultData.containsKey(Provider.NAME)) { String provider_id = resultData.getString(Provider.NAME); mSelectedProvider = getProvider(provider_id); - provider_list_fragment.addItem(mSelectedProvider); - ProviderListContent.removeItem(mSelectedProvider); + //provider_list_fragment.addItem(mSelectedProvider); + //ProviderListContent.removeItem(mSelectedProvider); - if(mSelectedProvider.custom) - refreshProviderList(0); + //refreshProviderList(0); if(!mProgressBar.isShown()) { int provider_index = getProviderIndex(provider_id); startProgressBar(provider_index); - provider_list_fragment = (ProviderListFragment) getFragmentManager().findFragmentByTag(ProviderListFragment.TAG); provider_list_fragment.hide(provider_index-2); //setProviderList(provider_list_fragment); } @@ -170,7 +168,7 @@ implements ProviderListFragment.Callbacks, NewProviderDialog.NewProviderDialogIn e.printStackTrace(); mProgressBar.setVisibility(ProgressBar.GONE); progressbar_description.setVisibility(TextView.GONE); - refreshProviderList(0); + //refreshProviderList(0); //Toast.makeText(this, getResources().getString(R.string.config_error_parsing), Toast.LENGTH_LONG); setResult(RESULT_CANCELED, mConfigState); } @@ -193,7 +191,7 @@ implements ProviderListFragment.Callbacks, NewProviderDialog.NewProviderDialogIn mProgressBar.incrementProgressBy(1); mProgressBar.setVisibility(ProgressBar.GONE); progressbar_description.setVisibility(TextView.GONE); - refreshProviderList(0); + //refreshProviderList(0); //Toast.makeText(getApplicationContext(), R.string.success, Toast.LENGTH_LONG).show(); setResult(RESULT_OK); showProviderDetails(getCurrentFocus()); @@ -286,7 +284,7 @@ implements ProviderListFragment.Callbacks, NewProviderDialog.NewProviderDialogIn while(providers_iterator.hasNext()) { ProviderItem provider = providers_iterator.next(); index++; - if(provider.id.equalsIgnoreCase(id)) { + if(provider.name().equalsIgnoreCase(id)) { break; } } @@ -445,18 +443,22 @@ implements ProviderListFragment.Callbacks, NewProviderDialog.NewProviderDialogIn private void showProvider(final String provider_main_url, final boolean danger_on) { String provider_name = provider_main_url.replaceFirst("http[s]?://", "").replaceFirst("\\/", "_"); - boolean custom = true; - final ProviderItem added_provider = new ProviderItem(provider_name, provider_main_url, custom, danger_on); + final ProviderItem added_provider = new ProviderItem(provider_name, provider_main_url, danger_on); + + //ProviderListContent.addItem(added_provider); + provider_list_fragment.addItem(added_provider); + /*ProviderListFragment provider_list_fragment = (ProviderListFragment) getFragmentManager().findFragmentByTag(ProviderListFragment.TAG); + //provider_list_fragment.notifyAdapter(); + provider_list_fragment.addItem(added_provider); + refreshProviderList(0); + runOnUiThread(new Runnable() { @Override public void run() { - // TODO Auto-generated method stub - ProviderListContent.addItem(added_provider); - ProviderListFragment provider_list_fragment = (ProviderListFragment) getFragmentManager().findFragmentByTag("providerlist"); - provider_list_fragment.notifyAdapter(); + provider_list_fragment.addItem(added_provider); } - }); + });*/ } /** diff --git a/src/se/leap/bitmaskclient/ProviderAPI.java b/src/se/leap/bitmaskclient/ProviderAPI.java index c9da5c63..ddf1b9f8 100644 --- a/src/se/leap/bitmaskclient/ProviderAPI.java +++ b/src/se/leap/bitmaskclient/ProviderAPI.java @@ -485,7 +485,9 @@ public class ProviderAPI extends IntentService { private Bundle updateProviderDotJSON(Bundle task) { Bundle result = new Bundle(); boolean danger_on = task.getBoolean(ProviderItem.DANGER_ON); - String provider_json_url = task.getString(Provider.MAIN_URL) + "/provider.json"; + String provider_main_url = task.getString(Provider.MAIN_URL); + String provider_name = provider_main_url.replaceFirst("http[s]?://", "").replaceFirst("\\/", "_"); + String provider_json_url = provider_main_url + "/provider.json"; try { String provider_dot_json_string = downloadWithCommercialCA(provider_json_url, danger_on); @@ -500,6 +502,7 @@ public class ProviderAPI extends IntentService { } else { ConfigHelper.saveSharedPref(EIP.ALLOWED_ANON, provider_json.getJSONObject(Provider.SERVICE).getBoolean(EIP.ALLOWED_ANON)); + result.putString(Provider.NAME, added_provider.name()); result.putBoolean(RESULT_KEY, true); result.putString(Provider.KEY, provider_json.toString()); result.putBoolean(ProviderItem.DANGER_ON, danger_on); diff --git a/src/se/leap/bitmaskclient/ProviderListAdapter.java b/src/se/leap/bitmaskclient/ProviderListAdapter.java index 19c4f72c..bb1318fc 100644 --- a/src/se/leap/bitmaskclient/ProviderListAdapter.java +++ b/src/se/leap/bitmaskclient/ProviderListAdapter.java @@ -1,5 +1,6 @@ package se.leap.bitmaskclient; +import java.lang.reflect.Array; import java.util.List; import android.content.Context; @@ -10,7 +11,6 @@ import android.widget.ArrayAdapter; import android.widget.TwoLineListItem; public class ProviderListAdapter extends ArrayAdapter { - private T[] items = null; private static boolean[] hidden = null; public void hide(int position) { @@ -42,7 +42,7 @@ public class ProviderListAdapter extends ArrayAdapter { } private int getHiddenCount() { int count = 0; - for(int i=0;i extends ArrayAdapter { @Override public int getCount() { - return (items.length - getHiddenCount()); + return (hidden.length - getHiddenCount()); } public ProviderListAdapter(Context mContext, int layout, List objects) { super(mContext, layout, objects); - items = objects.toArray((T[])new Object[0]); if(hidden == null) { - hidden = new boolean[items.length]; - for (int i = 0; i < items.length; i++) + hidden = new boolean[objects.size()]; + for (int i = 0; i < objects.size(); i++) hidden[i] = false; } } public ProviderListAdapter(Context mContext, int layout, List objects, boolean show_all_providers) { super(mContext, layout, objects); - items = objects.toArray((T[])new Object[0]); if(show_all_providers) { - hidden = new boolean[items.length]; - for (int i = 0; i < items.length; i++) + hidden = new boolean[objects.size()]; + for (int i = 0; i < objects.size(); i++) hidden[i] = false; } } @@ -101,8 +99,8 @@ public class ProviderListAdapter extends ArrayAdapter { row = (TwoLineListItem)convertView; } ProviderListContent.ProviderItem data = ProviderListContent.ITEMS.get(position); - row.getText1().setText(data.domain); - row.getText2().setText(data.name); + row.getText1().setText(data.domain()); + row.getText2().setText(data.name()); return row; } diff --git a/src/se/leap/bitmaskclient/ProviderListContent.java b/src/se/leap/bitmaskclient/ProviderListContent.java index 3695066c..af61dbd6 100644 --- a/src/se/leap/bitmaskclient/ProviderListContent.java +++ b/src/se/leap/bitmaskclient/ProviderListContent.java @@ -61,7 +61,6 @@ public class ProviderListContent { public static class ProviderItem { final public static String CUSTOM = "custom"; final public static String DANGER_ON = "danger_on"; - private boolean custom = false; private String provider_main_url; private String name; private boolean danger_on = false; @@ -80,8 +79,7 @@ public class ProviderListContent { String urls_file_content = new String(urls_file_bytes); JSONObject file_contents = new JSONObject(urls_file_content); provider_main_url = file_contents.getString(Provider.MAIN_URL); - this.name = name; - this.custom = custom; + this.name = name; this.danger_on = danger_on; } catch (JSONException e) { // TODO Auto-generated catch block @@ -99,17 +97,14 @@ public class ProviderListContent { * @param custom if it's a new provider entered by the user or not * @param danger_on if the user trusts completely the new provider */ - public ProviderItem(String name, String provider_main_url, boolean custom, boolean danger_on) { + public ProviderItem(String name, String provider_main_url, boolean danger_on) { this.name = name; this.provider_main_url = provider_main_url; - this.custom = custom; this.danger_on = danger_on; } public String name() { return name; } - public boolean custom() { return custom; } - public String providerMainUrl() { return provider_main_url; } public String domain() { diff --git a/src/se/leap/bitmaskclient/ProviderListFragment.java b/src/se/leap/bitmaskclient/ProviderListFragment.java index 62dcef7a..6a0f2a05 100644 --- a/src/se/leap/bitmaskclient/ProviderListFragment.java +++ b/src/se/leap/bitmaskclient/ProviderListFragment.java @@ -199,6 +199,7 @@ public class ProviderListFragment extends ListFragment { public void addItem(ProviderItem provider) { content_adapter.add(provider); + content_adapter.notifyDataSetChanged(); } public void hide(int position) { -- cgit v1.2.3