flutter / flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond
https://flutter.dev
BSD 3-Clause "New" or "Revised" License
166.37k stars 27.55k forks source link

[web]: CanvasKit Safari: Another exception was thrown: Instance of 'minified:fu<void>', Exception caught by scheduler #75192

Closed mdrideout closed 3 years ago

mdrideout commented 3 years ago

Issue rendering Flutter web in Safari in both production and dev builds when rendering as canvaskit. The issue is with Safari tested on MacOS Catalina and iPad OS 14.3.

Production Build Error

Version

Flutter (Channel beta, 1.25.0-8.3.pre, on Mac OS X 10.15.7 19H114 darwin-x64, locale en-US)

Build renderer

flutter build web --web-renderer canvaskit

Issue:

Scrolling and other dynamic visual interactions (opening drawer) cause errors on Safari (both on iPad and MacOS Catalina) (cannot replicate in Chrome).

[Log] Stack Overflow (main.dart.js, line 3075)
[Log]  (main.dart.js, line 3075)
[Log] Another exception was thrown: Instance of 'minified:fu<void>' (main.dart.js, line 3075, x39)

The [Log] Another exception was thrown: Instance of 'minified:fu<void>' line is logged again any time the screen changes (scrolling, tapping, etc.). Large areas of the screen turn into gray boxes (appear to be where widgets are).

Dev Build Error

Console log response with an Android Studio dev version running (canvaskit).

dart.developer.postEvent – "Flutter.Error"
"{\"description\":\"Exception caught by scheduler library\",\"type\":\"_FlutterErrorDetailsNode\",\"allowWrap\":false,\"objectId\":\"inspector-956\",\"valueId\":\"inspector-957\",\"properties\":[{\"description\":\"The following assertion was thrown during a scheduler callback:\",\"type\":\"ErrorDescription\",\"showSeparator\":false,\"showName\":false,\"style\":\"flat\",\"allowNameWrap\":true,\"objectId\":\"inspector-958\",\"valueId\":\"inspector-959\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"List<Object>\",\"defaultLevel\":\"info\"},{\"description\":\"Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12\\n!_disposed\\n\\\"This image has been disposed.\\\"\",\"type\":\"ErrorSummary\",\"showSeparator\":false,\"level\":\"summary\",\"showName\":false,\"style\":\"flat\",\"allowNameWrap\":true,\"objectId\":\"inspector-960\",\"valueId\":\"inspector-961\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"List<Object>\",\"defaultLevel\":\"summary\"},{\"description\":\"\",\"type\":\"ErrorSpacer\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-962\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":null,\"type\":\"DiagnosticsStackTrace\",\"name\":\"When the exception was thrown, this was the stack\",\"style\":\"flat\",\"allowTruncate\":true,\"allowWrap\":false,\"objectId\":\"inspector-963\",\"valueId\":\"inspector-964\",\"properties\":[{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 182:26  DartError\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-965\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 231:28  throw_\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-966\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 24:3    assertFailed\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-967\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"lib/_engine/engine/canvaskit/image.dart 167:13                                <fn>\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-968\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"lib/_engine/engine/canvaskit/image.dart 208:12                                width\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-969\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"...\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-970\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null,\"truncated\":true}],\"children\":[]}],\"children\":[],\"errorsSinceReload\":33,\"renderedErrorText\":\"Another exception was thrown: Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12\"}"

HTML Renderer

Results when using the --web-renderer html option: Error cannot be replicated with HTML renderer.

darshankawar commented 3 years ago

@mdrideout I tried a code sample that has a drawer and a scrolling listview inside Scaffold and verified it on macOS's safari browser using flutter build web --web-renderer canvaskit command, but didn't see the exception. I was able to interact with the drawer and then with scrolling list without any issues.

