contac and calendar update

This commit is contained in:
2025-11-08 12:26:18 +01:00
parent 05044691b6
commit 8359b8c49e
13 changed files with 1037 additions and 532 deletions
+67 -69
View File
@@ -633,7 +633,7 @@ Widget _buildFolderRow(String folderName) {
_folderTypes[folderName] == true
? '🏆 $folderName'
: folderName,
style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w600),
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: _bulletColor),
),
],
),
@@ -795,53 +795,42 @@ Widget _buildTargetsList(String folderName) {
child: Row(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
// Target info section
// Target info section - Clickable
Expanded(
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 12),
child: Row(
children: [
Expanded(
child: Text(
fileName,
child: InkWell(
onTap: () => _openFilePreview(file),
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 12),
child: Row(
children: [
Expanded(
child: Text(
fileName,
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.bold,
color: Colors.black87,
),
),
),
const SizedBox(width: 8),
const Icon(
Icons.emoji_events,
color: Colors.amber,
size: 14,
),
const SizedBox(width: 4),
Text(
"$score",
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.bold,
fontSize: 13,
fontWeight: FontWeight.w600,
color: Colors.black87,
),
),
),
const SizedBox(width: 8),
const Icon(
Icons.emoji_events,
color: Colors.amber,
size: 14,
),
const SizedBox(width: 4),
Text(
"$score",
style: const TextStyle(
fontSize: 13,
fontWeight: FontWeight.w600,
color: Colors.black87,
),
),
],
),
),
),
// Preview button
InkWell(
onTap: () => _openFilePreview(file),
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12),
decoration: BoxDecoration(
color: _bulletColor.withValues(alpha: 0.15),
border: Border(
left: BorderSide(color: Colors.grey[300]!, width: 1),
],
),
),
child: Icon(Icons.visibility, color: _bulletColor, size: 18),
),
),
// Delete button
@@ -881,35 +870,44 @@ Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: [
// 🔽 Filter dropdown at the top
Padding(
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 12.0),
child: GestureDetector(
onTap: () => _showFolderFilterPopup(context),
child: Container(
width: double.infinity,
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 14),
decoration: BoxDecoration(
color: Colors.grey[300], // Same as folder background
borderRadius: BorderRadius.circular(12),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
_folderFilter == 'all'
? _t('Showing: 📂 All folders')
: _folderFilter == 'tournament'
? _t('Showing: 🏆 Tournament folders')
: _t('Showing: 🎯 Training folders'),
style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w500),
// 🔽 Filter dropdown at the top (styled like tab bar)
Container(
padding: const EdgeInsets.all(6),
decoration: BoxDecoration(
color: Colors.grey[900],
border: Border(
bottom: BorderSide(color: Colors.grey[800]!, width: 1),
),
),
const Icon(Icons.filter_list),
],
),
),
),
),
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4),
child: GestureDetector(
onTap: () => _showFolderFilterPopup(context),
child: Container(
width: double.infinity,
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(10),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
_folderFilter == 'all'
? _t('Showing: 📂 All folders')
: _folderFilter == 'tournament'
? _t('Showing: 🏆 Tournament folders')
: _t('Showing: 🎯 Training folders'),
style: const TextStyle(fontSize: 14, fontWeight: FontWeight.w500, color: Colors.black),
),
Icon(Icons.filter_list, color: Colors.black87, size: 18),
],
),
),
),
),
),
// 📁 Folder list or empty state
Expanded(
child: _groupedFiles.isEmpty