Repository: flutter
Issue: Tab+Shift behaviour is not consistent with other web applications
Labels: a: text input,framework,f: material design,a: desktop,has reproducible steps,P2,found in release: 3.10,found in release: 3.11,team-framework,triaged-framework

<!-- Thank you for using Flutter!

     If you are looking for support, please check out our documentation
     or consider asking a question on Stack Overflow:
      * https://flutter.dev/
      * https://api.flutter.dev/
      * https://stackoverflow.com/questions/tagged/flutter?sort=frequent

     If you have found a bug or if our documentation doesn't have an answer
     to what you're looking for, then fill out the template below. Please read
     our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports
-->

This is a very specific issue that might indicate a broad set of differences in key listening between Flutter and other applications.

If you have a list of focusable widgets and press Tab+Shift (in this specific order) then focus will jump to the next widget and will get back to the previous one.

That doesn't match any other web application. If you use the Tab+Shift combination there, the focus will get to the next input and stay there. Basically, this combination will be treated as a single Tab key.

See the videos below for examples.

## Steps to Reproduce

<!-- You must include full steps to reproduce so that we can reproduce the problem. -->

1. Paste the following code:
```
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: MyWidget(),
        ),
      ),
    );
  }
}

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Padding(
      padding: const EdgeInsets.all(16),
      child: Column(
        children: [
          TextField(),
          TextField(),
          TextField(),
          TextField(),
          TextField(),
        ],
      ),
    );
  }
}

```
2. Launch web application
3. Focus the second text field
4. Press Tab+Shift combination
5. Focus jumps and stays at the same place

<details>
  <summary>Expected behaviour (non-Flutter application):</summary>

https://user-images.githubusercontent.com/13119003/112472624-6b44d180-8d7e-11eb-8fe5-b67b5fde3a6a.mp4


</details>

<details>
  <summary>Actual behaviour (Flutter application):</summary>

https://user-images.githubusercontent.com/13119003/112472642-70a21c00-8d7e-11eb-85f0-265a27281ca9.mp4

</details>

<details>
  <summary>flutter doctor -v</summary>

```
[✓] Flutter (Channel stable, 2.0.1, on macOS 11.2.3 20D91 darwin-x64, locale en-GB)
    • Flutter version 2.0.1 at /Users/krasnov/sdk/flutter
    • Framework revision c5a4b4029c (3 weeks ago), 2021-03-04 09:47:48 -0800
    • Engine revision 40441def69
    • Dart version 2.12.0

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/krasnov/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/krasnov/Library/Android/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-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.0.beta.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.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 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.53.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0

[✓] Connected device (1 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 89.0.4389.90

• No issues found!

```

</details>