From 784387ef890a5c74b243a45fe4c7e5f0a6007ab9 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Wed, 12 Feb 2014 00:15:05 +0100 Subject: More fine tuning of file import for 4.3/add hint for selecting files --- res/layout/config_converter.xml | 8 ++++++++ res/values/strings.xml | 1 + src/de/blinkt/openvpn/activities/ConfigConverter.java | 3 ++- src/de/blinkt/openvpn/activities/FileSelect.java | 19 +++++++++++-------- src/de/blinkt/openvpn/fragments/InlineFileTab.java | 2 +- 5 files changed, 23 insertions(+), 10 deletions(-) diff --git a/res/layout/config_converter.xml b/res/layout/config_converter.xml index c2927efd..f43d463e 100644 --- a/res/layout/config_converter.xml +++ b/res/layout/config_converter.xml @@ -1,9 +1,17 @@ + Bypass VPN for local networks Username/Password file [Imported from: %s] + Some files could not be found. Please select the files to import the profile: diff --git a/src/de/blinkt/openvpn/activities/ConfigConverter.java b/src/de/blinkt/openvpn/activities/ConfigConverter.java index 792c9796..cc84076d 100644 --- a/src/de/blinkt/openvpn/activities/ConfigConverter.java +++ b/src/de/blinkt/openvpn/activities/ConfigConverter.java @@ -329,7 +329,8 @@ public class ConfigConverter extends ListActivity implements FileSelectCallback fileSelectMap.put(type, fl); fl.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); - ((LinearLayout) findViewById(R.id.config_convert_root)).addView(fl, 1); + ((LinearLayout) findViewById(R.id.config_convert_root)).addView(fl, 2); + findViewById(R.id.files_missing_hint).setVisibility(View.VISIBLE); fl.setData(value, this); int i = getFileLayoutOffset(type); fl.setCaller(this, i, type); diff --git a/src/de/blinkt/openvpn/activities/FileSelect.java b/src/de/blinkt/openvpn/activities/FileSelect.java index 8967b1bf..511dc736 100644 --- a/src/de/blinkt/openvpn/activities/FileSelect.java +++ b/src/de/blinkt/openvpn/activities/FileSelect.java @@ -128,18 +128,18 @@ public class FileSelect extends Activity { String data = ""; - byte[] filedata = readBytesFromFile(ifile) ; + byte[] fileData = readBytesFromFile(ifile) ; if(mBase64Encode) - data += Base64.encodeToString(filedata, Base64.DEFAULT); + data += Base64.encodeToString(fileData, Base64.DEFAULT); else - data += new String(filedata); + data += new String(fileData); mData =data; /* mInlineFragment.setData(data); getActionBar().selectTab(inlineFileTab); */ - saveInlineData(data); + saveInlineData(ifile.getName(), data); } catch (FileNotFoundException e) { fe = e; } catch (IOException e) { @@ -206,11 +206,14 @@ public class FileSelect extends Activity { } - public void saveInlineData(String string) { + public void saveInlineData(String fileName, String string) { Intent intent = new Intent(); - - intent.putExtra(RESULT_DATA,VpnProfile.INLINE_TAG + string); - setResult(Activity.RESULT_OK,intent); + + if(fileName==null) + intent.putExtra(RESULT_DATA, VpnProfile.INLINE_TAG + string); + else + intent.putExtra(RESULT_DATA,VpnProfile.DISPLAYNAME_TAG + fileName + VpnProfile.INLINE_TAG + string); + setResult(Activity.RESULT_OK, intent); finish(); } diff --git a/src/de/blinkt/openvpn/fragments/InlineFileTab.java b/src/de/blinkt/openvpn/fragments/InlineFileTab.java index bd0b70b1..bea22442 100644 --- a/src/de/blinkt/openvpn/fragments/InlineFileTab.java +++ b/src/de/blinkt/openvpn/fragments/InlineFileTab.java @@ -57,7 +57,7 @@ public class InlineFileTab extends Fragment @Override public boolean onOptionsItemSelected(MenuItem item) { if(item.getItemId()==MENU_SAVE){ - ((FileSelect)getActivity()).saveInlineData(mInlineData.getText().toString()); + ((FileSelect)getActivity()).saveInlineData(null, mInlineData.getText().toString()); return true; } return super.onOptionsItemSelected(item); -- cgit v1.2.3