Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Browser title does not update when navigating back from page #53568

Open
perclasson opened this issue Mar 30, 2020 · 20 comments
Open

Browser title does not update when navigating back from page #53568

perclasson opened this issue Mar 30, 2020 · 20 comments
Labels
customer: web10 f: routes Navigator, Router, and related APIs. found in release: 3.7 Found to occur in 3.7 found in release: 3.9 Found to occur in 3.9 framework flutter/packages/flutter repository. See also f: labels. has reproducible steps The issue has been confirmed reproducible and is ready to work on P2 Important issues not at the top of the work list platform-web Web applications specifically team-web Owned by Web platform team triaged-web Triaged by Web platform team

Comments

@perclasson
Copy link
Contributor

Steps to Reproduce

  1. Create example app as seen here and run it for the web: http://dartpad.dartlang.org/7894c397c7671d7d6a358dce11167bbe
  2. Notice that the title on the browser is set correctly for the home page to 'Home Page'
  3. Navigate to the test page and see that the title changes to 'Test Page'
  4. Go back to the home page and the title does not update to 'Home Page' again, it remains 'Test Page'
Logs
[✓] Flutter (Channel master, v1.16.3-pre.56, on Mac OS X 10.15.4 19E266, locale en-DE)
    • Flutter version 1.16.3-pre.56 at /Users/perc/development/flutter
    • Framework revision 8857c4cec8 (4 days ago), 2020-03-25 21:21:01 -0400
    • Engine revision b235233e9d
    • Dart version 2.8.0 (build 2.8.0-dev.17.0 2323087237)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/perc/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-stable, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.3.1, Build version 11C505
    • CocoaPods version 1.8.4

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio
    • Android Studio at /Applications/Android Studio with Blaze.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 44.0.2
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[!] VS Code (version 1.43.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (4 available)
    • iPhone 11 Pro Max • 81158E5C-C27D-49D1-9FD9-55EE1011FEBF • ios            • com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)
    • macOS             • macOS                                • darwin-x64     • Mac OS X 10.15.4 19E266
    • Chrome            • chrome                               • web-javascript • Google Chrome 80.0.3987.149
    • Web Server        • web-server                           • web-javascript • Flutter Tools
@ferhatb
Copy link
Contributor

ferhatb commented Mar 31, 2020

/cc @goderbauer please triage:
The Title widgets calls the following in build() method:
SystemChrome.setApplicationSwitcherDescription(
ApplicationSwitcherDescription(
label: title,
primaryColor: color.value,
),
);

Instead it should call it in a TitleRenderObject paint, otherwise the widget won't get rebuild causing this issue.

@goderbauer
Copy link
Member

Moving the call to paint doesn't fully work. Imagine you have a repaint boundary, which has a Title widget surrounding it and another one as a child. If the one inside the repaint boundary goes away, the one outside the boundary doesn't necessarily repaint and therefore the title set by the no-longer existing Title widget inside the boundary would persist.

Looking at the History of the Title widget, it looks like it was designed to be fairly static: Its initial use was to provide a name shown in Android's app switcher, which is usually constant throughout the lifetime of an app. For the reasons outlined in this bug, the title widget doesn't really support nesting (or having title widgets as siblings). We'd probably have to come up with a different mechanism to support the use case implied in this bug (I am assuming the goal is that different Routes on the Navigator should be able to have different page titles?).

If we want to continue using the the Title widget for this, we'd have to define what it means to nest them (I would assume the most deeply nested one should "win") and what it means to have them as siblings (e.g. two widgets in a Row or Column each have Title widgets).

