Handle register sync properly
This commit is contained in:
@@ -359,7 +359,6 @@ public class MainActivity extends AppCompatActivity
|
||||
((TextView) header.findViewById(R.id.login_mail)).setText(email);
|
||||
|
||||
changeFragment(newFragment);
|
||||
registerSync();
|
||||
}
|
||||
|
||||
private void registerSync() {
|
||||
@@ -659,8 +658,11 @@ public class MainActivity extends AppCompatActivity
|
||||
|
||||
|
||||
@Override
|
||||
public void onLogin(LoginToken token) {
|
||||
public void onLogin(LoginToken token, boolean isOnlyRefresh) {
|
||||
toLoginState(token.getFullName(), token.getEmail(), getDefaultFragmentAfterLogin());
|
||||
if (!isOnlyRefresh) {
|
||||
registerSync();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,7 +6,7 @@ import de.sebse.fuplanner.services.kvv.types.LoginToken;
|
||||
import de.sebse.fuplanner.tools.CustomAccountManager;
|
||||
|
||||
public interface KVVListener {
|
||||
default void onLogin(LoginToken token) {}
|
||||
default void onLogin(LoginToken token, boolean isOnlyRefresh) {}
|
||||
|
||||
default void onLogout() {}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ public class Login extends HTTPService {
|
||||
if (delete)
|
||||
mToken.delete(mListener.getAccountManager());
|
||||
mToken = null;
|
||||
return handleCallbacks();
|
||||
return handleCallbacks(false);
|
||||
}
|
||||
|
||||
public boolean isLoginPending() {
|
||||
@@ -103,9 +103,9 @@ public class Login extends HTTPService {
|
||||
|
||||
|
||||
|
||||
private boolean handleCallbacks() {
|
||||
private boolean handleCallbacks(boolean isOnlyRefresh) {
|
||||
if (mToken != null) {
|
||||
mListener.onLogin(mToken);
|
||||
mListener.onLogin(mToken, isOnlyRefresh);
|
||||
return true;
|
||||
} else {
|
||||
mListener.onLogout();
|
||||
@@ -118,7 +118,7 @@ public class Login extends HTTPService {
|
||||
return false;
|
||||
boolean isOnlyRefresh = mToken != null;
|
||||
mToken = token;
|
||||
return isOnlyRefresh || handleCallbacks();
|
||||
return isOnlyRefresh || handleCallbacks(isOnlyRefresh);
|
||||
}
|
||||
|
||||
public interface BooleanInterface {
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
<string name="error_field_required">Pflichtfeld</string>
|
||||
<string name="kvv_sync">KVV-Synchronisation</string>
|
||||
<string name="channel_name">Neue Daten verfügbar</string>
|
||||
<string name="channel_description">Benachrichtigen, wenn neue Ankündigungen, Aufgaben, Noten oder Resourcen verfügbar sind</string>
|
||||
<string name="channel_description">Benachrichtigen, wenn neue Ankündigungen, Aufgaben, Noten oder Ressourcen verfügbar sind</string>
|
||||
<string name="announcement_updated">Ankündigung aktualisiert: %1$s</string>
|
||||
<string name="assignment_updated">Aufgabe aktualisiert: %1$s</string>
|
||||
<string name="event_updated">Event aktualisiert: %1$s</string>
|
||||
|
||||
Reference in New Issue
Block a user