Repository: flutter
Issue: `DropdownMenu.onSelected` conflicts with `TextField` `onTapOutside` when `requestFocusOnTap: false` and `true`
Labels: a: text input,framework,f: material design,has reproducible steps,P2,team-text-input,triaged-text-input,found in release: 3.22,found in release: 3.24

### Steps to reproduce

1. Create a `TextField` with `onTapOutside` defined and `DropDownMenu` with `onSelected` and `requestFocusOnTap` set to false. 
2. Tap into the `TextField`. 
3. Tap on the `DropDownMenu` label
    - `onTapOutside` is not triggered, The menu is opened.
4. Tap on a menu item
    - `onTapOutside` is triggered, but `onSelected` is not. Menu is not hidden.

### Expected results

- Tapping on the `DropDown` menu label should trigger `TextField.onTapOutside`
- Tapping on a menu item should trigger both`TextField.onTapOutside` and `DropDownMenu.onSelected` sand the menu should hide.

### Actual results

- Tapping on the `DropDown` menu label does not trigger `TextField.onTapOutside`
- Tapping on a menu item should triggers only both`TextField.onTapOutside` and the menu should remains opened

### Code sample

<details><summary>Code sample</summary>

```dartimport 'package:flutter/material.dart';

void main() {
  runApp(const DropdownMenuExample());
}

class DropdownMenuExample extends StatefulWidget {
  const DropdownMenuExample({super.key});

  @override
  State<DropdownMenuExample> createState() => _DropdownMenuExampleState();
}

class _DropdownMenuExampleState extends State<DropdownMenuExample> {
  final TextEditingController colorController = TextEditingController();
  ColorLabel? selectedColor;

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: SafeArea(
          child: Column(
            children: <Widget>[
              SizedBox(
                width: 200,
                height: 100,
                child: TextField(
                  onTapOutside: (_) => setState(() {
                    debugPrint('TextField::onTapOutside');
                  }),
                ),
              ),
              DropdownMenu<ColorLabel>(
                controller: colorController,
                requestFocusOnTap: false,
                label: const Text('Color'),
                onSelected: (ColorLabel? color) {
                  setState(() {
                    selectedColor = color;
                  });
                },
                dropdownMenuEntries: ColorLabel.values.map((ColorLabel color) {
                  return DropdownMenuEntry<ColorLabel>(
                    value: color,
                    label: color.label,
                  );
                }).toList(),
              ),
              SizedBox(height: 200),
              Text("Selected color: $selectedColor")
            ],
          ),
        ),
      ),
    );
  }
}

enum ColorLabel {
  blue('Blue'),
  green('Green');

  const ColorLabel(this.label);
  final String label;
}

```

</details>


### Screenshots or Video

<details>
<summary>Video demonstration</summary>


https://github.com/user-attachments/assets/58923f36-aaf0-4538-a164-20de8d1237ce


</details>

### Flutter Doctor output

<details><summary>Doctor output</summary>
The same problem is observed in a DartPad with Flutter 3.22.

```console
[√] Flutter (Channel stable, 3.19.5, on Microsoft Windows [Version 10.0.22631.3737], locale en-US)
    • Flutter version 3.19.5 on channel stable at C:\dev\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (4 months ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • 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\lukas.sladky\AppData\Local\Android\sdk
    X cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    X 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 at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop Windows apps (Visual Studio Professional 2022 17.9.7)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Professional
    • Visual Studio Professional 2022 version 17.9.34902.65
    • Windows 10 SDK version 10.0.22621.0

[√] Android Studio (version 2023.1)
    • Android Studio at C:\Users\lukas.sladky\AppData\Local\Programs\Android Studio
    • 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 17.0.7+0-b2043.56-10550314)

[√] VS Code (version 1.91.0)
    • VS Code at C:\Users\lukas.sladky\AppData\Local\Programs\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.3737]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 124.0.6367.208
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 126.0.2592.102

[√] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

```

</details>