tentar aresolver a home
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:playmaker/classe/theme.dart';
|
||||
import 'package:cached_network_image/cached_network_image.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import '../controllers/team_controller.dart';
|
||||
import '../controllers/active_team.dart';
|
||||
import '../utils/size_extension.dart';
|
||||
|
||||
class StatusPage extends StatefulWidget {
|
||||
@@ -44,6 +45,32 @@ class _StatusPageState extends State<StatusPage> {
|
||||
if (_selectedTeamId == null) {
|
||||
_loadSelectedTeamFallback();
|
||||
}
|
||||
|
||||
// Listen to global active team changes (e.g., when user marks favorite)
|
||||
globalActiveTeam.addListener(_onGlobalActiveTeamChanged);
|
||||
|
||||
// Se já existe um globalActiveTeam no momento da abertura da página, aplica-o
|
||||
final atNow = globalActiveTeam.value;
|
||||
if (atNow != null) {
|
||||
_selectedTeamId = atNow.id;
|
||||
_selectedTeamName = atNow.name;
|
||||
_selectedTeamLogo = atNow.logo;
|
||||
}
|
||||
}
|
||||
|
||||
void _onGlobalActiveTeamChanged() {
|
||||
final at = globalActiveTeam.value;
|
||||
if (!mounted) return;
|
||||
|
||||
// Atualiza sempre para a equipa ativa global (favorita). Isto força a Status
|
||||
// a mostrar a equipa marcada como favorita assim que o utilizador a define.
|
||||
if (at != null) {
|
||||
setState(() {
|
||||
_selectedTeamId = at.id;
|
||||
_selectedTeamName = at.name;
|
||||
_selectedTeamLogo = at.logo;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
String _prefsKey(String key) {
|
||||
@@ -238,6 +265,12 @@ class _StatusPageState extends State<StatusPage> {
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
globalActiveTeam.removeListener(_onGlobalActiveTeamChanged);
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
List<Map<String, dynamic>> _aggregateStats(
|
||||
List<dynamic> stats, List<dynamic> games, List<dynamic> members) {
|
||||
Map<String, Map<String, dynamic>> aggregated = {};
|
||||
|
||||
Reference in New Issue
Block a user