From be103c66b0aa5c21e6c153d8eac160b437e16674 Mon Sep 17 00:00:00 2001 From: 230404 <230404@epvc.pt> Date: Sun, 22 Mar 2026 15:28:56 +0000 Subject: [PATCH] =?UTF-8?q?orienta=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/main.dart | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 2db8361..095a6ba 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,21 +1,27 @@ import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; // Para as orientações import 'package:supabase_flutter/supabase_flutter.dart'; -import 'package:playmaker/classe/theme.dart'; // 👇 IMPORTA O TEU TEMA +import 'package:playmaker/classe/theme.dart'; import 'pages/login.dart'; -// ======================================================== -// 👇 A VARIÁVEL MÁGICA QUE FALTAVA (Fora do void main) 👇 -// ======================================================== +// Variável global para controlar o Tema final ValueNotifier themeNotifier = ValueNotifier(ThemeMode.system); void main() async { + // 1. Inicializa os bindings do Flutter WidgetsFlutterBinding.ensureInitialized(); + // 2. Inicializa o Supabase await Supabase.initialize( url: 'https://sihwjdshexjyvsbettcd.supabase.co', anonKey: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InNpaHdqZHNoZXhqeXZzYmV0dGNkIiwicm9sZSI6ImFub24iLCJpYXQiOjE3Njg5MTQxMjgsImV4cCI6MjA4NDQ5MDEyOH0.gW3AvTJVNyE1Dqa72OTnhrUIKsndexrY3pKxMIAaAy8', ); + // 3. Deixa a orientação livre (Portrait) para o arranque da App + SystemChrome.setPreferredOrientations([ + DeviceOrientation.portraitUp, + ]); + runApp(const MyApp()); } @@ -24,7 +30,6 @@ class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { - // FICA À ESCUTA DO THEMENOTIFIER return ValueListenableBuilder( valueListenable: themeNotifier, builder: (_, ThemeMode currentMode, __) { @@ -33,7 +38,7 @@ class MyApp extends StatelessWidget { title: 'PlayMaker', theme: AppTheme.lightTheme, darkTheme: AppTheme.darkTheme, - themeMode: currentMode, // 👇 ISTO RECEBE O VALOR DO NOTIFIER + themeMode: currentMode, home: const LoginPage(), ); },