From 20cde35143f5e9f2808e361ebb674c3bb26feafe Mon Sep 17 00:00:00 2001 From: l Date: Sat, 12 May 2018 00:21:37 +0200 Subject: added NewProviderActivity basics --- .../se/leap/bitmaskclient/AddProviderActivity.java | 92 ++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java (limited to 'app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java') diff --git a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java new file mode 100644 index 00000000..8c7dcbf5 --- /dev/null +++ b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java @@ -0,0 +1,92 @@ +package se.leap.bitmaskclient; + +import android.content.Intent; +import android.os.Bundle; +import android.support.design.widget.FloatingActionButton; +import android.support.design.widget.Snackbar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.util.Log; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.Toast; + +public class AddProviderActivity extends ConfigWizardBaseActivity { + + private EditText editText; + final public static String TAG = "AddProviderActivity"; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + setContentView(R.layout.a_add_provider); + editText = findViewById(R.id.textUri); + if (this.getIntent().getExtras() != null) { + editText.setText(this.getIntent().getExtras().getString("invalid_url")); + } + final Button saveButton = findViewById(R.id.button_save); + saveButton.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + Log.d(TAG, "On Click when save works"); + saveProvider(); + } + }); + + final Button cancelButton = findViewById(R.id.button_cancel); + cancelButton.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + finish(); + //ToDo: Implement this and set testNewURL in ProviderListBaseActivty false!! + /* Intent intent= new Intent(); + intent.putExtra("new_url", entered_url); + setResult(RESULT_NOT_OK, intent); + finish();*/ + } + }); + setUpInitialUI(); + } + + private void setUpInitialUI() { + //ToDo: find out if needed: + // setContentView(R.layout.a_provider_list); + setProviderHeaderText(R.string.add_provider); + hideProgressBar(); + } + + + private void saveProvider() { + String entered_url = editText.getText().toString().trim(); + if (!entered_url.startsWith("https://")) { + if (entered_url.startsWith("http://")) { + entered_url = entered_url.substring("http://".length()); + } + entered_url = "https://".concat(entered_url); + } + Log.d(TAG, "Behind https addition"); + if (validURL(entered_url)) { + Log.d(TAG, "URL seems fine"); + Intent intent = this.getIntent(); + intent.putExtra("new_url", entered_url); + setResult(RESULT_OK, intent); + finish(); + } else { + Log.d(TAG, "Bad URL."); + editText.setText(""); + Toast.makeText(this.getApplicationContext(), R.string.not_valid_url_entered, Toast.LENGTH_LONG).show(); + } + } + + /** + * Checks if the entered url is valid or not. + * + * @param enteredUrl + * @return true if it's not empty nor contains only the protocol. + */ + boolean validURL(String enteredUrl) { + return android.util.Patterns.WEB_URL.matcher(enteredUrl).matches(); + } + + +} -- cgit v1.2.3 From 2fbf5a2cadabb503306af4a59c1f98596784e488 Mon Sep 17 00:00:00 2001 From: lalottacontinua Date: Thu, 14 Jun 2018 23:05:54 +0200 Subject: working version not insecure yet --- .../se/leap/bitmaskclient/AddProviderActivity.java | 85 ++++++++++++++-------- 1 file changed, 53 insertions(+), 32 deletions(-) (limited to 'app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java') diff --git a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java index 8c7dcbf5..13e4e06d 100644 --- a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java +++ b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java @@ -2,34 +2,37 @@ package se.leap.bitmaskclient; import android.content.Intent; import android.os.Bundle; -import android.support.design.widget.FloatingActionButton; -import android.support.design.widget.Snackbar; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; -import android.util.Log; +import android.support.design.widget.TextInputEditText; +import android.support.design.widget.TextInputLayout; +import android.text.Editable; +import android.text.TextWatcher; import android.view.View; import android.widget.Button; -import android.widget.EditText; -import android.widget.Toast; + +import butterknife.InjectView; public class AddProviderActivity extends ConfigWizardBaseActivity { - private EditText editText; final public static String TAG = "AddProviderActivity"; + final public static String EXTRAS_KEY_NEW_URL = "NEW_URL"; + + @InjectView(R.id.text_uri_error) + TextInputLayout urlError; + + @InjectView(R.id.text_uri) + TextInputEditText editUrl; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.a_add_provider); - editText = findViewById(R.id.textUri); if (this.getIntent().getExtras() != null) { - editText.setText(this.getIntent().getExtras().getString("invalid_url")); + editUrl.setText(this.getIntent().getExtras().getString(ProviderListBaseActivity.EXTRAS_KEY_INVALID_URL)); } final Button saveButton = findViewById(R.id.button_save); saveButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { - Log.d(TAG, "On Click when save works"); saveProvider(); } }); @@ -38,44 +41,62 @@ public class AddProviderActivity extends ConfigWizardBaseActivity { cancelButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { finish(); - //ToDo: Implement this and set testNewURL in ProviderListBaseActivty false!! - /* Intent intent= new Intent(); - intent.putExtra("new_url", entered_url); - setResult(RESULT_NOT_OK, intent); - finish();*/ } }); + setUpListeners(); setUpInitialUI(); } private void setUpInitialUI() { - //ToDo: find out if needed: - // setContentView(R.layout.a_provider_list); setProviderHeaderText(R.string.add_provider); hideProgressBar(); } - private void saveProvider() { - String entered_url = editText.getText().toString().trim(); - if (!entered_url.startsWith("https://")) { - if (entered_url.startsWith("http://")) { - entered_url = entered_url.substring("http://".length()); - } - entered_url = "https://".concat(entered_url); - } - Log.d(TAG, "Behind https addition"); + String entered_url = getURL(); if (validURL(entered_url)) { - Log.d(TAG, "URL seems fine"); Intent intent = this.getIntent(); - intent.putExtra("new_url", entered_url); + intent.putExtra(EXTRAS_KEY_NEW_URL, entered_url); setResult(RESULT_OK, intent); finish(); } else { - Log.d(TAG, "Bad URL."); - editText.setText(""); - Toast.makeText(this.getApplicationContext(), R.string.not_valid_url_entered, Toast.LENGTH_LONG).show(); + editUrl.setText(""); + urlError.setError(getString(R.string.not_valid_url_entered)); + } + } + + private void setUpListeners() { + + editUrl.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + } + + @Override + public void afterTextChanged(Editable s) { + if (!validURL(getURL())) { + urlError.setError(getString(R.string.not_valid_url_entered)); + } else { + urlError.setError(null); + } + } + }); + } + + private String getURL() { + String entered_url = editUrl.getText().toString().trim(); + if (entered_url.contains("www.")) entered_url = entered_url.replaceFirst("www.", ""); + if (!entered_url.startsWith("https://")) { + if (entered_url.startsWith("http://")) { + entered_url = entered_url.substring("http://".length()); + } + entered_url = "https://".concat(entered_url); } + return entered_url; } /** -- cgit v1.2.3 From ba94657badcc5a05214a057fa938124bdf1ad47a Mon Sep 17 00:00:00 2001 From: cyBerta Date: Wed, 4 Jul 2018 23:42:45 +0200 Subject: #8886 add layout for tablets and improve tablet and phone layouts in general by implementing dynamic layout changes when keyboard appears --- .../se/leap/bitmaskclient/AddProviderActivity.java | 92 +++------------------- 1 file changed, 9 insertions(+), 83 deletions(-) (limited to 'app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java') diff --git a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java index 13e4e06d..32c78c38 100644 --- a/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java +++ b/app/src/production/java/se/leap/bitmaskclient/AddProviderActivity.java @@ -11,103 +11,29 @@ import android.widget.Button; import butterknife.InjectView; -public class AddProviderActivity extends ConfigWizardBaseActivity { +public class AddProviderActivity extends AddProviderBaseActivity { final public static String TAG = "AddProviderActivity"; - final public static String EXTRAS_KEY_NEW_URL = "NEW_URL"; - @InjectView(R.id.text_uri_error) - TextInputLayout urlError; - - @InjectView(R.id.text_uri) - TextInputEditText editUrl; + @InjectView(R.id.button_save) + Button saveButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.a_add_provider); - if (this.getIntent().getExtras() != null) { - editUrl.setText(this.getIntent().getExtras().getString(ProviderListBaseActivity.EXTRAS_KEY_INVALID_URL)); - } - final Button saveButton = findViewById(R.id.button_save); - saveButton.setOnClickListener(new View.OnClickListener() { - public void onClick(View v) { - saveProvider(); - } - }); - - final Button cancelButton = findViewById(R.id.button_cancel); - cancelButton.setOnClickListener(new View.OnClickListener() { - public void onClick(View v) { - finish(); - } - }); - setUpListeners(); - setUpInitialUI(); - } - - private void setUpInitialUI() { - setProviderHeaderText(R.string.add_provider); - hideProgressBar(); - } + init(); - private void saveProvider() { - String entered_url = getURL(); - if (validURL(entered_url)) { - Intent intent = this.getIntent(); - intent.putExtra(EXTRAS_KEY_NEW_URL, entered_url); - setResult(RESULT_OK, intent); - finish(); - } else { - editUrl.setText(""); - urlError.setError(getString(R.string.not_valid_url_entered)); - } } - private void setUpListeners() { - editUrl.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - } - @Override - public void afterTextChanged(Editable s) { - if (!validURL(getURL())) { - urlError.setError(getString(R.string.not_valid_url_entered)); - } else { - urlError.setError(null); - } + @Override + public void setupSaveButton() { + saveButton.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + saveProvider(); } }); } - - private String getURL() { - String entered_url = editUrl.getText().toString().trim(); - if (entered_url.contains("www.")) entered_url = entered_url.replaceFirst("www.", ""); - if (!entered_url.startsWith("https://")) { - if (entered_url.startsWith("http://")) { - entered_url = entered_url.substring("http://".length()); - } - entered_url = "https://".concat(entered_url); - } - return entered_url; - } - - /** - * Checks if the entered url is valid or not. - * - * @param enteredUrl - * @return true if it's not empty nor contains only the protocol. - */ - boolean validURL(String enteredUrl) { - return android.util.Patterns.WEB_URL.matcher(enteredUrl).matches(); - } - - } -- cgit v1.2.3