code sample ``` import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; void main() { runApp(MyApp( items: List.generate(10000, (i) => "Item $i"), )); } class MyApp extends StatelessWidget { final List items; MyApp({Key key, @required this.items}) : super(key: key); @override Widget build(BuildContext context) { final title = 'Long List'; return MaterialApp( title: title, home: Scaffold( appBar: AppBar( title: Text(title), ), drawer: Drawer( // Add a ListView to the drawer. This ensures the user can scroll // through the options in the drawer if there isn't enough vertical // space to fit everything. child: ListView( // Important: Remove any padding from the ListView. padding: EdgeInsets.zero, children: [ DrawerHeader( child: Text('Drawer Header'), decoration: BoxDecoration( color: Colors.blue, ), ), ListTile( title: Text('Item 1'), onTap: () { // Update the state of the app // ... // Then close the drawer Navigator.pop(context); }, ), ListTile( title: Text('Item 2'), onTap: () { // Update the state of the app // ... // Then close the drawer Navigator.pop(context); }, ), ], )), body: Center( child: ListView.builder( itemCount: items.length, itemBuilder: (context, index) { return ListTile( title: Text('${items[index]}'), ); }, ), ) ), ); } } ```
flutter doctor -v ``` [✓] Flutter (Channel beta, 1.25.0-8.3.pre, on Mac OS X 10.15.4 19E2269 darwin-x64, locale en-IN) • Flutter version 1.25.0-8.3.pre at /Users/dhs/documents/Fluttersdk/flutter • Framework revision 5d36f2e7f5 (3 weeks ago), 2021-01-14 15:57:49 -0800 • Engine revision 7a8f8ca02c • Dart version 2.12.0 (build 2.12.0-133.7.beta) [✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0) • Android SDK at /Users/dhs/Library/Android/sdk • Platform android-30, build-tools 30.0.0 • 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.3, Build version 12C33 • CocoaPods version 1.9.3 [✓] 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.52.1) • VS Code at /Applications/Visual Studio Code.app/Contents • Flutter extension version 3.18.1 [✓] Connected device (2 available) • SM A260G (mobile) • 5200763ebcfa861f • android-arm • Android 8.1.0 (API 27) • Chrome (web) • chrome • web-javascript • Google Chrome 88.0.4324.96 • No issues found! ```
console log ``` dhs@Dhss-MacBook-Pro web % python3 -m http.server 8005 Serving HTTP on :: port 8005 (http://[::]:8005/) ... ::1 - - [02/Feb/2021 14:20:02] "GET / HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:02] "GET /main.dart.js HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:02] "GET /manifest.json HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:02] "GET /favicon.png HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:02] "GET /icons/Icon-192.png HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/FontManifest.json HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/fonts/MaterialIcons-Regular.otf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/fonts/NotoSansKR-Regular.otf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/packages/cupertino_icons/assets/CupertinoIcons.ttf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /flutter_service_worker.js?v=1688081199 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /?revision=251a93acba0f896c03409874773ddfb0 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /main.dart.js?revision=553bce9ffd0f57d0f7e6a55daace55cc HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/AssetManifest.json?revision=eea79e7d5453c17032c3e5a841800139 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /index.html?revision=251a93acba0f896c03409874773ddfb0 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/NOTICES?revision=7d09c7ed82abef153b7d56199422cf17 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:03] "GET /assets/FontManifest.json?revision=20c413faeef8ae0b4889af3f1520b528 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:21] "GET / HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:22] "GET /main.dart.js HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:22] "GET /icons/Icon-192.png HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:22] "GET /favicon.png HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:23] "GET /assets/FontManifest.json HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:23] "GET /assets/fonts/MaterialIcons-Regular.otf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:24] "GET /assets/fonts/NotoSansKR-Regular.otf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:24] "GET /assets/packages/cupertino_icons/assets/CupertinoIcons.ttf HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:24] "GET /flutter_service_worker.js?v=1688081199 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /?revision=251a93acba0f896c03409874773ddfb0 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /assets/FontManifest.json?revision=20c413faeef8ae0b4889af3f1520b528 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /main.dart.js?revision=553bce9ffd0f57d0f7e6a55daace55cc HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /assets/NOTICES?revision=7d09c7ed82abef153b7d56199422cf17 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /assets/AssetManifest.json?revision=eea79e7d5453c17032c3e5a841800139 HTTP/1.1" 200 - ::1 - - [02/Feb/2021 14:20:25] "GET /index.html?revision=251a93acba0f896c03409874773ddfb0 HTTP/1.1" 200 - ^Z zsh: suspended python3 -m http.server 8005 ```

If the code sample doesn't represent your case to replicate the issue, can you provide a minimal reproducible code sample that we can directly run that shows the issue ?

mdrideout commented 3 years ago

Here is more contextual information about the errors, as well as code from the widgets that seem involved. Please let me know if I can provided any more information.

User Interface Activity: It appears the error is initially triggered by a certain amount of scrolling.

The First Error: This is actually the first error. The error I mentioned in the original post comes with every interaction following this initial error.

