diff --git a/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java b/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
index bb9cfbd3e..a596645f9 100644
--- a/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
@@ -6,6 +6,7 @@ import android.accounts.AccountAuthenticatorResponse;
import android.accounts.AccountManager;
import android.app.Activity;
import android.app.ProgressDialog;
+import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
@@ -16,6 +17,7 @@ import android.support.annotation.StringRes;
import android.support.design.widget.TextInputLayout;
import android.support.v4.app.NavUtils;
import android.support.v4.content.ContextCompat;
+import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatDelegate;
import android.text.Editable;
import android.text.TextWatcher;
@@ -39,6 +41,7 @@ import butterknife.ButterKnife;
import butterknife.OnClick;
import fr.free.nrw.commons.AboutActivity;
import fr.free.nrw.commons.BuildConfig;
+import fr.free.nrw.commons.CommonsApplication;
import fr.free.nrw.commons.PageTitle;
import fr.free.nrw.commons.R;
import fr.free.nrw.commons.Utils;
@@ -131,7 +134,15 @@ public class LoginActivity extends AccountAuthenticatorActivity {
signupButton.setOnClickListener(view -> signUp());
forgotPasswordText.setOnClickListener(view -> forgotPassword());
- skipLoginText.setOnClickListener(view -> skipLogin());
+ skipLoginText.setOnClickListener(view -> new AlertDialog.Builder(this).setTitle(R.string.skip_login_title)
+ .setMessage(R.string.skip_login_message)
+ .setCancelable(false)
+ .setPositiveButton(R.string.yes, (dialog, which) -> {
+ dialog.cancel();
+ skipLogin();
+ })
+ .setNegativeButton(R.string.no, (dialog, which) -> dialog.cancel())
+ .show());
if(BuildConfig.FLAVOR.equals("beta")){
loginCredentials.setText(getString(R.string.login_credential));
@@ -141,7 +152,7 @@ public class LoginActivity extends AccountAuthenticatorActivity {
}
private void skipLogin() {
- prefs.edit().putBoolean("isloggedin", false).apply();
+ prefs.edit().putBoolean("login_skipped", true).apply();
NavigationBaseActivity.startActivityWithFlags(this, NearbyActivity.class, Intent.FLAG_ACTIVITY_CLEAR_TOP);
finish();
@@ -165,7 +176,6 @@ public class LoginActivity extends AccountAuthenticatorActivity {
}
}
-
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
@@ -181,11 +191,16 @@ public class LoginActivity extends AccountAuthenticatorActivity {
}
if (sessionManager.getCurrentAccount() != null
- && sessionManager.isUserLoggedIn()
- && sessionManager.getCachedAuthCookie() != null) {
-
+ && sessionManager.isUserLoggedIn()
+ && sessionManager.getCachedAuthCookie() != null) {
+ prefs.edit().putBoolean("login_skipped", false).apply();
startMainActivity();
}
+
+ if (prefs.getBoolean("login_skipped", false)){
+ skipLogin();
+ }
+
}
@Override
diff --git a/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java b/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java
index 2a0bf1290..dcacb8d9a 100644
--- a/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java
@@ -65,21 +65,18 @@ public abstract class NavigationBaseActivity extends BaseActivity
setDrawerPaneWidth();
setUserName();
Menu nav_Menu = navigationView.getMenu();
- if (prefs.getBoolean("isloggedin", true)) {
- Toast.makeText(this,"LoggedIn",Toast.LENGTH_SHORT).show();
- nav_Menu.findItem(R.id.action_login).setVisible(false);
- nav_Menu.findItem(R.id.action_home).setVisible(true);
- nav_Menu.findItem(R.id.action_notifications).setVisible(true);
- nav_Menu.findItem(R.id.action_settings).setVisible(true);
- nav_Menu.findItem(R.id.action_logout).setVisible(true);
-
- }else {
- Toast.makeText(this,"Skipped",Toast.LENGTH_SHORT).show();
+ if (prefs.getBoolean("login_skipped", true)) {
nav_Menu.findItem(R.id.action_login).setVisible(true);
nav_Menu.findItem(R.id.action_home).setVisible(false);
nav_Menu.findItem(R.id.action_notifications).setVisible(false);
nav_Menu.findItem(R.id.action_settings).setVisible(false);
nav_Menu.findItem(R.id.action_logout).setVisible(false);
+ }else {
+ nav_Menu.findItem(R.id.action_login).setVisible(false);
+ nav_Menu.findItem(R.id.action_home).setVisible(true);
+ nav_Menu.findItem(R.id.action_notifications).setVisible(true);
+ nav_Menu.findItem(R.id.action_settings).setVisible(true);
+ nav_Menu.findItem(R.id.action_logout).setVisible(true);
}
}
@@ -129,6 +126,7 @@ public abstract class NavigationBaseActivity extends BaseActivity
startActivityWithFlags(
this, LoginActivity.class, Intent.FLAG_ACTIVITY_CLEAR_TOP,
Intent.FLAG_ACTIVITY_SINGLE_TOP);
+ prefs.edit().putBoolean("login_skipped", false).apply();
finish();
return true;
case R.id.action_home:
diff --git a/app/src/main/res/drawable-hdpi/ic_person_black_24dp.png b/app/src/main/res/drawable-hdpi/ic_person_black_24dp.png
new file mode 100644
index 000000000..4a8a6c159
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_person_black_24dp.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_person_black_24dp.png b/app/src/main/res/drawable-mdpi/ic_person_black_24dp.png
new file mode 100644
index 000000000..77c5bb8df
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_person_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_person_black_24dp.png b/app/src/main/res/drawable-xhdpi/ic_person_black_24dp.png
new file mode 100644
index 000000000..d991b0e01
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_person_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_person_black_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_person_black_24dp.png
new file mode 100644
index 000000000..7a9747527
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_person_black_24dp.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_person_black_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_person_black_24dp.png
new file mode 100644
index 000000000..295cb3256
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_person_black_24dp.png differ
diff --git a/app/src/main/res/menu/drawer.xml b/app/src/main/res/menu/drawer.xml
index 997d2fdde..e2729fdec 100644
--- a/app/src/main/res/menu/drawer.xml
+++ b/app/src/main/res/menu/drawer.xml
@@ -3,7 +3,7 @@
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 109f59e8b..73b6f208d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -272,4 +272,6 @@
Retry
Skip
Login
+ Do you really want to skip login ?
+ You might not be able to access some features of the app.