diff --git a/res/layout/assistant_account_creation.xml b/res/layout/assistant_account_creation.xml
index 109cbfead..d7a17a68c 100644
--- a/res/layout/assistant_account_creation.xml
+++ b/res/layout/assistant_account_creation.xml
@@ -22,14 +22,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
-
-
-
+ android:layout_height="wrap_content">
-
+
+
+
+
+
+
+
+
+ android:layout_height="wrap_content">
-
+
+
+
+
+
+
+
+
+ android:layout_height="wrap_content">
+
-
+
+
+
+
+
+
+ android:layout_height="wrap_content">
-
+
+
-
+
-
-
-
+
-
\ No newline at end of file
+
diff --git a/res/layout/input_dialog.xml b/res/layout/input_dialog.xml
new file mode 100644
index 000000000..bb489dc18
--- /dev/null
+++ b/res/layout/input_dialog.xml
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/org/linphone/assistant/AssistantActivity.java b/src/org/linphone/assistant/AssistantActivity.java
index bf8b69516..aca199db4 100644
--- a/src/org/linphone/assistant/AssistantActivity.java
+++ b/src/org/linphone/assistant/AssistantActivity.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-SetupActivity.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+AssistantActivity.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -21,28 +21,39 @@ import org.linphone.LinphoneActivity;
import org.linphone.LinphoneManager;
import org.linphone.LinphonePreferences;
import org.linphone.LinphonePreferences.AccountBuilder;
+import org.linphone.LinphoneUtils;
import org.linphone.R;
import org.linphone.StatusFragment;
import org.linphone.core.LinphoneAddress;
import org.linphone.core.LinphoneAddress.TransportType;
+import org.linphone.core.LinphoneAuthInfo;
import org.linphone.core.LinphoneCore;
import org.linphone.core.LinphoneCore.RegistrationState;
import org.linphone.core.LinphoneCoreException;
import org.linphone.core.LinphoneCoreFactory;
import org.linphone.core.LinphoneCoreListenerBase;
import org.linphone.core.LinphoneProxyConfig;
+import org.linphone.mediastream.Log;
import android.app.Activity;
+import android.app.Dialog;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.content.Context;
import android.content.pm.ActivityInfo;
+import android.graphics.drawable.ColorDrawable;
+import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
+import android.view.Window;
+import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
+import android.widget.Button;
+import android.widget.EditText;
import android.widget.ImageView;
+import android.widget.TextView;
import android.widget.Toast;
/**
* @author Sylvain Berfini
@@ -70,7 +81,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
initUI();
firstFragment = getResources().getBoolean(R.bool.assistant_use_linphone_login_as_first_fragment) ?
- AssistantFragmentsEnum.LINPHONE_LOGIN : AssistantFragmentsEnum.MENU;
+ AssistantFragmentsEnum.LINPHONE_LOGIN : AssistantFragmentsEnum.WELCOME;
if (findViewById(R.id.fragmentContainer) != null) {
if (savedInstanceState == null) {
display(firstFragment);
@@ -87,10 +98,12 @@ public class AssistantActivity extends Activity implements OnClickListener {
if(address != null && address.asString().equals(cfg.getIdentity()) ) {
if (state == RegistrationState.RegistrationOk) {
if (LinphoneManager.getLc().getDefaultProxyConfig() != null) {
- launchEchoCancellerCalibration(true);
+ //launchEchoCancellerCalibration(true);
+ success();
}
} else if (state == RegistrationState.RegistrationFailed) {
- Toast.makeText(AssistantActivity.this, getString(R.string.first_launch_bad_login_password), Toast.LENGTH_LONG).show();
+ //showDialog(cfg);
+ //Toast.makeText(AssistantActivity.this, getString(R.string.first_launch_bad_login_password), Toast.LENGTH_LONG).show();
}
}
}
@@ -174,15 +187,15 @@ public class AssistantActivity extends Activity implements OnClickListener {
setResult(Activity.RESULT_CANCELED);
finish();
}
- } else if (currentFragment == AssistantFragmentsEnum.GENERIC_LOGIN
+ } else if (currentFragment == AssistantFragmentsEnum.LOGIN
|| currentFragment == AssistantFragmentsEnum.LINPHONE_LOGIN
|| currentFragment == AssistantFragmentsEnum.CREATE_ACCOUNT
|| currentFragment == AssistantFragmentsEnum.REMOTE_PROVISIONING) {
WelcomeFragment fragment = new WelcomeFragment();
changeFragment(fragment);
- currentFragment = AssistantFragmentsEnum.MENU;
+ currentFragment = AssistantFragmentsEnum.WELCOME;
back.setVisibility(View.GONE);
- } else if (currentFragment == AssistantFragmentsEnum.MENU) {
+ } else if (currentFragment == AssistantFragmentsEnum.WELCOME) {
finish();
}
}
@@ -198,7 +211,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
back.setVisibility(View.VISIBLE);
cancel.setEnabled(false);
} else {
- success();
+
}
}
@@ -211,7 +224,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
saveCreatedAccount(username, password, displayName, domain);
if (LinphoneManager.getLc().getDefaultProxyConfig() != null) {
- launchEchoCancellerCalibration(sendEcCalibrationResult);
+ //launchEchoCancellerCalibration(sendEcCalibrationResult);
}
}
@@ -233,12 +246,12 @@ public class AssistantActivity extends Activity implements OnClickListener {
private void display(AssistantFragmentsEnum fragment) {
switch (fragment) {
- case MENU:
- displayMenu();
- break;
- case LINPHONE_LOGIN:
- displayLoginLinphone();
- break;
+ case WELCOME:
+ displayMenu();
+ break;
+ case LINPHONE_LOGIN:
+ displayLoginLinphone();
+ break;
default:
throw new IllegalStateException("Can't handle " + fragment);
}
@@ -247,14 +260,14 @@ public class AssistantActivity extends Activity implements OnClickListener {
public void displayMenu() {
fragment = new WelcomeFragment();
changeFragment(fragment);
- currentFragment = AssistantFragmentsEnum.MENU;
+ currentFragment = AssistantFragmentsEnum.WELCOME;
back.setVisibility(View.GONE);
}
public void displayLoginGeneric() {
fragment = new LoginFragment();
changeFragment(fragment);
- currentFragment = AssistantFragmentsEnum.GENERIC_LOGIN;
+ currentFragment = AssistantFragmentsEnum.LOGIN;
back.setVisibility(View.VISIBLE);
}
@@ -265,8 +278,6 @@ public class AssistantActivity extends Activity implements OnClickListener {
//LinphoneManager.getInstance().resetLinphoneCore(this);
- //Log.w(LinphoneManager.getLc().getConfig().getString("proxy_default_values","reg_proxy","loool"));
-
changeFragment(fragment);
currentFragment = AssistantFragmentsEnum.LINPHONE_LOGIN;
back.setVisibility(View.VISIBLE);
@@ -285,6 +296,15 @@ public class AssistantActivity extends Activity implements OnClickListener {
currentFragment = AssistantFragmentsEnum.REMOTE_PROVISIONING;
back.setVisibility(View.VISIBLE);
}
+
+ public void retryLogin(LinphoneProxyConfig proxy, String password){
+ LinphoneAuthInfo info = LinphoneManager.getLc().findAuthInfo(LinphoneUtils.getUsernameFromAddress(proxy.getIdentity()),proxy.getRealm(),proxy.getDomain());
+ if(info != null) {
+ info.setPassword(password);
+ LinphoneManager.getLc().addAuthInfo(info);
+ }
+ LinphoneManager.getLc().refreshRegisters();
+ }
public void saveCreatedAccount(String username, String password, String displayName, String domain) {
if (accountCreated)
@@ -317,6 +337,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
AccountBuilder builder = new AccountBuilder(LinphoneManager.getLc())
.setUsername(username)
.setDomain(domain)
+ .setDisplayName(displayName)
.setPassword(password);
if (isMainAccountLinphoneDotOrg && useLinphoneDotOrgCustomPorts) {
@@ -342,7 +363,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
mPrefs.setStunServer(getString(R.string.default_stun));
mPrefs.setIceEnabled(true);
} else {
- String forcedProxy = getResources().getString(R.string.setup_forced_proxy);
+ String forcedProxy = "";
if (!TextUtils.isEmpty(forcedProxy)) {
builder.setProxy(forcedProxy)
.setOutboundProxyEnabled(true)
@@ -375,20 +396,60 @@ public class AssistantActivity extends Activity implements OnClickListener {
fragment.setArguments(extras);
changeFragment(fragment);
- currentFragment = AssistantFragmentsEnum.CREATE_ACCOUNT_CONFIRM;
+ currentFragment = AssistantFragmentsEnum.CREATE_ACCOUNT_ACTIVATION;
back.setVisibility(View.GONE);
}
public void isAccountVerified(String username) {
Toast.makeText(this, getString(R.string.setup_account_validated), Toast.LENGTH_LONG).show();
LinphoneManager.getLcIfManagerNotDestroyedOrNull().refreshRegisters();
- launchEchoCancellerCalibration(true);
+ //launchEchoCancellerCalibration(true);
}
public void isEchoCalibrationFinished() {
mPrefs.setAccountEnabled(mPrefs.getAccountCount() - 1, true);
success();
}
+
+ public Dialog displayWrongPasswordDialog(){
+ Dialog dialog = new Dialog(this);
+ dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+ Drawable d = new ColorDrawable(getResources().getColor(R.color.colorC));
+ d.setAlpha(200);
+ dialog.setContentView(R.layout.input_dialog);
+ dialog.getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT,WindowManager.LayoutParams.MATCH_PARENT);
+ dialog.getWindow().setBackgroundDrawable(d);
+
+ TextView customText = (TextView) dialog.findViewById(R.id.customText);
+ customText.setText(getString(R.string.error_bad_credentials));
+ return dialog;
+ }
+
+ public void showDialog(final LinphoneProxyConfig proxy){
+ final Dialog dialog = displayWrongPasswordDialog();
+
+ Button retry = (Button) dialog.findViewById(R.id.retry);
+ Button cancel = (Button) dialog.findViewById(R.id.cancel);
+
+ retry.setOnClickListener(new OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ String newPassword = ((EditText) dialog.findViewById(R.id.password)).getText().toString();
+ retryLogin(proxy, newPassword);
+ dialog.dismiss();
+ }
+ });
+
+ cancel.setOnClickListener(new OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ success();
+ dialog.dismiss();
+ }
+ });
+
+ dialog.show();
+ }
public void success() {
mPrefs.firstLaunchSuccessful();
diff --git a/src/org/linphone/assistant/AssistantFragmentsEnum.java b/src/org/linphone/assistant/AssistantFragmentsEnum.java
index 06fa012bc..64100511b 100644
--- a/src/org/linphone/assistant/AssistantFragmentsEnum.java
+++ b/src/org/linphone/assistant/AssistantFragmentsEnum.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-SetupFragments.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+AssistantFragmentsEnum.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -21,11 +21,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* @author Sylvain Berfini
*/
public enum AssistantFragmentsEnum {
- MENU,
+ WELCOME,
CREATE_ACCOUNT,
- CREATE_ACCOUNT_CONFIRM,
+ CREATE_ACCOUNT_ACTIVATION,
LINPHONE_LOGIN,
- GENERIC_LOGIN,
+ LOGIN,
REMOTE_PROVISIONING,
ECHO_CANCELLER_CALIBRATION;
}
diff --git a/src/org/linphone/assistant/CreateAccountActivationFragment.java b/src/org/linphone/assistant/CreateAccountActivationFragment.java
index 9ff6d3295..49df1ef4d 100644
--- a/src/org/linphone/assistant/CreateAccountActivationFragment.java
+++ b/src/org/linphone/assistant/CreateAccountActivationFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-WizardConfirmFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+CreateAccountActivationFragment.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/src/org/linphone/assistant/CreateAccountFragment.java b/src/org/linphone/assistant/CreateAccountFragment.java
index a02f54b6a..2dde3ae57 100644
--- a/src/org/linphone/assistant/CreateAccountFragment.java
+++ b/src/org/linphone/assistant/CreateAccountFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-WizardFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+CreateAccountFragment.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -56,14 +56,14 @@ import de.timroes.axmlrpc.XMLRPCServerException;
*/
public class CreateAccountFragment extends Fragment {
private Handler mHandler = new Handler();
- private EditText username, password, passwordConfirm, email;
+ private EditText usernameEdit, passwordEdit, passwordConfirmEdit, emailEdit;
+ private TextView usernameError, passwordError, passwordConfirmError, emailError;
private boolean usernameOk = false;
private boolean passwordOk = false;
private boolean emailOk = false;
private boolean confirmPasswordOk = false;
private Button createAccount;
- private TextView errorMessage;
private char[] acceptedChars = new char[]{ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', '_', '-' };
@@ -71,7 +71,7 @@ public class CreateAccountFragment extends Fragment {
private String inputFilterCharacters;
private String getUsername() {
- String username = this.username.getText().toString();
+ String username = usernameEdit.getText().toString();
if (getResources().getBoolean(R.bool.allow_only_phone_numbers_in_wizard)) {
LinphoneProxyConfig lpc = LinphoneManager.getLc().createProxyConfig();
username = lpc.normalizePhoneNumber(username);
@@ -82,9 +82,20 @@ public class CreateAccountFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.assistant_account_creation, container, false);
-
- username = (EditText) view.findViewById(R.id.assistant_username);
- addXMLRPCUsernameHandler(username, null);
+
+ usernameError = (TextView) view.findViewById(R.id.username_error);
+ usernameEdit = (EditText) view.findViewById(R.id.username);
+
+ passwordError = (TextView) view.findViewById(R.id.password_error);
+ passwordEdit = (EditText) view.findViewById(R.id.password);
+
+ passwordConfirmError = (TextView) view.findViewById(R.id.confirm_password_error);
+ passwordConfirmEdit = (EditText) view.findViewById(R.id.confirm_password);
+
+ emailError = (TextView) view.findViewById(R.id.email_error);
+ emailEdit = (EditText) view.findViewById(R.id.email);
+
+ addXMLRPCUsernameHandler(usernameEdit, null);
inputFilterCharacters = new String(acceptedChars);
if (getResources().getBoolean(R.bool.allow_only_phone_numbers_in_wizard)) {
@@ -103,19 +114,12 @@ public class CreateAccountFragment extends Fragment {
return null;
}
};
- username.setFilters(new InputFilter[] { filter });
+ usernameEdit.setFilters(new InputFilter[] { filter });
- password = (EditText) view.findViewById(R.id.assistant_password);
- passwordConfirm = (EditText) view.findViewById(R.id.assistant_password_confirm);
+ addXMLRPCPasswordHandler(passwordEdit, null);
+ addXMLRPCConfirmPasswordHandler(passwordEdit, passwordConfirmEdit, null);
+ addXMLRPCEmailHandler(emailEdit, null);
- addXMLRPCPasswordHandler(password, null);
- addXMLRPCConfirmPasswordHandler(password, passwordConfirm, null);
-
- email = (EditText) view.findViewById(R.id.assistant_email);
- addXMLRPCEmailHandler(email, null);
-
- errorMessage = (TextView) view.findViewById(R.id.assistant_error);
-
createAccount = (Button) view.findViewById(R.id.assistant_create);
createAccount.setEnabled(false);
createAccount.setOnClickListener(new OnClickListener() {
@@ -123,7 +127,7 @@ public class CreateAccountFragment extends Fragment {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setPositiveButton(R.string.button_ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
- createAccount(getUsername(), password.getText().toString(), email.getText().toString(), false);
+ createAccount(getUsername(), passwordEdit.getText().toString(), emailEdit.getText().toString(), false);
}
});
builder.setNegativeButton(R.string.button_cancel, new DialogInterface.OnClickListener() {
@@ -142,7 +146,7 @@ public class CreateAccountFragment extends Fragment {
for (Account account: accounts) {
if (isEmailCorrect(account.name)) {
String possibleEmail = account.name;
- email.setText(possibleEmail);
+ emailEdit.setText(possibleEmail);
break;
}
}
@@ -150,6 +154,18 @@ public class CreateAccountFragment extends Fragment {
return view;
}
+
+ private void displayError(Boolean isOk, TextView error, EditText editText, String errorText){
+ if(isOk){
+ error.setVisibility(View.INVISIBLE);
+ error.setText(errorText);
+ editText.setBackgroundResource(R.drawable.resizable_textfield);
+ } else {
+ error.setVisibility(View.VISIBLE);
+ error.setText(errorText);
+ editText.setBackgroundResource(R.drawable.resizable_textfield_error);
+ }
+ }
private boolean isUsernameCorrect(String username) {
if (getResources().getBoolean(R.bool.allow_only_phone_numbers_in_wizard)) {
@@ -160,11 +176,11 @@ public class CreateAccountFragment extends Fragment {
}
}
- private void isUsernameRegistred(String username, final ImageView icon) {
+ private void isUsernameRegistred(final String username, final ImageView icon) {
final Runnable runNotReachable = new Runnable() {
public void run() {
- errorMessage.setText(R.string.wizard_server_unavailable);
usernameOk = false;
+ displayError(usernameOk, usernameError, usernameEdit, getResources().getString(R.string.wizard_server_unavailable));
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
};
@@ -175,16 +191,16 @@ public class CreateAccountFragment extends Fragment {
XMLRPCCallback listener = new XMLRPCCallback() {
Runnable runNotOk = new Runnable() {
public void run() {
- errorMessage.setText(R.string.wizard_username_unavailable);
usernameOk = false;
+ displayError(usernameOk, usernameError, usernameEdit, getResources().getString(R.string.wizard_username_unavailable));
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
};
Runnable runOk = new Runnable() {
public void run() {
- errorMessage.setText("");
usernameOk = true;
+ displayError(usernameOk, usernameError, usernameEdit, "");
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
};
@@ -227,7 +243,7 @@ public class CreateAccountFragment extends Fragment {
private void createAccount(final String username, final String password, String email, boolean suscribe) {
final Runnable runNotReachable = new Runnable() {
public void run() {
- errorMessage.setText(R.string.wizard_server_unavailable);
+ //TODO errorMessage.setText(R.string.wizard_server_unavailable);
}
};
@@ -239,7 +255,7 @@ public class CreateAccountFragment extends Fragment {
XMLRPCCallback listener = new XMLRPCCallback() {
Runnable runNotOk = new Runnable() {
public void run() {
- errorMessage.setText(R.string.wizard_failed);
+ //TODO errorMessage.setText(R.string.wizard_failed);
}
};
@@ -295,7 +311,7 @@ public class CreateAccountFragment extends Fragment {
}
isUsernameRegistred(username, icon);
} else {
- errorMessage.setText(R.string.wizard_username_incorrect);
+ displayError(usernameOk, usernameError, usernameEdit, getResources().getString(R.string.wizard_username_incorrect));
}
}
});
@@ -316,10 +332,10 @@ public class CreateAccountFragment extends Fragment {
emailOk = false;
if (isEmailCorrect(field.getText().toString())) {
emailOk = true;
- errorMessage.setText("");
+ displayError(emailOk, emailError, emailEdit, "");
}
else {
- errorMessage.setText(R.string.wizard_email_incorrect);
+ displayError(emailOk, emailError, emailEdit, getString(R.string.wizard_email_incorrect));
}
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
@@ -341,10 +357,10 @@ public class CreateAccountFragment extends Fragment {
passwordOk = false;
if (isPasswordCorrect(field1.getText().toString())) {
passwordOk = true;
- errorMessage.setText("");
+ displayError(passwordOk, passwordError, passwordEdit, "");
}
else {
- errorMessage.setText(R.string.wizard_password_incorrect);
+ displayError(passwordOk, passwordError, passwordEdit, getString(R.string.wizard_password_incorrect));
}
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
@@ -370,14 +386,14 @@ public class CreateAccountFragment extends Fragment {
confirmPasswordOk = true;
if (!isPasswordCorrect(field1.getText().toString())) {
- errorMessage.setText(R.string.wizard_password_incorrect);
+ displayError(passwordOk, passwordError, passwordEdit, getString(R.string.wizard_password_incorrect));
}
else {
- errorMessage.setText("");
+ displayError(confirmPasswordOk, passwordConfirmError, passwordConfirmEdit, "");
}
}
else {
- errorMessage.setText(R.string.wizard_passwords_unmatched);
+ displayError(confirmPasswordOk, passwordConfirmError, passwordConfirmEdit, getString(R.string.wizard_passwords_unmatched));
}
createAccount.setEnabled(usernameOk && passwordOk && confirmPasswordOk && emailOk);
}
diff --git a/src/org/linphone/assistant/EchoCancellerCalibrationFragment.java b/src/org/linphone/assistant/EchoCancellerCalibrationFragment.java
index 59e920d94..1fb0d2331 100644
--- a/src/org/linphone/assistant/EchoCancellerCalibrationFragment.java
+++ b/src/org/linphone/assistant/EchoCancellerCalibrationFragment.java
@@ -2,7 +2,7 @@ package org.linphone.assistant;
/*
EchoCancellerCalibrationFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/src/org/linphone/assistant/LinphoneLoginFragment.java b/src/org/linphone/assistant/LinphoneLoginFragment.java
index cc693bbe7..a72bf04d4 100644
--- a/src/org/linphone/assistant/LinphoneLoginFragment.java
+++ b/src/org/linphone/assistant/LinphoneLoginFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
LinphoneLoginFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/src/org/linphone/assistant/LoginFragment.java b/src/org/linphone/assistant/LoginFragment.java
index d8b24f030..f95b5dafb 100644
--- a/src/org/linphone/assistant/LoginFragment.java
+++ b/src/org/linphone/assistant/LoginFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-GenericLoginFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+LoginFragment.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/src/org/linphone/assistant/RemoteProvisioningFragment.java b/src/org/linphone/assistant/RemoteProvisioningFragment.java
index eb257431c..a24468873 100644
--- a/src/org/linphone/assistant/RemoteProvisioningFragment.java
+++ b/src/org/linphone/assistant/RemoteProvisioningFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
RemoteProvisioningFragment.java
-Copyright (C) 2014 Belledonne Communications, Grenoble, France
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/src/org/linphone/assistant/WelcomeFragment.java b/src/org/linphone/assistant/WelcomeFragment.java
index 9761ac242..a03401a03 100644
--- a/src/org/linphone/assistant/WelcomeFragment.java
+++ b/src/org/linphone/assistant/WelcomeFragment.java
@@ -1,7 +1,7 @@
package org.linphone.assistant;
/*
-MenuFragment.java
-Copyright (C) 2012 Belledonne Communications, Grenoble, France
+WelcomeFragment.java
+Copyright (C) 2015 Belledonne Communications, Grenoble, France
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License