diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index d649a1660..6b64ba6e3 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -34,6 +34,8 @@
+
+
diff --git a/res/layout/incoming.xml b/res/layout/incoming.xml
index 663abddbb..1446ab81e 100644
--- a/res/layout/incoming.xml
+++ b/res/layout/incoming.xml
@@ -1,5 +1,6 @@
+ android:layout_marginBottom="80dp" />
diff --git a/res/values/non_localizable_custom.xml b/res/values/non_localizable_custom.xml
index f322106a4..50248a500 100644
--- a/res/values/non_localizable_custom.xml
+++ b/res/values/non_localizable_custom.xml
@@ -51,6 +51,7 @@
false
+ true
false
true
true
diff --git a/src/org/linphone/setup/WizardFragment.java b/src/org/linphone/setup/WizardFragment.java
index 4309edff2..15c8ee055 100644
--- a/src/org/linphone/setup/WizardFragment.java
+++ b/src/org/linphone/setup/WizardFragment.java
@@ -18,17 +18,21 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
import java.net.URL;
+import java.util.regex.Pattern;
import org.linphone.LinphoneManager;
import org.linphone.LinphoneService;
import org.linphone.R;
+import android.accounts.Account;
+import android.accounts.AccountManager;
import android.content.Context;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.Fragment;
import android.text.Editable;
import android.text.TextWatcher;
+import android.util.Patterns;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
@@ -86,6 +90,18 @@ public class WizardFragment extends Fragment {
}
});
+ if (getResources().getBoolean(R.bool.pre_fill_email_in_wizard)) {
+ Account[] accounts = AccountManager.get(getActivity()).getAccountsByType("com.google");
+
+ for (Account account: accounts) {
+ if (isEmailCorrect(account.name)) {
+ String possibleEmail = account.name;
+ email.setText(possibleEmail);
+ break;
+ }
+ }
+ }
+
return view;
}
@@ -152,7 +168,8 @@ public class WizardFragment extends Fragment {
}
private boolean isEmailCorrect(String email) {
- return email.matches("^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\\.-][a-z0-9]+)*)+\\.[a-z]{2,}$");
+ Pattern emailPattern = Patterns.EMAIL_ADDRESS;
+ return emailPattern.matcher(email).matches();
}
private boolean isPasswordCorrect(String password) {