As a workaround for the original issue one could probably write a Navigator observer that keeps track of the topmost page on the routing stack and calls SystemChrome.setApplicationSwitcherDescription directly whenever the topmost route changes (you'd have to remove all title widgets to make this work).

Alternatively, in the Navigator 2.0 design the RouterDelegate (who is configuring what's shown on the Navigator Stack) could call this API whenever it changes the configuration of the Navigator. (cc @chunhtai FYI)

@goderbauer goderbauer added the f: routes Navigator, Router, and related APIs. label Apr 3, 2020
@goderbauer
Copy link
Member

goderbauer commented Apr 3, 2020

Another idea for how the Title widget could be changed to support these use cases: Title widgets are stateful and when they are created, they register their title string with a central registration point. The registration point keeps titles in a stack-like data structure. At the end of each frame the topmost title string is send to the operating system via SystemChrome.setApplicationSwitcherDescription, if it has changed. When a Title widget is disposed, its entry is removed from the central registration point.

Edit: Although, this would brake if you add a route below the topmost one as its title now would be newer. Makes me believe that making the RouterDelegate be in charge of this may be the better option...

@ferhatb
Copy link
Contributor

ferhatb commented Apr 3, 2020

Yes. something central like a stack holding mounted/unmounted TitleElements would probably work well. The latest mounted title could take precedence. You can assume only one Title is really active but animating between routes would temporarily have 2.

@goderbauer goderbauer added this to the Goals milestone Apr 6, 2020
@goderbauer
Copy link
Member

Even though I suggested it above, the stack based on mounted/unmounted doesn't work because when you insert a route below the current route, that new route's title would take precedence over the current route.

Here's another idea that may work better:

We introduce a new RouteTitle widget. It can be used within a Route and registers its title with the surrounding ModalRoute by reaching out to it via ModalRoute.of. The ModalRoute ensures that there's only ever on RouteTile widget in its subtree (When a PageTitle is created it increments a counter in the surrounding ModalRoute, when it is disposed, it decrements the counter, at the end of the frame, the ModalRoute asserts that the counter is zero or one). The Navigator looks at the currently set title of the topmost ModalRoute and - when it changes - fires its new onNewTitle callback. That one can be wired up to set the title directly via the SystemChrome.setApplicationSwitcherDescription or to rebuild a Title widget with the new title. MaterialApp should be changed to set this up automatically.

At the same time, we should add asserts to ensure that there's always only one Title widget in the tree. This could be done by giving all title widgets the same static global key. That way there can never be more than one in the tree. At the same time we should modify GlobalKey to take an optional error message that should be printed if this particular key ends up duplicated in the tree. This will allow us to print a more actionable error message for this case.

@mariamhas mariamhas added customer: web10 customer: gallery Relating to flutter/gallery repository. Please transfer non-framework issues there. labels May 5, 2020
@kf6gpe kf6gpe added the P2 Important issues not at the top of the work list label May 29, 2020
@Hixie Hixie removed this from the None. milestone Aug 17, 2020
@TahaTesser
Copy link
Member

code sample
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Title Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      initialRoute: '/',
      routes: {
        '/': (context) => HomePage(),
        '/test': (context) => Page(title: 'Test Page'),
      },
    );
  }
}

class Page extends StatelessWidget {
  const Page({Key key, this.title}) : super(key: key);

  final String title;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Title(
        title: title,
        color: Colors.black,
        child: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              Text(title),
              RaisedButton(
                onPressed: () {
                  Navigator.of(context).pop();
                },
                child: Text('Go back!'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Title(
        title: 'Home Page',
        color: Colors.black,
        child: Center(
          child: RaisedButton(
            onPressed: () {
              Navigator.of(context).pushNamed('/test');
            },
            child: Text('Test page'),
          ),
        ),
      ),
    );
  }
}


flutter doctor -v
[✓] Flutter (Channel master, 1.22.0-2.0.pre.162, on Mac OS X 10.15.6 19G2021,
    locale en-GB)
    • Flutter version 1.22.0-2.0.pre.162 at
      /Users/tahatesser/Code/flutter_master
    • Framework revision bcfad2068e (77 minutes ago), 2020-09-01 08:34:25 -0400
    • Engine revision 165abef0a2
    • Dart version 2.10.0 (build 2.10.0-77.0.dev)

 
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-29, build-tools 29.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 48.1.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.48.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.13.2

[✓] Connected device (4 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS 13.6.1
    • macOS (desktop)        • macos                     • darwin-x64     • Mac OS X 10.15.6
      19G2021
    • Web Server (web)       • web-server                • web-javascript • Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript • Google Chrome
      84.0.4147.135

• No issues found!

@TahaTesser TahaTesser added found in release: 1.22 Found to occur in 1.22 has reproducible steps The issue has been confirmed reproducible and is ready to work on platform-web Web applications specifically labels Sep 1, 2020
@xuanswe
Copy link

xuanswe commented Jan 8, 2021

Chrome tab only shows 'Home', navigate to other page, title doesn't change.

Navigator(
  pages: [
    MaterialPage(
      key: const ValueKey('home'),
      child: Title(
        title: 'Home',
        color: Colors.black,
        child: Home(),
      ),
    ),
    MaterialPage(
      key: const ValueKey('other'),
      child: Title(
        title: 'Other',
        color: Colors.black,
        child: Other(),
      ),
    ),
  ]
)
flutter doctor -v
[√] Flutter (Channel beta, 1.25.0-8.2.pre, on Microsoft Windows [Version 10.0.19042.685], locale en-DE)
    • Flutter version 1.25.0-8.2.pre at C:\Workspace\PortableApp\flutter
    • Framework revision b0a2299859 (3 days ago), 2021-01-05 12:34:13 -0800
    • Engine revision 92ae191c17
    • Dart version 2.12.0 (build 2.12.0-133.2.beta)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Workspace\PortableApp\android-sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Workspace\PortableApp\android-sdk
    • Java binary at: C:\Workspace\PortableApp\java\jdk-1.8.0.212-3.b04.redhat\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-3-redhat-b04)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).

[√] IntelliJ IDEA Ultimate Edition (version 2020.3)
    • IntelliJ at C:\Workspace\PortableApp\idea
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

[√] VS Code (version 1.52.1)
    • VS Code at C:\Users\nguyen\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.0

@lchwe
Copy link

lchwe commented Aug 12, 2021

@ferhatb, this issue is still happening: #68423. the chrome browser title still reads "flutter" when using ios chrome. Using SystemChrome.setApplicationSwitcherDescription does not solve the issue. How can I get around this issue? It's very confusing to web users

@ozz-rjq
Copy link

