Skip to content

ActionIconThemeData.copyWith is broken in flutter 3.10 and master #126762

@predatorx7

Description

@predatorx7

Is there an existing issue for this?

Steps to reproduce

  1. Create an instance of ActionIconThemeData.
  2. Use ActionIconThemeData.copyWith on this object and replace any field with new values.
  3. Use ActionIconThemeData.copyWith on the new object from step 2 but do not replace any field.

Expected results

The new ActionIconThemeData object from step 3 should have the same values in step 2 and should be equal to it.

Actual results

All fields are null in the new ActionIconThemeData and it is not equal to the object from step 2.

Code sample

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

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.blue,
        actionIconTheme: ActionIconThemeData(
          backButtonIconBuilder: (context) => const Icon(Icons.audiotrack),
        ).copyWith(),
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('ActionIconThemeData copyWith'),
        ),
        body: const Center(
          // Icons.audiotrack expected
          child: BackButton(),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

Actual

image

Expected

image

Logs

Logs
[Paste your logs here]

Flutter Doctor output

Doctor output
[✓] Flutter (Channel master, 3.11.0-6.0.pre.60, on Microsoft Windows [Version 10.0.22621.1702], locale en-IN)
    • Flutter version 3.11.0-6.0.pre.60 on channel master at D:\Devel\flutter
    • Framework revision f6b23f1d80 (15 hours ago), 2023-05-13 13:00:40 -0400
    • Engine revision 96bd553491
    • Dart version 3.1.0 (build 3.1.0-109.0.dev)
    • DevTools version 2.23.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and
      upgrades.

[✓] Windows Version (Installed version of Windows is version 10 or higher)

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at D:\Linux\devel\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 at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.4.5)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.4.33403.182
    • Windows 10 SDK version 10.0.22000.0

[✓] Android Studio (version 2022.2)
    • Android Studio at C:\Program Files\Android\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.6+0-b2043.56-9586694)

[✓] IntelliJ IDEA Community Edition (version 2022.3)
    • IntelliJ at C:\Users\smush\AppData\Local\JetBrains\Toolbox\apps\IDEA-C\ch-0\223.8617.56
    • 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

[✓] VS Code (version 1.78.2)
    • VS Code at C:\Users\smush\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.64.0

[✓] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22621.1702]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 113.0.5672.93
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 113.0.1774.42

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

! Doctor found issues in 2 categories.

Metadata

Metadata

Assignees

No one assigned

    Labels

    f: material designflutter/packages/flutter/material repository.frameworkflutter/packages/flutter repository. See also f: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions