diff --git a/play-services-core/src/main/AndroidManifest.xml b/play-services-core/src/main/AndroidManifest.xml index 2e6c2a634a..9161187bac 100644 --- a/play-services-core/src/main/AndroidManifest.xml +++ b/play-services-core/src/main/AndroidManifest.xml @@ -413,6 +413,7 @@ android:configChanges="keyboardHidden|keyboard|orientation|screenSize" android:exported="true" android:process=":ui" + android:launchMode="singleTop" android:theme="@style/Theme.LoginBlue"> diff --git a/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java b/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java index dd9a1be6ac..831c4751f4 100644 --- a/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java +++ b/play-services-core/src/main/java/org/microg/gms/auth/login/LoginActivity.java @@ -186,11 +186,12 @@ protected void onBackButtonClicked() { } public void loginCanceled() { + Log.d(TAG, "loginCanceled: "); setResult(RESULT_CANCELED); if (response != null) { response.onError(AccountManager.ERROR_CODE_CANCELED, "Canceled"); } - finish(); + if (SDK_INT >= LOLLIPOP) { finishAndRemoveTask(); } else finish(); } @Override @@ -383,7 +384,7 @@ public void onResponse(AuthResponse response) { } checkin(true); returnSuccessResponse(account); - finish(); + if (SDK_INT >= LOLLIPOP) { finishAndRemoveTask(); } else finish(); } @Override @@ -669,7 +670,7 @@ public final void showView() { @JavascriptInterface public final void skipLogin() { Log.d(TAG, "JSBridge: skipLogin"); - finish(); + loginCanceled(); } @JavascriptInterface