ozz-rjq commented Oct 8, 2021

having the same issue

@Godaday
Copy link

Godaday commented Dec 3, 2021

try use js document.title get this ,is working !

@kornha
Copy link

kornha commented Apr 3, 2022

try use js document.title get this ,is working !

not sure what you mean here. How do we do this?

@yasseralsaidi
Copy link

yasseralsaidi commented Sep 28, 2022

same here, any actual fix rather than change build/web/main.dart.js every time after build?

@danagbemava-nc
Copy link
Member

Reproducible on the latest versions of flutter.

recording
Screen.Recording.2023-03-09.at.12.48.25.mov
code sample
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Title Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      initialRoute: '/',
      routes: {
        '/': (context) => HomePage(),
        '/test': (context) => const Page(title: 'Test Page'),
      },
    );
  }
}

class Page extends StatelessWidget {
  const Page({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Title(
        title: title,
        color: Colors.black,
        child: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              Text(title),
              ElevatedButton(
                onPressed: () {
                  Navigator.of(context).pop();
                },
                child: const Text('Go back!'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Title(
        title: 'Home Page',
        color: Colors.black,
        child: Center(
          child: ElevatedButton(
            onPressed: () {
              Navigator.of(context).pushNamed('/test');
            },
            child: const Text('Test page'),
          ),
        ),
      ),
    );
  }
}
flutter doctor -v
[✓] Flutter (Channel stable, 3.7.7, on macOS 13.2.1 22D68 darwin-arm64, locale en-GB)
    • Flutter version 3.7.7 on channel stable at /Users/nexus/dev/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2ad6cd72c0 (19 hours ago), 2023-03-08 09:41:59 -0800
    • Engine revision 1837b5be5f
    • Dart version 2.19.4
    • DevTools version 2.20.1

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] Android Studio (version 2022.1)
    • Android Studio at /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2022.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 72.1.4
    • Dart plugin version 223.8617.8

[✓] VS Code (version 1.76.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.60.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.2.1 22D68 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 111.0.5563.64

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!
[!] Flutter (Channel master, 3.9.0-1.0.pre.119, on macOS 13.2.1 22D68 darwin-arm64, locale en-GB)
    • Flutter version 3.9.0-1.0.pre.119 on channel master at /Users/nexus/dev/sdks/flutters
    ! Warning: `flutter` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/nexus/dev/sdks/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/nexus/dev/sdks/flutters. Consider adding /Users/nexus/dev/sdks/flutters/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 367ba011fd (8 hours ago), 2023-03-09 00:01:53 -0500
    • Engine revision 78ff6a0934
    • Dart version 3.0.0 (build 3.0.0-312.0.dev)
    • DevTools version 2.22.2
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/nexus/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] Android Studio (version 2022.1)
    • Android Studio at /Users/nexus/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/221.6008.13.2211.9477386/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2022.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 72.1.4
    • Dart plugin version 223.8617.8

[✓] VS Code (version 1.76.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.60.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.2.1 22D68 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 111.0.5563.64

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

@danagbemava-nc danagbemava-nc added found in release: 3.7 Found to occur in 3.7 found in release: 3.9 Found to occur in 3.9 and removed found in release: 1.22 Found to occur in 1.22 labels Mar 9, 2023
@seosea0
Copy link

seosea0 commented Jul 6, 2023

Reproducible on flutter 3.10.5 in stable branch and on flutter 3.11.0 in master branch.

@flutter-triage-bot flutter-triage-bot bot added multiteam-retriage-candidate team-web Owned by Web platform team triaged-web Triaged by Web platform team labels Jul 8, 2023
@albertolina
Copy link

Any news on this?

@wikylyu
Copy link

wikylyu commented Sep 18, 2023

Any news on this?

I found a way to solve this problem, using lifecycle

Just update the state when the page is active|resumed.

  @override
  void onLifecycleEvent(LifecycleEvent event) {
    if (event == LifecycleEvent.active) {
      setState(() {});
    }
  }

Check the package for more details.

@yigtkaya
Copy link

is there any fix for this? I'm having the same issue

@hientrung
Copy link

Because you pop route, so there are no Title rebuilt, then it cannot update page title.
Use Navigation 2.0 for more control and support for browser history too

@hientrung
Copy link

maybe package pagetitle can help

@guidezpl guidezpl removed the customer: gallery Relating to flutter/gallery repository. Please transfer non-framework issues there. label Jan 15, 2024
@neoacevedo
Copy link

Because you pop route, so there are no Title rebuilt, then it cannot update page title. Use Navigation 2.0 for more control and support for browser history too

The navigation widget is used, the problem comes to turn back to previous one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
customer: web10 f: routes Navigator, Router, and related APIs. found in release: 3.7 Found to occur in 3.7 found in release: 3.9 Found to occur in 3.9 framework flutter/packages/flutter repository. See also f: labels. has reproducible steps The issue has been confirmed reproducible and is ready to work on P2 Important issues not at the top of the work list platform-web Web applications specifically team-web Owned by Web platform team triaged-web Triaged by Web platform team
Projects
None yet
Development

No branches or pull requests