merged develop
This commit is contained in:
@@ -11,6 +11,7 @@ import '../../api/marianumconnect/queries/auth_guardian/guardian_login_exception
|
||||
import '../../auth_link/device_binding.dart';
|
||||
import '../../auth_link/guardian_login_link.dart';
|
||||
import '../../auth_link/pending_guardian_request.dart';
|
||||
import '../../model/session_wipe.dart';
|
||||
import '../../session/session.dart';
|
||||
import '../../session/session_manager.dart';
|
||||
import '../../widget_data/widget_sync.dart';
|
||||
@@ -216,6 +217,9 @@ class GuardianLoginController extends ChangeNotifier {
|
||||
}
|
||||
|
||||
static Future<void> _defaultSignIn(Session session) async {
|
||||
// The previous account's wipe runs deferred; racing it would let it
|
||||
// clear what this login stores.
|
||||
await SessionWipe.done;
|
||||
// Sign in first: the one-time code is already spent at this point, so a
|
||||
// failing widget reset must not cost the session (the user would have to
|
||||
// request a fresh mail for a login that actually succeeded).
|
||||
|
||||
@@ -10,6 +10,7 @@ import '../../api/marianumconnect/auth/device_token_name.dart';
|
||||
import '../../api/marianumconnect/auth/token_storage.dart';
|
||||
import '../../api/marianumconnect/queries/auth_login/auth_login.dart';
|
||||
import '../../api/marianumconnect/queries/auth_logout/auth_logout.dart';
|
||||
import '../../model/session_wipe.dart';
|
||||
import '../../session/session.dart';
|
||||
import '../../session/session_manager.dart';
|
||||
import '../../widget_data/widget_sync.dart';
|
||||
@@ -47,6 +48,10 @@ class LoginController extends ChangeNotifier {
|
||||
_errorDetails = null;
|
||||
notifyListeners();
|
||||
|
||||
// The previous account's wipe runs deferred; racing it would let it
|
||||
// clear what this login stores (widget job, caches).
|
||||
await SessionWipe.done;
|
||||
|
||||
final user = username.trim().toLowerCase();
|
||||
|
||||
// Demo login: the prefix enters local demo mode, password ignored, no
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
/// Filled, borderless text field look shared by both login cards.
|
||||
/// Filled, borderless text field look shared by the login cards.
|
||||
InputDecoration loginInputDecoration(
|
||||
ThemeData theme,
|
||||
String label,
|
||||
@@ -24,7 +24,7 @@ InputDecoration loginInputDecoration(
|
||||
),
|
||||
);
|
||||
|
||||
/// Card frame with heading and hint line shared by both login cards.
|
||||
/// Card frame with heading and hint line shared by the login cards.
|
||||
class LoginCardFrame extends StatelessWidget {
|
||||
final String title;
|
||||
final String hint;
|
||||
|
||||
Reference in New Issue
Block a user