fix: Prevent URLs and GIF links from being displayed as text content below media messages.

This commit is contained in:
pradeepkumar
2026-03-15 01:06:56 +05:30
parent f659be07ae
commit 8884038842
2 changed files with 123 additions and 116 deletions

View File

@@ -312,11 +312,16 @@ class _MenuDrawer extends ConsumerWidget {
), ),
// Bottom section: Log Out or Login buttons // Bottom section: Log Out or Login buttons
Padding( SafeArea(
top: false,
child: Padding(
padding: padding:
const EdgeInsets.symmetric(horizontal: 24, vertical: 16), const EdgeInsets.symmetric(horizontal: 24, vertical: 16),
child: isAuthenticated child: Column(
? // Log Out button - filled orange mainAxisSize: MainAxisSize.min,
children: [
if (isAuthenticated) ...[
// Log Out button - filled orange
SizedBox( SizedBox(
width: double.infinity, width: double.infinity,
height: 54, height: 54,
@@ -347,11 +352,9 @@ class _MenuDrawer extends ConsumerWidget {
), ),
), ),
), ),
) ),
: // Login / Sign Up buttons ] else ...[
Column( // Login button
mainAxisSize: MainAxisSize.min,
children: [
SizedBox( SizedBox(
width: double.infinity, width: double.infinity,
height: 54, height: 54,
@@ -384,6 +387,7 @@ class _MenuDrawer extends ConsumerWidget {
), ),
), ),
const SizedBox(height: 12), const SizedBox(height: 12),
// Sign Up button
SizedBox( SizedBox(
width: double.infinity, width: double.infinity,
height: 54, height: 54,
@@ -418,19 +422,15 @@ class _MenuDrawer extends ConsumerWidget {
), ),
), ),
], ],
),
),
// Version number // Version number
const SizedBox(height: 12),
FutureBuilder<PackageInfo>( FutureBuilder<PackageInfo>(
future: PackageInfo.fromPlatform(), future: PackageInfo.fromPlatform(),
builder: (context, snapshot) { builder: (context, snapshot) {
final version = snapshot.hasData final version = snapshot.hasData
? 'v${snapshot.data!.version} (${snapshot.data!.buildNumber})' ? 'v${snapshot.data!.version} (${snapshot.data!.buildNumber})'
: ''; : '';
return Padding( return Text(
padding: const EdgeInsets.only(bottom: 16),
child: Text(
version, version,
style: const TextStyle( style: const TextStyle(
fontFamily: 'SourceSerif4', fontFamily: 'SourceSerif4',
@@ -438,12 +438,15 @@ class _MenuDrawer extends ConsumerWidget {
fontWeight: FontWeight.w400, fontWeight: FontWeight.w400,
color: AppColors.hintText, color: AppColors.hintText,
), ),
),
); );
}, },
), ),
], ],
), ),
),
),
],
),
); );
}, },
); );

View File

@@ -985,8 +985,10 @@ class _ChatScreenState extends ConsumerState<ChatScreen> {
const SizedBox(height: 6), const SizedBox(height: 6),
// Message content // Message content
_buildMessageContent(message, isMine: true), _buildMessageContent(message, isMine: true),
// Show text content below media if present // Show text content below media if present (but not URLs/GIF links)
if (isMediaMessage && message.content.isNotEmpty) if (isMediaMessage &&
message.content.isNotEmpty &&
!message.content.trim().startsWith('http'))
Padding( Padding(
padding: const EdgeInsets.only(top: 4), padding: const EdgeInsets.only(top: 4),
child: Text( child: Text(
@@ -1071,8 +1073,10 @@ class _ChatScreenState extends ConsumerState<ChatScreen> {
const SizedBox(height: 6), const SizedBox(height: 6),
// Message content // Message content
_buildMessageContent(message, isMine: false), _buildMessageContent(message, isMine: false),
// Show text content below media if present // Show text content below media if present (but not URLs/GIF links)
if (isMediaMessage && message.content.isNotEmpty) if (isMediaMessage &&
message.content.isNotEmpty &&
!message.content.trim().startsWith('http'))
Padding( Padding(
padding: const EdgeInsets.only(top: 4), padding: const EdgeInsets.only(top: 4),
child: Text( child: Text(