From ec5317d02e528e981b2eb8aa8ee298c66253435b Mon Sep 17 00:00:00 2001 From: Erwan Croze Date: Thu, 17 Nov 2016 15:47:28 +0100 Subject: [PATCH] Return to linphone login fragment after an error of validation code --- .../linphone/assistant/AssistantActivity.java | 17 +++++++++++++++++ .../CreateAccountCodeActivationFragment.java | 3 ++- .../assistant/LinphoneLoginFragment.java | 11 ++++++++++- submodules/belle-sip | 2 +- submodules/linphone | 2 +- 5 files changed, 31 insertions(+), 4 deletions(-) diff --git a/src/org/linphone/assistant/AssistantActivity.java b/src/org/linphone/assistant/AssistantActivity.java index 46096b8d0..b94cc0b14 100644 --- a/src/org/linphone/assistant/AssistantActivity.java +++ b/src/org/linphone/assistant/AssistantActivity.java @@ -393,6 +393,10 @@ private static AssistantActivity instance; public void displayLoginLinphone() { fragment = new LinphoneLoginFragment(); + Bundle extras = new Bundle(); + extras.putString("Phone", null); + extras.putString("Dialcode", null); + fragment.setArguments(extras); changeFragment(fragment); currentFragment = AssistantFragmentsEnum.LINPHONE_LOGIN; back.setVisibility(View.VISIBLE); @@ -594,6 +598,19 @@ private static AssistantActivity instance; back.setVisibility(View.INVISIBLE); } + public void displayAssistantLinphoneLogin( String phone, String dialcode) { + LinphoneLoginFragment fragment = new LinphoneLoginFragment(); + newAccount = true; + Bundle extras = new Bundle(); + extras.putString("Phone", phone); + extras.putString("Dialcode", dialcode); + fragment.setArguments(extras); + changeFragment(fragment); + + currentFragment = AssistantFragmentsEnum.LINPHONE_LOGIN; + back.setVisibility(View.VISIBLE); + } + public void isAccountVerified(String username) { Toast.makeText(this, getString(R.string.assistant_account_validated), Toast.LENGTH_LONG).show(); hideKeyboard(); diff --git a/src/org/linphone/assistant/CreateAccountCodeActivationFragment.java b/src/org/linphone/assistant/CreateAccountCodeActivationFragment.java index cdac49d69..7a837e9a0 100644 --- a/src/org/linphone/assistant/CreateAccountCodeActivationFragment.java +++ b/src/org/linphone/assistant/CreateAccountCodeActivationFragment.java @@ -160,8 +160,9 @@ public class CreateAccountCodeActivationFragment extends Fragment implements Lin } } else if (status.equals(LinphoneAccountCreator.Status.Failed)) { Toast.makeText(getActivity(), getString(R.string.wizard_server_unavailable), Toast.LENGTH_LONG).show(); - }else { + } else { Toast.makeText(getActivity(), getString(R.string.assistant_error_confirmation_code), Toast.LENGTH_LONG).show(); + AssistantActivity.instance().displayAssistantLinphoneLogin(phone, dialcode); } } diff --git a/src/org/linphone/assistant/LinphoneLoginFragment.java b/src/org/linphone/assistant/LinphoneLoginFragment.java index aa2e29d13..3f42e1a8a 100644 --- a/src/org/linphone/assistant/LinphoneLoginFragment.java +++ b/src/org/linphone/assistant/LinphoneLoginFragment.java @@ -64,6 +64,7 @@ public class LinphoneLoginFragment extends Fragment implements CompoundButton.On private Boolean recoverAccount; private LinphoneAccountCreator accountCreator; private int countryCode; + private String username, phone, dialcode; private ImageView phoneNumberInfo; @Override @@ -104,6 +105,9 @@ public class LinphoneLoginFragment extends Fragment implements CompoundButton.On //Phone number if(getResources().getBoolean(R.bool.use_phone_number_validation)){ + phone = getArguments().getString("Phone"); + dialcode = getArguments().getString("Dialcode"); + getActivity().getApplicationContext(); //Automatically get the country code from the phone TelephonyManager tm = @@ -139,10 +143,15 @@ public class LinphoneLoginFragment extends Fragment implements CompoundButton.On } //Allow user to enter a username instead use the phone number as username - if(getResources().getBoolean(R.bool.assistant_allow_username) ) { + if (getResources().getBoolean(R.bool.assistant_allow_username) ) { useUsername.setVisibility(View.VISIBLE); useUsername.setOnCheckedChangeListener(this); } + + if (phone != null) + phoneNumberEdit.setText(phone); + if (dialcode != null) + dialCode.setText("+"+dialcode); } if(getResources().getBoolean(R.bool.assistant_allow_username)) { diff --git a/submodules/belle-sip b/submodules/belle-sip index 96d9dc552..4da1c5ea4 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 96d9dc552ce67db241aca45df549428f195461af +Subproject commit 4da1c5ea4db5634beeb92ff7300e160446a594e5 diff --git a/submodules/linphone b/submodules/linphone index 1f5cf6053..b1a48fb81 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 1f5cf605310dc96881aa83ff1f74547a70a4dfa4 +Subproject commit b1a48fb8163214474f66674f288b5ffb253ca1d9