reorganize

This commit is contained in:
Henry Hiles 2025-11-19 13:42:20 -05:00
commit 220c13a245
No known key found for this signature in database
12 changed files with 39 additions and 29 deletions

View file

@ -14,12 +14,12 @@ import "package:nexus/controllers/current_room_controller.dart";
import "package:nexus/controllers/room_chat_controller.dart";
import "package:nexus/helpers/extension_helper.dart";
import "package:nexus/helpers/launch_helper.dart";
import "package:nexus/widgets/chat/chat_box.dart";
import "package:nexus/widgets/chat/code_block.dart";
import "package:nexus/widgets/chat/member_list.dart";
import "package:nexus/widgets/chat/room_appbar.dart";
import "package:nexus/widgets/chat/spoiler_text.dart";
import "package:nexus/widgets/chat/top_widget.dart";
import "package:nexus/widgets/chat_page/chat_box.dart";
import "package:nexus/widgets/chat_page/code_block.dart";
import "package:nexus/widgets/chat_page/member_list.dart";
import "package:nexus/widgets/chat_page/room_appbar.dart";
import "package:nexus/widgets/chat_page/spoiler_text.dart";
import "package:nexus/widgets/chat_page/top_widget.dart";
import "package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart";
class RoomChat extends HookConsumerWidget {

View file

@ -40,11 +40,22 @@ class Sidebar extends HookConsumerWidget {
destinations: spaces
.map(
(space) => NavigationRailDestination(
icon: AvatarOrHash(
space.avatar,
fallback: space.icon,
space.title,
headers: space.client.headers,
icon: Badge(
smallSize: 8,
backgroundColor: Theme.of(
context,
).colorScheme.primary,
isLabelVisible:
space.children.firstWhereOrNull(
(room) => room.roomData.hasNewMessages,
) !=
null,
child: AvatarOrHash(
space.avatar,
fallback: space.icon,
space.title,
headers: space.client.headers,
),
),
label: Text(space.title),
padding: EdgeInsets.only(top: 4),
@ -73,18 +84,11 @@ class Sidebar extends HookConsumerWidget {
return Scaffold(
backgroundColor: Colors.transparent,
appBar: AppBar(
leading: Badge(
isLabelVisible:
space.children.firstWhereOrNull(
(room) => room.roomData.isUnread,
) !=
null,
child: AvatarOrHash(
space.avatar,
fallback: space.icon,
space.title,
headers: space.client.headers,
),
leading: AvatarOrHash(
space.avatar,
fallback: space.icon,
space.title,
headers: space.client.headers,
),
title: Text(
space.title,
@ -104,7 +108,7 @@ class Sidebar extends HookConsumerWidget {
(room) => NavigationRailDestination(
label: Text(room.title),
icon: Badge(
isLabelVisible: room.roomData.isUnread,
isLabelVisible: room.roomData.hasNewMessages,
child: AvatarOrHash(
room.avatar,
room.title,