Merge pull request #122 from pangeachat/ios-login-fix

Ios login fix
This commit is contained in:
ggurdin 2024-03-18 11:17:00 -04:00 committed by GitHub
commit 803804a949
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 29 additions and 24 deletions

View file

@ -6,7 +6,6 @@ import 'package:fluffychat/pangea/constants/pangea_event_types.dart';
import 'package:fluffychat/utils/custom_http_client.dart';
import 'package:fluffychat/utils/custom_image_resizer.dart';
import 'package:fluffychat/utils/init_with_restore.dart';
import 'package:fluffychat/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart';
import 'package:fluffychat/utils/platform_infos.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
@ -122,7 +121,9 @@ abstract class ClientManager {
},
logLevel: kReleaseMode ? Level.warning : Level.verbose,
databaseBuilder: flutterMatrixSdkDatabaseBuilder,
legacyDatabaseBuilder: FlutterHiveCollectionsDatabase.databaseBuilder,
// #Pangea
// legacyDatabaseBuilder: FlutterHiveCollectionsDatabase.databaseBuilder,
// Pangea#
supportedLoginTypes: {
AuthenticationTypes.password,
AuthenticationTypes.sso,

View file

@ -1,10 +1,11 @@
import 'dart:convert';
import 'dart:math';
import 'package:fluffychat/pangea/utils/error_handler.dart';
import 'package:fluffychat/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart';
import 'package:fluffychat/utils/platform_infos.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/services.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:matrix/matrix.dart';
import 'package:path_provider/path_provider.dart';
@ -12,36 +13,39 @@ import 'package:sqflite_common_ffi/sqflite_ffi.dart' as ffi;
import 'package:sqflite_sqlcipher/sqflite.dart';
import 'package:universal_html/html.dart' as html;
import 'package:fluffychat/config/app_config.dart';
import 'package:fluffychat/utils/client_manager.dart';
import 'package:fluffychat/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart';
import 'package:fluffychat/utils/platform_infos.dart';
Future<DatabaseApi> flutterMatrixSdkDatabaseBuilder(Client client) async {
MatrixSdkDatabase? database;
try {
database = await _constructDatabase(client);
// throw "error";
await database.open();
return database;
} catch (e) {
// #Pangea
ErrorHandler.logError(
e: e,
m: 'Unable to init database',
s: StackTrace.current,
);
// Try to delete database so that it can created again on next init:
database?.delete().catchError(
(e, s) => Logs().w(
'Unable to delete database, after failed construction',
e,
s,
),
);
// database?.delete().catchError(
// (e, s) => Logs().w(
// 'Unable to delete database, after failed construction',
// e,
// s,
// ),
// );
// Send error notification:
final l10n = lookupL10n(PlatformDispatcher.instance.locale);
ClientManager.sendInitNotification(
l10n.initAppError,
l10n.databaseBuildErrorBody(
AppConfig.newIssueUrl.toString(),
e.toString(),
),
);
// final l10n = lookupL10n(PlatformDispatcher.instance.locale);
// ClientManager.sendInitNotification(
// l10n.initAppError,
// l10n.databaseBuildErrorBody(
// AppConfig.newIssueUrl.toString(),
// e.toString(),
// ),
// );
// Pangea#
return FlutterHiveCollectionsDatabase.databaseBuilder(client);
}