Repository: flutter
Issue: Flutter Web engine removes query parameter encoding
Labels: platform-web,has reproducible steps,P2,team-web,triaged-web,found in release: 3.19,found in release: 3.22

### Steps to reproduce

1. Use this code in Flutter Web:
```dart
usePathUrlStrategy();
Timer(const Duration(seconds: 2), () {
  SystemNavigator.routeInformationUpdated(uri: Uri.parse('/test?query=abc%23d'));
});
    
runApp(const SizedBox());
```

2. Run the app and see the resulting url in the browser's url bar

### Expected results

The url should be set to `/test?query=abc%23d`

### Actual results

The url is set to `/test?query=abc#d`

As the result of this, if the uri is processed again (e.g. by RouterDelegate) the query parameter will be `abc` instead of `abc#d`, because `#` wasn't properly escaped.

The possible culprit is [this](https://github.com/flutter/engine/blob/f2bfea5fdecde243b61d0b4d758a37ad278d9c62/lib/web_ui/lib/src/engine/window.dart#L643) Uri.decodeComponent() in engine's code


### Flutter Doctor output

<details open><summary>Doctor output</summary>

```console
[✓] Flutter (Channel stable, 3.19.6, on Microsoft Windows [Version 10.0.22631.3447], locale pl-PL)
    • Flutter version 3.19.6 on channel stable at C:\tools\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 54e66469a9 (3 weeks ago), 2024-04-17 13:08:03 -0700
    • Engine revision c4cd48e186
    • Dart version 3.3.4
    • DevTools version 2.31.1

[✓] Windows Version (Installed version of Windows is version 10 or higher)

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at C:\Users\Gieted\AppData\Local\Android\sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = C:\Program Files\Chromium\Application\chrome.exe

[✓] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.9.6)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.9.34728.123
    • Windows 10 SDK version 10.0.22000.0

[!] 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 Community Edition (version 2024.1)
    • IntelliJ at C:\Users\Gieted\AppData\Local\Programs\IntelliJ IDEA Community Edition
    • Flutter plugin version 79.0.3
    • Dart plugin version 241.15989.9

[✓] VS Code, 64-bit edition (version 1.89.0)
    • VS Code at C:\Program Files\Microsoft VS Code
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22631.3447]
    • Chrome (web)      • chrome  • web-javascript • unknown
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 124.0.2478.80

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 2 categories.
```

</details>