dart.developer.postEvent – "Flutter.Error"
"{\"description\":\"Exception caught by rendering library\",\"type\":\"_FlutterErrorDetailsNode\",\"allowWrap\":false,\"objectId\":\"inspector-218\",\"valueId\":\"inspector-219\",\"properties\":[{\"description\":\"The following assertion was thrown during paint():\",\"type\":\"ErrorDescription\",\"showSeparator\":false,\"showName\":false,\"style\":\"flat\",\"allowNameWrap\":true,\"objectId\":\"inspector-220\",\"valueId\":\"inspector-221\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"List<Object>\",\"defaultLevel\":\"info\"},{\"description\":\"Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12\\n!_disposed\\n\\\"This image has been disposed.\\\"\",\"type\":\"ErrorSummary\",\"showSeparator\":false,\"level\":\"summary\",\"showName\":false,\"style\":\"flat\",\"allowNameWrap\":true,\"objectId\":\"inspector-222\",\"valueId\":\"inspector-223\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"List<Object>\",\"defaultLevel\":\"summary\"},{\"description\":\"\",\"type\":\"ErrorSpacer\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-224\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":null,\"type\":\"DiagnosticsBlock\",\"name\":\"The relevant error-causing widget was\",\"style\":\"whitespace\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-225\",\"valueId\":null,\"properties\":[],\"children\":[{\"description\":\"SingleChildScrollView file:///Users/matt/repos/xxxxxx/elephant/lib/screens/single_device_screens/single_device_screen.dart:311:32\",\"type\":\"ErrorDescription\",\"showSeparator\":false,\"showName\":false,\"style\":\"flat\",\"allowNameWrap\":true,\"objectId\":\"inspector-226\",\"valueId\":\"inspector-227\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"List<Object>\",\"defaultLevel\":\"info\"}]},{\"description\":\"\",\"type\":\"ErrorSpacer\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-228\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":null,\"type\":\"DiagnosticsStackTrace\",\"name\":\"When the exception was thrown, this was the stack\",\"style\":\"flat\",\"allowTruncate\":true,\"allowWrap\":false,\"objectId\":\"inspector-229\",\"valueId\":\"inspector-230\",\"properties\":[{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 182:26      DartError\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-231\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 231:28      throw_\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-232\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 24:3        assertFailed\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-233\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"lib/_engine/engine/canvaskit/image.dart 167:13                                    <fn>\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-234\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"lib/_engine/engine/canvaskit/image.dart 208:12                                    width\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowWrap\":false,\"allowNameWrap\":true,\"objectId\":\"inspector-235\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"...\",\"type\":\"DiagnosticsProperty<void>\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-236\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null,\"truncated\":true}],\"children\":[]},{\"description\":\"\",\"type\":\"ErrorSpacer\",\"name\":\"\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-237\",\"valueId\":null,\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"void\",\"defaultLevel\":\"info\",\"value\":null},{\"description\":\"_RenderSingleChildViewport#43989 relayoutBoundary=up10\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"The following RenderObject was being processed when the exception was fired\",\"style\":\"shallow\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-238\",\"valueId\":\"inspector-239\",\"properties\":[{\"description\":\"needs compositing\",\"type\":\"FlagProperty\",\"name\":\"needsCompositing\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-240\",\"valueId\":\"inspector-241\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"bool\",\"defaultLevel\":\"info\",\"value\":true,\"ifTrue\":\"needs compositing\"},{\"description\":\"<none> (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-242\",\"valueId\":\"inspector-243\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=775.0, 0.0<=h<=810.0)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-244\",\"valueId\":\"inspector-245\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"OffsetLayer#f812e\",\"type\":\"DiagnosticsProperty<ContainerLayer>\",\"name\":\"layer\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-250\",\"valueId\":\"inspector-251\",\"properties\":[{\"description\":\"TransformLayer#8254f\",\"type\":\"DiagnosticsProperty<String>\",\"name\":\"engine layer\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-246\",\"valueId\":\"inspector-247\",\"missingIfNull\":false,\"propertyType\":\"String\",\"defaultLevel\":\"info\",\"value\":\"TransformLayer#8254f\"},{\"description\":\"Offset(235.0, 76.0)\",\"type\":\"DiagnosticsProperty<Offset>\",\"name\":\"offset\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-248\",\"valueId\":\"inspector-249\",\"missingIfNull\":false,\"propertyType\":\"Offset\",\"defaultLevel\":\"info\"}],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"ContainerLayer\",\"defaultLevel\":\"info\",\"isDiagnosticableValue\":true},{\"description\":\"Size(775.0, 810.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-252\",\"valueId\":\"inspector-253\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderPadding#0ca15 relayoutBoundary=up11\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-254\",\"valueId\":\"inspector-181\",\"properties\":[{\"description\":\"<none> (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-255\",\"valueId\":\"inspector-183\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=775.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-256\",\"valueId\":\"inspector-185\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(775.0, 1002.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-257\",\"valueId\":\"inspector-187\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets.all(20.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-258\",\"valueId\":\"inspector-189\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-259\",\"valueId\":\"inspector-96\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#f612d relayoutBoundary=up12\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-260\",\"valueId\":\"inspector-128\",\"properties\":[{\"description\":\"offset=Offset(20.0, 20.0) (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-261\",\"valueId\":\"inspector-130\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-262\",\"valueId\":\"inspector-132\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 962.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-263\",\"valueId\":\"inspector-134\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"vertical\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-264\",\"valueId\":\"inspector-136\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-265\",\"valueId\":\"inspector-90\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-266\",\"valueId\":\"inspector-92\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"stretch\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-267\",\"valueId\":\"inspector-140\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-268\",\"valueId\":\"inspector-98\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#d90ad relayoutBoundary=up13\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 1\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-269\",\"valueId\":\"inspector-80\",\"properties\":[{\"description\":\"offset=Offset(0.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-270\",\"valueId\":\"inspector-82\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-271\",\"valueId\":\"inspector-84\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 100.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-272\",\"valueId\":\"inspector-86\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"horizontal\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-273\",\"valueId\":\"inspector-88\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-274\",\"valueId\":\"inspector-90\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-275\",\"valueId\":\"inspector-92\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-276\",\"valueId\":\"inspector-94\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-277\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-278\",\"valueId\":\"inspector-98\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderSemanticsAnnotations#7d922 relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 1\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-279\",\"valueId\":\"inspector-49\",\"properties\":[{\"description\":\"offset=Offset(0.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-280\",\"valueId\":\"inspector-51\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(unconstrained)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-281\",\"valueId\":\"inspector-25\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(150.0, 100.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-282\",\"valueId\":\"inspector-54\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"}]},{\"description\":\"RenderPadding#aec4c relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 2\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-283\",\"valueId\":\"inspector-284\",\"properties\":[{\"description\":\"offset=Offset(150.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-285\",\"valueId\":\"inspector-286\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(unconstrained)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-287\",\"valueId\":\"inspector-288\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(263.0, 62.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-289\",\"valueId\":\"inspector-290\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets(40.0, 0.0, 40.0, 0.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-291\",\"valueId\":\"inspector-292\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-293\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}]}]},{\"description\":\"RenderPadding#84835 relayoutBoundary=up13\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 2\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-294\",\"valueId\":\"inspector-295\",\"properties\":[{\"description\":\"offset=Offset(0.0, 100.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-296\",\"valueId\":\"inspector-297\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-298\",\"valueId\":\"inspector-299\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 862.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-300\",\"valueId\":\"inspector-301\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets(0.0, 20.0, 0.0, 0.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-302\",\"valueId\":\"inspector-303\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-304\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#c72dd relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-305\",\"valueId\":\"inspector-306\",\"properties\":[{\"description\":\"offset=Offset(0.0, 20.0) (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-307\",\"valueId\":\"inspector-308\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-309\",\"valueId\":\"inspector-310\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 842.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-311\",\"valueId\":\"inspector-312\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"vertical\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-313\",\"valueId\":\"inspector-136\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-314\",\"valueId\":\"inspector-90\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-315\",\"valueId\":\"inspector-92\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"stretch\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-316\",\"valueId\":\"inspector-140\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-317\",\"valueId\":\"inspector-98\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}]}]}]}]}]},{\"description\":\"_RenderSingleChildViewport#43989 relayoutBoundary=up10\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"RenderObject\",\"style\":\"truncateChildren\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-318\",\"valueId\":\"inspector-239\",\"properties\":[{\"description\":\"needs compositing\",\"type\":\"FlagProperty\",\"name\":\"needsCompositing\",\"showName\":false,\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-319\",\"valueId\":\"inspector-241\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"bool\",\"defaultLevel\":\"info\",\"value\":true,\"ifTrue\":\"needs compositing\"},{\"description\":\"<none> (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-320\",\"valueId\":\"inspector-243\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=775.0, 0.0<=h<=810.0)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-321\",\"valueId\":\"inspector-245\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"OffsetLayer#f812e\",\"type\":\"DiagnosticsProperty<ContainerLayer>\",\"name\":\"layer\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-324\",\"valueId\":\"inspector-251\",\"properties\":[{\"description\":\"TransformLayer#8254f\",\"type\":\"DiagnosticsProperty<String>\",\"name\":\"engine layer\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-322\",\"valueId\":\"inspector-247\",\"missingIfNull\":false,\"propertyType\":\"String\",\"defaultLevel\":\"info\",\"value\":\"TransformLayer#8254f\"},{\"description\":\"Offset(235.0, 76.0)\",\"type\":\"DiagnosticsProperty<Offset>\",\"name\":\"offset\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-323\",\"valueId\":\"inspector-249\",\"missingIfNull\":false,\"propertyType\":\"Offset\",\"defaultLevel\":\"info\"}],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"ContainerLayer\",\"defaultLevel\":\"info\",\"isDiagnosticableValue\":true},{\"description\":\"Size(775.0, 810.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-325\",\"valueId\":\"inspector-253\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderPadding#0ca15 relayoutBoundary=up11\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-326\",\"valueId\":\"inspector-181\",\"properties\":[{\"description\":\"<none> (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-327\",\"valueId\":\"inspector-183\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=775.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-328\",\"valueId\":\"inspector-185\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(775.0, 1002.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-329\",\"valueId\":\"inspector-187\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets.all(20.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-330\",\"valueId\":\"inspector-189\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-331\",\"valueId\":\"inspector-96\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#f612d relayoutBoundary=up12\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-332\",\"valueId\":\"inspector-128\",\"properties\":[{\"description\":\"offset=Offset(20.0, 20.0) (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-333\",\"valueId\":\"inspector-130\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-334\",\"valueId\":\"inspector-132\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 962.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-335\",\"valueId\":\"inspector-134\",\"properties\":[],\"children\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"vertical\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-336\",\"valueId\":\"inspector-136\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-337\",\"valueId\":\"inspector-90\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-338\",\"valueId\":\"inspector-92\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"stretch\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-339\",\"valueId\":\"inspector-140\",\"properties\":[],\"children\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-340\",\"valueId\":\"inspector-98\",\"properties\":[],\"children\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#d90ad relayoutBoundary=up13\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 1\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-341\",\"valueId\":\"inspector-80\",\"properties\":[{\"description\":\"offset=Offset(0.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-342\",\"valueId\":\"inspector-82\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-343\",\"valueId\":\"inspector-84\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 100.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-344\",\"valueId\":\"inspector-86\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"horizontal\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-345\",\"valueId\":\"inspector-88\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-346\",\"valueId\":\"inspector-90\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-347\",\"valueId\":\"inspector-92\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-348\",\"valueId\":\"inspector-94\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-349\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-350\",\"valueId\":\"inspector-98\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderSemanticsAnnotations#7d922 relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 1\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-351\",\"valueId\":\"inspector-49\",\"properties\":[{\"description\":\"offset=Offset(0.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-352\",\"valueId\":\"inspector-51\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(unconstrained)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-353\",\"valueId\":\"inspector-25\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(150.0, 100.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-354\",\"valueId\":\"inspector-54\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"}]},{\"description\":\"RenderPadding#aec4c relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 2\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-355\",\"valueId\":\"inspector-284\",\"properties\":[{\"description\":\"offset=Offset(150.0, 0.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-356\",\"valueId\":\"inspector-286\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(unconstrained)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-357\",\"valueId\":\"inspector-288\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(263.0, 62.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-358\",\"valueId\":\"inspector-290\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets(40.0, 0.0, 40.0, 0.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-359\",\"valueId\":\"inspector-292\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-360\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}]}]},{\"description\":\"RenderPadding#84835 relayoutBoundary=up13\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child 2\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-361\",\"valueId\":\"inspector-295\",\"properties\":[{\"description\":\"offset=Offset(0.0, 100.0); flex=null; fit=null (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-362\",\"valueId\":\"inspector-297\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-363\",\"valueId\":\"inspector-299\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 862.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-364\",\"valueId\":\"inspector-301\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"EdgeInsets(0.0, 20.0, 0.0, 0.0)\",\"type\":\"DiagnosticsProperty<EdgeInsetsGeometry>\",\"name\":\"padding\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-365\",\"valueId\":\"inspector-303\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"EdgeInsetsGeometry\",\"defaultLevel\":\"info\"},{\"description\":\"ltr\",\"type\":\"EnumProperty<TextDirection>\",\"name\":\"textDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-366\",\"valueId\":\"inspector-96\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"TextDirection\",\"defaultLevel\":\"info\"}],\"children\":[{\"description\":\"RenderFlex#c72dd relayoutBoundary=up14\",\"type\":\"DiagnosticableTreeNode\",\"name\":\"child\",\"hasChildren\":true,\"allowWrap\":false,\"objectId\":\"inspector-367\",\"valueId\":\"inspector-306\",\"properties\":[{\"description\":\"offset=Offset(0.0, 20.0) (can use size)\",\"type\":\"DiagnosticsProperty<ParentData>\",\"name\":\"parentData\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-368\",\"valueId\":\"inspector-308\",\"properties\":[],\"ifNull\":\"MISSING\",\"tooltip\":\"can use size\",\"missingIfNull\":true,\"propertyType\":\"ParentData\",\"defaultLevel\":\"info\"},{\"description\":\"BoxConstraints(w=735.0, 0.0<=h<=Infinity)\",\"type\":\"DiagnosticsProperty<Constraints>\",\"name\":\"constraints\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-369\",\"valueId\":\"inspector-310\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Constraints\",\"defaultLevel\":\"info\"},{\"description\":\"Size(735.0, 842.0)\",\"type\":\"DiagnosticsProperty<Size>\",\"name\":\"size\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-370\",\"valueId\":\"inspector-312\",\"properties\":[],\"ifNull\":\"MISSING\",\"missingIfNull\":true,\"propertyType\":\"Size\",\"defaultLevel\":\"info\"},{\"description\":\"vertical\",\"type\":\"EnumProperty<Axis>\",\"name\":\"direction\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-371\",\"valueId\":\"inspector-136\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"Axis\",\"defaultLevel\":\"info\"},{\"description\":\"start\",\"type\":\"EnumProperty<MainAxisAlignment>\",\"name\":\"mainAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-372\",\"valueId\":\"inspector-90\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"max\",\"type\":\"EnumProperty<MainAxisSize>\",\"name\":\"mainAxisSize\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-373\",\"valueId\":\"inspector-92\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"MainAxisSize\",\"defaultLevel\":\"info\"},{\"description\":\"stretch\",\"type\":\"EnumProperty<CrossAxisAlignment>\",\"name\":\"crossAxisAlignment\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-374\",\"valueId\":\"inspector-140\",\"properties\":[],\"missingIfNull\":false,\"propertyType\":\"CrossAxisAlignment\",\"defaultLevel\":\"info\"},{\"description\":\"down\",\"type\":\"EnumProperty<VerticalDirection>\",\"name\":\"verticalDirection\",\"style\":\"singleLine\",\"allowNameWrap\":true,\"objectId\":\"inspector-375\",\"valueId\":\"inspector-98\",\"properties\":[],\"defaultValue\":\"null\",\"missingIfNull\":false,\"propertyType\":\"VerticalDirection\",\"defaultLevel\":\"info\"}]}]}]}]}]}],\"children\":[],\"errorsSinceReload\":0,\"renderedErrorText\":\"══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════\\nThe following assertion was thrown during paint():\\nAssertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12\\n!_disposed\\n\\\"This image has been disposed.\\\"\\n\\nThe relevant error-causing widget was:\\n  SingleChildScrollView\\n  file:///Users/matt/repos/xxxxxx/elephant/lib/screens/single_device_screens/single_device_screen.dart:311:32\\n\\nWhen the exception was thrown, this was the stack:\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 182:26      DartError\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 231:28      throw_\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 24:3        assertFailed\\nlib/_engine/engine/canvaskit/image.dart 167:13                                    <fn>\\nlib/_engine/engine/canvaskit/image.dart 208:12                                    width\\nlib/_engine/engine/canvaskit/image.dart 133:11                                    <fn>\\nlib/_engine/engine/canvaskit/skia_object_cache.dart 329:13                        <fn>\\nlib/_engine/engine/canvaskit/image.dart 162:30                                    skImage\\nlib/_engine/engine/canvaskit/image.dart 209:20                                    width\\nlib/_engine/engine/canvaskit/image.dart 263:15                                    toString\\npackages/flutter/src/foundation/diagnostics.dart 2754:21                          toDescription\\npackages/flutter/src/foundation/diagnostics.dart 1568:24                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\npackages/flutter/src/foundation/diagnostics.dart 2694:45                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1594:25                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1600:23                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1600:23                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1600:23                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1600:23                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\ndart-sdk/lib/internal/iterable.dart 340:26                                        moveNext\\ndart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 734:20  next\\ndart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 529:14                of\\npackages/flutter/src/foundation/diagnostics.dart 1631:58                          toJsonList\\npackages/flutter/src/foundation/diagnostics.dart 1594:25                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1603:21                          <fn>\\npackages/flutter/src/foundation/diagnostics.dart 1606:14                          toJsonMap\\npackages/flutter/src/widgets/widget_inspector.dart 922:44                         <fn>\\npackages/flutter/src/foundation/assertions.dart 1103:7                            reportError\\npackages/flutter/src/rendering/object.dart 1311:18                                <fn>\\npackages/flutter/src/rendering/object.dart 2319:7                                 <fn>\\npackages/flutter/src/rendering/object.dart 189:12                                 paintChild\\npackages/flutter/src/widgets/single_child_scroll_view.dart 596:16                 paintContents\\npackages/flutter/src/rendering/object.dart 396:12                                 pushLayer\\npackages/flutter/src/rendering/object.dart 452:7                                  pushClipRect\\npackages/flutter/src/widgets/single_child_scroll_view.dart 600:33                 paint\\npackages/flutter/src/rendering/object.dart 2315:7                                 <fn>\\npackages/flutter/src/rendering/object.dart 140:10                                 _repaintCompositedChild\\npackages/flutter/src/rendering/object.dart 100:5                                  repaintCompositedChild\\npackages/flutter/src/rendering/object.dart 978:29                                 flushPaint\\npackages/flutter/src/rendering/binding.dart 456:19                                drawFrame\\npackages/flutter/src/widgets/binding.dart 900:13                                  drawFrame\\npackages/flutter/src/rendering/binding.dart 320:5                                 <fn>\\npackages/flutter/src/scheduler/binding.dart 1119:15                               <fn>\\npackages/flutter/src/scheduler/binding.dart 1057:9                                handleDrawFrame\\npackages/flutter/src/scheduler/binding.dart 973:5                                 <fn>\\nlib/_engine/engine/platform_dispatcher.dart 896:13                                invoke\\nlib/_engine/engine/platform_dispatcher.dart 145:5                                 invokeOnDrawFrame\\nlib/_engine/engine.dart 245:45                                                    <fn>\\n\\nThe following RenderObject was being processed when the exception was fired: _RenderSingleChildViewport#43989 relayoutBoundary=up10:\\n  needs compositing\\n  creator: _SingleChildViewport ← IgnorePointer-[GlobalKey#47bed] ← Semantics ← Listener ←\\n    _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#ce2ec] ←\\n    Listener ← _ScrollableScope ← _ScrollSemantics-[GlobalKey#7a0e9] ← Scrollable ←\\n    PrimaryScrollController ← SingleChildScrollView ← ⋯\\n  parentData: <none> (can use size)\\n  constraints: BoxConstraints(w=775.0, 0.0<=h<=810.0)\\n  layer: OffsetLayer#f812e\\n  size: Size(775.0, 810.0)\\nThis RenderObject had the following descendants (showing up to depth 5):\\n    child: RenderPadding#0ca15 relayoutBoundary=up11\\n      child: RenderFlex#f612d relayoutBoundary=up12\\n        child 1: RenderFlex#d90ad relayoutBoundary=up13\\n          child 1: RenderSemanticsAnnotations#7d922 relayoutBoundary=up14\\n            child: RenderImage#097e9 relayoutBoundary=up15\\n          child 2: RenderPadding#aec4c relayoutBoundary=up14\\n            child: RenderFlex#d862a relayoutBoundary=up15\\n        child 2: RenderPadding#84835 relayoutBoundary=up13\\n          child: RenderFlex#c72dd relayoutBoundary=up14\\n            child 1: RenderFlex#79dfb relayoutBoundary=up15\\n            child 2: RenderConstrainedBox#f57e2 relayoutBoundary=up15\\n            child 3: RenderParagraph#d6c1a relayoutBoundary=up15\\n            child 4: RenderConstrainedBox#4435f relayoutBoundary=up15\\n            child 5: RenderFlex#dedf7 relayoutBoundary=up15\\n            child 6: RenderConstrainedBox#51797 relayoutBoundary=up15\\n            child 7: RenderParagraph#89d10 relayoutBoundary=up15\\n            child 8: RenderConstrainedBox#7a86a relayoutBoundary=up15\\n            child 9: RenderFlex#b29d1 relayoutBoundary=up15\\n════════════════════════════════════════════════════════════════════════════════════════════════════\"}"

