feat: Enhance socket reconnection and chat screen lifecycle management, and refine agent detail and home screen UI.

This commit is contained in:
pradeepkumar
2026-03-19 03:58:03 +05:30
parent 6936c29c13
commit 21e677bf27
5 changed files with 75 additions and 22 deletions

View File

@@ -656,7 +656,11 @@ class _AgentDetailScreenState extends ConsumerState<AgentDetailScreen> {
const SizedBox(height: 8),
// Location (wrapping) + Member Since (separate line)
Builder(builder: (_) {
final parts = state.locationParts;
var parts = state.locationParts;
// Fallback: use agent model location if fieldValues-based parts are empty
if (parts.isEmpty && agent.location.isNotEmpty) {
parts = agent.location.split(', ').map((s) => s.trim()).where((s) => s.isNotEmpty).toList();
}
const maxVisible = 4;
final visibleParts = parts.take(maxVisible).join(', ');
final remaining = parts.length - maxVisible;
@@ -1520,8 +1524,9 @@ class _SpecializationCardWidgetState extends State<_SpecializationCardWidget> {
return Container(
width: 298,
constraints: const BoxConstraints(minHeight: 236),
height: _expanded ? null : 236,
padding: const EdgeInsets.symmetric(vertical: 16),
clipBehavior: Clip.antiAlias,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(15),
@@ -1531,6 +1536,7 @@ class _SpecializationCardWidgetState extends State<_SpecializationCardWidget> {
),
),
child: Column(
mainAxisSize: _expanded ? MainAxisSize.min : MainAxisSize.max,
children: [
Icon(_icon, size: 32, color: AppColors.accentOrange),
const SizedBox(height: 8),