diff --git a/lib/pages/new_private_chat/new_private_chat.dart b/lib/pages/new_private_chat/new_private_chat.dart index 543031c9f..45f94a302 100644 --- a/lib/pages/new_private_chat/new_private_chat.dart +++ b/lib/pages/new_private_chat/new_private_chat.dart @@ -9,6 +9,7 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/new_private_chat/new_private_chat_view.dart'; import 'package:fluffychat/pages/new_private_chat/qr_scanner_modal.dart'; +import 'package:fluffychat/pangea/user/user_search_extension.dart'; import 'package:fluffychat/utils/adaptive_bottom_sheet.dart'; import 'package:fluffychat/utils/fluffy_share.dart'; import 'package:fluffychat/utils/platform_infos.dart'; @@ -52,8 +53,11 @@ class NewPrivateChatController extends State { } Future> _searchUser(String searchTerm) async { - final result = - await Matrix.of(context).client.searchUserDirectory(searchTerm); + // #Pangea + // final result = + // await Matrix.of(context).client.searchUserDirectory(searchTerm); + final result = await Matrix.of(context).client.searchUser(searchTerm); + // Pangea# final profiles = result.results; if (searchTerm.isValidMatrixId && diff --git a/lib/pangea/chat_settings/pages/pangea_invitation_selection.dart b/lib/pangea/chat_settings/pages/pangea_invitation_selection.dart index e7d5e5d92..bdf7e050c 100644 --- a/lib/pangea/chat_settings/pages/pangea_invitation_selection.dart +++ b/lib/pangea/chat_settings/pages/pangea_invitation_selection.dart @@ -9,10 +9,10 @@ import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/bot/utils/bot_name.dart'; import 'package:fluffychat/pangea/chat_settings/pages/pangea_invitation_selection_view.dart'; -import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; import 'package:fluffychat/pangea/extensions/join_rule_extension.dart'; import 'package:fluffychat/pangea/extensions/pangea_room_extension.dart'; +import 'package:fluffychat/pangea/user/user_search_extension.dart'; import 'package:fluffychat/utils/localized_exception_extension.dart'; import 'package:fluffychat/widgets/future_loading_dialog.dart'; import 'package:fluffychat/widgets/matrix.dart'; @@ -337,20 +337,11 @@ class PangeaInvitationSelectionController setState(() => foundProfiles = []); } - String pangeaSearchText = text; - if (!pangeaSearchText.startsWith("@")) { - pangeaSearchText = "@$pangeaSearchText"; - } - if (!pangeaSearchText.contains(":")) { - pangeaSearchText = "$pangeaSearchText:${Environment.homeServer}"; - } - setState(() => loading = true); final matrix = Matrix.of(context); SearchUserDirectoryResponse response; try { - response = - await matrix.client.searchUserDirectory(pangeaSearchText, limit: 100); + response = await matrix.client.searchUser(text, limit: 100); } catch (e) { ScaffoldMessenger.of(context).showSnackBar( SnackBar(content: Text((e).toLocalizedString(context))), diff --git a/lib/pangea/user/user_search_extension.dart b/lib/pangea/user/user_search_extension.dart new file mode 100644 index 000000000..871b72101 --- /dev/null +++ b/lib/pangea/user/user_search_extension.dart @@ -0,0 +1,19 @@ +import 'package:matrix/matrix.dart'; + +import 'package:fluffychat/pangea/common/config/environment.dart'; + +extension UserSearchExtension on Client { + Future searchUser( + String search, { + int? limit, + }) async { + String searchText = search; + if (!searchText.startsWith("@")) { + searchText = "@$searchText"; + } + if (!searchText.contains(":")) { + searchText = "$searchText:${Environment.homeServer}"; + } + return searchUserDirectory(searchText, limit: limit); + } +}