Merge branch 'main' into practice

This commit is contained in:
ggurdin 2024-06-25 15:46:36 -04:00
commit c304da4a65
2 changed files with 10 additions and 28 deletions

View file

@ -2,7 +2,6 @@ import 'dart:async';
import 'dart:io';
import 'package:adaptive_dialog/adaptive_dialog.dart';
import 'package:collection/collection.dart';
import 'package:fluffychat/config/app_config.dart';
import 'package:fluffychat/config/themes.dart';
import 'package:fluffychat/pages/chat_list/chat_list_view.dart';
@ -213,32 +212,12 @@ class ChatListController extends State<ChatList>
}
List<Room> get filteredRooms => Matrix.of(context)
.client
.rooms
.where(
getRoomFilterByActiveFilter(activeFilter),
)
// #Pangea
.sorted((roomA, roomB) {
// put rooms with unread messages at the top of the list
if (roomA.membership == Membership.invite &&
roomB.membership != Membership.invite) {
return -1;
}
if (roomA.membership != Membership.invite &&
roomB.membership == Membership.invite) {
return 1;
}
final bool aUnread = roomA.notificationCount > 0 || roomA.markedUnread;
final bool bUnread = roomB.notificationCount > 0 || roomB.markedUnread;
if (aUnread && !bUnread) return -1;
if (!aUnread && bUnread) return 1;
return 0;
})
// Pangea#
.toList();
.client
.rooms
.where(
getRoomFilterByActiveFilter(activeFilter),
)
.toList();
bool isSearchMode = false;
Future<QueryPublicRoomsResponse>? publicRoomsResponse;

View file

@ -1,5 +1,6 @@
import 'package:adaptive_dialog/adaptive_dialog.dart';
import 'package:fluffychat/pangea/constants/class_default_values.dart';
import 'package:fluffychat/pangea/extensions/pangea_room_extension/pangea_room_extension.dart';
import 'package:fluffychat/pangea/utils/find_conversation_partner_dialog.dart';
import 'package:fluffychat/pangea/utils/logout.dart';
import 'package:fluffychat/pangea/utils/space_code.dart';
@ -68,7 +69,9 @@ class ClientChooserButton extends StatelessWidget {
),
),
PopupMenuItem(
enabled: matrix.client.rooms.isNotEmpty,
enabled: matrix.client.rooms.any(
(room) => !room.isSpace && !room.isArchived && !room.isAnalyticsRoom,
),
value: SettingsAction.myAnalytics,
child: Row(
children: [