Minor fixes

This commit is contained in:
Neeraj Gupta 2022-11-25 10:01:53 +05:30
parent 94ce181f22
commit 8fba024653
No known key found for this signature in database
GPG key ID: 3C5A1684DC1729E1
2 changed files with 28 additions and 12 deletions

View file

@ -38,8 +38,8 @@ class UpdateService {
return _prefs.setInt(changeLogVersionKey, currentChangeLogVersion); return _prefs.setInt(changeLogVersionKey, currentChangeLogVersion);
} }
Future<bool> resetChangeLog() { Future<bool> resetChangeLog() async {
_prefs.remove("userNotify.passwordReminderFlag"); await _prefs.remove("userNotify.passwordReminderFlag");
return _prefs.remove(changeLogVersionKey); return _prefs.remove(changeLogVersionKey);
} }

View file

@ -2,16 +2,16 @@ import 'dart:ui';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:logging/logging.dart'; import 'package:logging/logging.dart';
import 'package:pedantic/pedantic.dart';
import 'package:photos/core/configuration.dart'; import 'package:photos/core/configuration.dart';
import 'package:photos/core/event_bus.dart';
import 'package:photos/ente_theme_data.dart'; import 'package:photos/ente_theme_data.dart';
import 'package:photos/events/subscription_purchased_event.dart';
import 'package:photos/services/local_authentication_service.dart'; import 'package:photos/services/local_authentication_service.dart';
import 'package:photos/services/user_remote_flag_service.dart'; import 'package:photos/services/user_remote_flag_service.dart';
import 'package:photos/theme/colors.dart'; import 'package:photos/theme/colors.dart';
import 'package:photos/theme/ente_theme.dart'; import 'package:photos/theme/ente_theme.dart';
import 'package:photos/ui/account/password_entry_page.dart'; import 'package:photos/ui/account/password_entry_page.dart';
import 'package:photos/ui/common/gradient_button.dart'; import 'package:photos/ui/common/gradient_button.dart';
import 'package:photos/ui/home_widget.dart';
import 'package:photos/utils/dialog_util.dart'; import 'package:photos/utils/dialog_util.dart';
import 'package:photos/utils/navigation_util.dart'; import 'package:photos/utils/navigation_util.dart';
@ -19,20 +19,20 @@ class PasswordReminder extends StatefulWidget {
const PasswordReminder({Key? key}) : super(key: key); const PasswordReminder({Key? key}) : super(key: key);
@override @override
State<PasswordReminder> createState() => _P(); State<PasswordReminder> createState() => _PasswordReminderState();
} }
class _P extends State<PasswordReminder> { class _PasswordReminderState extends State<PasswordReminder> {
final _recoveryKey = TextEditingController(); final _passwordController = TextEditingController();
final Logger _logger = Logger((_P).toString()); final Logger _logger = Logger((_PasswordReminderState).toString());
bool _password2Visible = false; bool _password2Visible = false;
bool _incorrectPassword = false; bool _incorrectPassword = false;
void _verifyRecoveryKey() async { Future<void> _verifyRecoveryKey() async {
final dialog = createProgressDialog(context, "Verifying password..."); final dialog = createProgressDialog(context, "Verifying password...");
await dialog.show(); await dialog.show();
try { try {
final String inputKey = _recoveryKey.text; final String inputKey = _passwordController.text;
await Configuration.instance.verifyPassword(inputKey); await Configuration.instance.verifyPassword(inputKey);
await dialog.hide(); await dialog.hide();
UserRemoteFlagService.instance.stopPasswordReminder().ignore(); UserRemoteFlagService.instance.stopPasswordReminder().ignore();
@ -44,7 +44,17 @@ class _P extends State<PasswordReminder> {
"\nPlease" "\nPlease"
" remember to keep your recovery key safely backed up.", " remember to keep your recovery key safely backed up.",
); );
Bus.instance.fire(SubscriptionPurchasedEvent());
unawaited(
Navigator.of(context).pushAndRemoveUntil(
MaterialPageRoute(
builder: (BuildContext context) {
return const HomeWidget();
},
),
(route) => false,
),
);
} catch (e, s) { } catch (e, s) {
_logger.severe("failed to verify password", e, s); _logger.severe("failed to verify password", e, s);
await dialog.hide(); await dialog.hide();
@ -171,6 +181,12 @@ class _P extends State<PasswordReminder> {
); );
} }
@override
void dispose() {
_passwordController.dispose();
super.dispose();
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final enteTheme = Theme.of(context).colorScheme.enteTheme; final enteTheme = Theme.of(context).colorScheme.enteTheme;
@ -293,7 +309,7 @@ class _P extends State<PasswordReminder> {
fontSize: 14, fontSize: 14,
fontFeatures: [FontFeature.tabularFigures()], fontFeatures: [FontFeature.tabularFigures()],
), ),
controller: _recoveryKey, controller: _passwordController,
autofocus: false, autofocus: false,
autocorrect: false, autocorrect: false,
obscureText: !_password2Visible, obscureText: !_password2Visible,