FlutterFlow / flutterflow-issues

A community issue tracker for FlutterFlow.
116 stars 19 forks source link

Tutorial screen never stopped appearing again #3679

Open turisouza opened 3 weeks ago

turisouza commented 3 weeks ago

Can we access your project?

Current Behavior

One of the first times I accessed FlutterFlow I clicked to see a tutorial. After that, every time I open or refresh my page the tutorial appears. I've gone to the end 500 times. I've already looked for how to stop it from displaying. It gets in the way of my work and makes me waste time.

Expected Behavior

The first time I got to the end of the tutorial it should never appear again. Or there should be an option to not show it anymore, so it stops appearing.

Steps to Reproduce

Enter my project.

The Tutorial will appear.

Go to the end of the tutorial and close it.

Reload the page. It will appear again.

Reproducible from Blank

Bug Report Code (Required)

GestureDetector( onTap: () => FocusScope.of(context).unfocus(), child: Scaffold( key: scaffoldKey, backgroundColor: FlutterFlowTheme.of(context).secondaryBackground, body: Row( mainAxisSize: MainAxisSize.max, children: [ Expanded( flex: 6, child: Container( width: 100, height: double.infinity, decoration: BoxDecoration( gradient: LinearGradient( colors: [ FlutterFlowTheme.of(context).success, FlutterFlowTheme.of(context).alternate ], stops: [0, 1], begin: AlignmentDirectional(0.87, -1), end: AlignmentDirectional(-0.87, 1), ), ), alignment: AlignmentDirectional(0, -1), child: Align( alignment: AlignmentDirectional(0, 0), child: SingleChildScrollView( child: Column( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.center, children: [ Align( alignment: AlignmentDirectional(0, 0), child: Padding( padding: EdgeInsets.all(24), child: Container( width: double.infinity, constraints: BoxConstraints( maxWidth: 570, ), decoration: BoxDecoration( color: FlutterFlowTheme.of(context) .secondaryBackground, boxShadow: [ BoxShadow( blurRadius: 4, color: Color(0x33000000), offset: Offset( 0, 2, ), ) ], borderRadius: BorderRadius.circular(12), ), child: Align( alignment: AlignmentDirectional(0, 0), child: Padding( padding: EdgeInsets.all(32), child: Column( mainAxisSize: MainAxisSize.max, crossAxisAlignment: CrossAxisAlignment.center, children: [ Text( 'Vamos Começar', textAlign: TextAlign.center, style: FlutterFlowTheme.of(context) .displaySmall .override( fontFamily: 'Outfit', letterSpacing: 0, ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 12, 0, 24), child: Text( 'Informe seu email e senha para começar a Emagrecer!', textAlign: TextAlign.center, style: FlutterFlowTheme.of(context) .labelLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 16), child: Container( width: double.infinity, child: TextFormField( controller: _model.emailAddressTextController, focusNode: _model.emailAddressFocusNode, autofocus: true, autofillHints: [AutofillHints.email], obscureText: false, decoration: InputDecoration( labelText: 'Email', labelStyle: FlutterFlowTheme.of(context) .labelLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .primaryBackground, width: 2, ), borderRadius: BorderRadius.circular(12), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .primary, width: 2, ), borderRadius: BorderRadius.circular(12), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .alternate, width: 2, ), borderRadius: BorderRadius.circular(12), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .alternate, width: 2, ), borderRadius: BorderRadius.circular(12), ), filled: true, fillColor: FlutterFlowTheme.of(context) .primaryBackground, ), style: FlutterFlowTheme.of(context) .bodyLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), keyboardType: TextInputType.emailAddress, validator: _model .emailAddressTextControllerValidator .asValidator(context), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 16), child: Container( width: double.infinity, child: TextFormField( controller: _model.passwordTextController, focusNode: _model.passwordFocusNode, autofocus: true, autofillHints: [ AutofillHints.password ], obscureText: !_model.passwordVisibility, decoration: InputDecoration( labelText: 'Password', labelStyle: FlutterFlowTheme.of(context) .labelLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .primaryBackground, width: 2, ), borderRadius: BorderRadius.circular(12), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .primary, width: 2, ), borderRadius: BorderRadius.circular(12), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .error, width: 2, ), borderRadius: BorderRadius.circular(12), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context) .error, width: 2, ), borderRadius: BorderRadius.circular(12), ), filled: true, fillColor: FlutterFlowTheme.of(context) .primaryBackground, suffixIcon: InkWell( onTap: () => setState( () => _model .passwordVisibility = !_model.passwordVisibility, ), focusNode: FocusNode( skipTraversal: true), child: Icon( _model.passwordVisibility ? Icons.visibility_outlined : Icons .visibility_off_outlined, color: FlutterFlowTheme.of(context) .secondaryText, size: 24, ), ), ), style: FlutterFlowTheme.of(context) .bodyLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), validator: _model .passwordTextControllerValidator .asValidator(context), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 16), child: FFButtonWidget( onPressed: () async { GoRouter.of(context) .prepareAuthEvent(); final user = await authManager.signInWithEmail( context, _model.emailAddressTextController .text, _model.passwordTextController.text, ); if (user == null) { return; } context.goNamedAuth( 'inicio', context.mounted); }, text: 'Acessar a Minha Low Carb', options: FFButtonOptions( width: double.infinity, height: 44, padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 0), iconPadding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 0), color: FlutterFlowTheme.of(context) .primary, textStyle: FlutterFlowTheme.of(context) .titleSmall .override( fontFamily: 'Readex Pro', color: Colors.white, letterSpacing: 0, ), elevation: 3, borderSide: BorderSide( color: Colors.transparent, width: 1, ), borderRadius: BorderRadius.circular(12), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 16, 0, 16, 24), child: Text( 'Ou faça o login com', textAlign: TextAlign.center, style: FlutterFlowTheme.of(context) .labelLarge .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 16), child: FFButtonWidget( onPressed: () async { GoRouter.of(context) .prepareAuthEvent(); final user = await authManager .signInWithGoogle(context); if (user == null) { return; } context.goNamedAuth( 'inicio', context.mounted); }, text: 'Continue com Google', icon: FaIcon( FontAwesomeIcons.google, size: 20, ), options: FFButtonOptions( width: double.infinity, height: 44, padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 0), iconPadding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 0), color: FlutterFlowTheme.of(context) .secondaryBackground, textStyle: FlutterFlowTheme.of( context) .titleSmall .override( fontFamily: 'Readex Pro', color: FlutterFlowTheme.of(context) .primaryText, letterSpacing: 0, ), elevation: 0, borderSide: BorderSide( color: FlutterFlowTheme.of(context) .alternate, width: 2, ), borderRadius: BorderRadius.circular(12), hoverColor: FlutterFlowTheme.of(context) .primaryBackground, ), ), ), isAndroid ? Container() : Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 0, 0, 16), child: FFButtonWidget( onPressed: () async { GoRouter.of(context) .prepareAuthEvent(); final user = await authManager .signInWithApple(context); if (user == null) { return; } context.goNamedAuth( 'inicio', context.mounted); }, text: 'Continue com Apple', icon: FaIcon( FontAwesomeIcons.apple, size: 20, ), options: FFButtonOptions( width: double.infinity, height: 44, padding: EdgeInsetsDirectional .fromSTEB(0, 0, 0, 0), iconPadding: EdgeInsetsDirectional .fromSTEB(0, 0, 0, 0), color: FlutterFlowTheme.of(context) .secondaryBackground, textStyle: FlutterFlowTheme.of( context) .titleSmall .override( fontFamily: 'Readex Pro', color: FlutterFlowTheme.of( context) .primaryText, letterSpacing: 0, ), elevation: 0, borderSide: BorderSide( color: FlutterFlowTheme.of( context) .alternate, width: 2, ), borderRadius: BorderRadius.circular(12), hoverColor: FlutterFlowTheme.of(context) .primaryBackground, ), ), ), // You will have to add an action on this rich text to go to your login page. Padding( padding: EdgeInsetsDirectional.fromSTEB( 0, 12, 0, 12), child: RichText( textScaler: MediaQuery.of(context).textScaler, text: TextSpan( children: [ TextSpan( text: 'Não tem uma conta? ', style: TextStyle(), ), TextSpan( text: 'Crie a sua aqui!', style: FlutterFlowTheme.of( context) .bodyMedium .override( fontFamily: 'Readex Pro', color: FlutterFlowTheme.of( context) .primary, letterSpacing: 0, fontWeight: FontWeight.w600, ), mouseCursor: SystemMouseCursors.click, recognizer: TapGestureRecognizer() ..onTap = () async { context .pushNamed('criarConta'); }, ) ], style: FlutterFlowTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', letterSpacing: 0, ), ), ), ), ], ), ), ), ), ), ), ], ), ), ), ), ), ], ), ), )

Visual documentation

Captura de Tela 2024-08-24 às 18 22 08

Environment

FlutterFlow v4.1.83+ released August 23, 2024
Flutter version is 3.22.2
- Platform: MacOs
- Browser name and version: Chrome Versão 127.0.6533.120 (Versão oficial) (arm64)
- Operating system and version affected: Sonoma 14.5 (23F79)

Additional Information

It's wasting my time and getting on my nerves every time I log in to work or when the page reloads.

Alezanello commented 3 weeks ago


Hi there!

Could you please generate the Bug Report Code from your widget tree so we can determine whether this issue is specific to your project or related to your account?

To generate the Report Code, right-click on any widget in the widget tree, select the option to generate the report, and wait for the process to finish. Once it's done, please paste the code here!

image.png
turisouza commented 3 weeks ago

Hello!

IT4gz8jfz812ofpE7aX6bu9VhmIQJVs4aq00sNobbxAjIoDoPJkUafT7dlpuXcziS2xLKEWKjmEE/s7Gk/ztDMYEGzKcbb5P/5d2TDqWfzq/aoS4Cs6wREdDGelQIHai35jYuRMkLstYR0YZ2VyyFemWTj7BK4/7Zwh9f6PHaOI=

Alezanello commented 2 weeks ago

Hello,

I apologize for the late response. Does this issue still persist, or was it fixed in the latest FlutterFlow updates?

turisouza commented 2 weeks ago

Hello!

The error persists, and only in my main project. Even if I duplicate it, the duplication doesn't happen. But it continues in this one.

Philippez3r commented 15 hours ago

It appears on my end aswell. Exactly the same issue