Specifically these lines seem to point to the culprit being the implementation of a specific image within a singleChildScrollView.

EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during paint():
Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12
!_disposed
\\\"This image has been disposed.\\\"
The relevant error-causing widget was:
SingleChildScrollView
file:///Users/matt/repos/xxxxxx/elephant/lib/screens/single_device_screens/single_device_screen.dart:311:32

This only happens after a certain amount of scrolling.

Specific Conditions that definitely trigger the error:

Scaffold containing the erroring SingleChildScrollView: The error is referencing the second SingleChildScrollView nested under the Expanded element. The only "image" inside this scroll view is contained within the currentDeviceOverview() widget. (see below for that widget's code).

      return Scaffold(
        appBar: AppBar(
          backgroundColor: kColorAppBarBackground,
          title: FlatButton(
            onPressed: () {
              Navigator.popUntil(context, ModalRoute.withName(DeviceListScreen.screenId));
            },
            child: Image(
              image: AssetImage('assets/images/logo_appbar.png'),
              width: 150.0,
            ),
          ),
        ),
        drawer: UserDrawerMenu(),
        body: (activeMachine == null)
            ? Center(child: Text("No machine"))
            : Padding(
                padding: const EdgeInsets.symmetric(vertical: 20.0, horizontal: 10.0),
                child: ConstrainedBox(
                  constraints: BoxConstraints(maxWidth: 1000),
                  child: Row(
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: [
                      SingleChildScrollView(
                        child: Container(
                          width: 225.0,
                          child: singleDeviceMenu(),
                        ),
                      ),
                      Expanded(
                        child: SingleChildScrollView(
                          child: Padding(
                            padding: const EdgeInsets.all(20.0),
                            child: Column(
                              crossAxisAlignment: CrossAxisAlignment.stretch,
                              children: [
                                currentDeviceOverview(),
                                Padding(
                                  padding: const EdgeInsets.only(top: 20.0),
                                  child: changeDeviceDisplay(),
                                ),
                              ],
                            ),
                          ),
                        ),
                      ),
                    ],
                  ),
                ),
              ),
      );

currentDeviceOverview() (Consumer is part of the RiverPod state management Library - but I don't think that is relevant.)

  Widget currentDeviceOverview() {
    return Consumer(
      builder: (context, watch, child) {
        final machineListData = watch(machineListDataProvider.state);
        final activeMachine =
            context.read(machineListDataProvider).getMachineFromState(machineListData.activeMachineId);

        return Container(
          child: Row(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: [
              Image(
                image: getMachineThumbnail(activeMachine.modelNum),
                width: 150.0,
                height: 100.0,
              ),
              Padding(
                padding: const EdgeInsets.symmetric(vertical: 0.0, horizontal: 40.0),
                child: Column(
                  crossAxisAlignment: CrossAxisAlignment.start,
                  children: [
                    Text(
                      activeMachine.name,
                      style: TextStyle(
                        fontSize: 20.0,
                      ),
                    ),
                    SizedBox(height: 3.0),
                    Text(
                      activeMachine.category,
                      style: TextStyle(
                        fontSize: 16.0,
                      ),
                    ),
                    SizedBox(height: 3.0),
                    Text(
                      'S: ${activeMachine.serialNum} M: ${activeMachine.modelNum}',
                      style: TextStyle(
                        fontSize: 12.0,
                      ),
                    ),
                  ],
                ),
              )
            ],
          ),
        );
      },
    );
  }

The image widget uses thegetMachineThumbnail() function to retrieve the image, which is as follows:

AssetImage getMachineThumbnail(String modelNum) {
  switch (modelNum) {
    case "xxx1":
      {
        return AssetImage('assets/images/device_images/xxx1.png');
      }
      break;
    case "xxx2":
      {
        return AssetImage('assets/images/device_images/xxx2.png');
      }
      break;
    case "xxx3":
      {
        return AssetImage('assets/images/device_images/xxx3.png');
      }
      break;
    default:
      {
        return AssetImage('assets/images/device_images/default-machine.png');
      }
      break;
  }
}
darshankawar commented 3 years ago

@mdrideout Thanks for the details. Looking at one of the exceptions you mentioned

EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════ The following assertion was thrown during paint(): Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/canvaskit/image.dart:167:12 !_disposed \\"This image has been disposed.\\" The relevant error-causing widget was: SingleChildScrollView file:///Users/matt/repos/xxxxxx/elephant/lib/screens/single_device_screens/single_device_screen.dart:311:32

That looks similar to a very recent issue fixed and merged, https://github.com/flutter/flutter/issues/74823.

Also, I tried your code snippet, but it seem we would need complete code sample (preferably in one single file main.dart) that we can simply copy paste and run to see the issue.

mdrideout commented 3 years ago

I have just updated to the latest version of Flutter and re-tested with CanvasKit, and can no longer replicate the error in Safari. So I'm assuming you guys fixed it at some point.

Updated Flutter Version: Flutter (Channel beta, 1.26.0-17.3.pre, on Mac OS X 10.15.7 19H114 darwin-x64, locale en-US)

github-actions[bot] commented 3 years ago

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.