style: Enhanced chat details design

This commit is contained in:
Krille 2023-02-04 19:10:27 +01:00
parent 59d3793060
commit 72767f0716
2 changed files with 55 additions and 40 deletions

View File

@ -100,23 +100,31 @@ class ChatDetailsView extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.stretch, crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[ children: <Widget>[
ListTile( ListTile(
leading: room.canSendEvent('m.room.topic') onTap: room.canSendEvent(EventTypes.RoomTopic)
? CircleAvatar( ? controller.setTopicAction
backgroundColor: Theme.of(context) : null,
.scaffoldBackgroundColor, trailing: room.canSendEvent(EventTypes.RoomTopic)
foregroundColor: iconColor, ? Icon(
radius: Avatar.defaultSize / 2, Icons.edit_outlined,
child: const Icon(Icons.edit_outlined), color: Theme.of(context)
.colorScheme
.onBackground,
) )
: null, : null,
title: Text( title: Text(
'${L10n.of(context)!.groupDescription}:', L10n.of(context)!.groupDescription,
style: TextStyle( style: TextStyle(
color: Theme.of(context) color:
.colorScheme Theme.of(context).colorScheme.secondary,
.secondary, fontWeight: FontWeight.bold,
fontWeight: FontWeight.bold)), ),
subtitle: LinkText( ),
),
if (room.topic.isNotEmpty)
Padding(
padding: const EdgeInsets.symmetric(
horizontal: 16.0),
child: LinkText(
text: room.topic.isEmpty text: room.topic.isEmpty
? L10n.of(context)!.addGroupDescription ? L10n.of(context)!.addGroupDescription
: room.topic, : room.topic,
@ -132,9 +140,6 @@ class ChatDetailsView extends StatelessWidget {
onLinkTap: (url) => onLinkTap: (url) =>
UrlLauncher(context, url).launchUrl(), UrlLauncher(context, url).launchUrl(),
), ),
onTap: room.canSendEvent('m.room.topic')
? controller.setTopicAction
: null,
), ),
const SizedBox(height: 8), const SizedBox(height: 8),
const Divider(height: 1), const Divider(height: 1),

View File

@ -39,16 +39,26 @@ class ParticipantListItem extends StatelessWidget {
title: Row( title: Row(
children: <Widget>[ children: <Widget>[
Text(user.calcDisplayname()), Text(user.calcDisplayname()),
permissionBatch.isEmpty if (permissionBatch.isNotEmpty)
? Container() Container(
: Container( padding: const EdgeInsets.symmetric(
padding: const EdgeInsets.all(4), horizontal: 4,
vertical: 2,
),
margin: const EdgeInsets.symmetric(horizontal: 8), margin: const EdgeInsets.symmetric(horizontal: 8),
decoration: BoxDecoration( decoration: BoxDecoration(
color: Theme.of(context).secondaryHeaderColor, color: Theme.of(context).colorScheme.primaryContainer,
borderRadius: BorderRadius.circular(8), borderRadius: BorderRadius.circular(8),
border: Border.all(
color: Theme.of(context).colorScheme.primary,
)),
child: Text(
permissionBatch,
style: TextStyle(
fontSize: 14,
color: Theme.of(context).colorScheme.primary,
),
), ),
child: Center(child: Text(permissionBatch)),
), ),
membershipBatch[user.membership]!.isEmpty membershipBatch[user.membership]!.isEmpty
? Container() ? Container()