make sidebar auto collapse when selecting a room on the mobile layout

This commit is contained in:
Henry Hiles 2026-03-24 16:45:25 -04:00
commit b387f0755a
No known key found for this signature in database
2 changed files with 10 additions and 6 deletions

View file

@ -16,7 +16,7 @@ class ChatPage extends ConsumerWidget {
body: Builder(
builder: (context) => Row(
children: [
if (isDesktop) Sidebar(),
if (isDesktop) Sidebar(isDesktop: isDesktop),
Expanded(
child: RoomChat(
isDesktop: isDesktop,
@ -26,7 +26,7 @@ class ChatPage extends ConsumerWidget {
],
),
),
drawer: isDesktop ? null : Sidebar(),
drawer: isDesktop ? null : Sidebar(isDesktop: isDesktop),
);
},
);

View file

@ -12,7 +12,8 @@ import "package:nexus/widgets/chat_page/room_menu.dart";
import "package:nexus/widgets/form_text_input.dart";
class Sidebar extends HookConsumerWidget {
const Sidebar({super.key});
final bool isDesktop;
const Sidebar({required this.isDesktop, super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
@ -220,9 +221,12 @@ class Sidebar extends HookConsumerWidget {
),
)
.toList(),
onDestinationSelected: (value) => selectedRoomIdNotifier.set(
selectedSpace.children[value].metadata?.id,
),
onDestinationSelected: (value) {
selectedRoomIdNotifier.set(
selectedSpace.children[value].metadata?.id,
);
if (!isDesktop) Navigator.of(context).pop();
},
),
),
),