material.dart 14.2 KB
Newer Older
1 2 3 4
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

5
import 'package:flutter/material.dart';
6 7

void main() {
8 9
  // Generic reference variables.
  BuildContext context;
10 11 12
  RenderObjectWidget renderObjectWidget;
  RenderObject renderObject;
  Object object;
13

14 15 16 17 18 19 20 21
  // Changes made in https://github.com/flutter/flutter/pull/26259
  Scaffold scaffold = Scaffold(resizeToAvoidBottomPadding: true);
  scaffold = Scaffold(error: '');
  final bool resize = scaffold.resizeToAvoidBottomPadding;

  // Change made in https://github.com/flutter/flutter/pull/15303
  showDialog(child: Text('Fix me.'));
  showDialog(error: '');
22

23 24 25 26 27 28 29 30 31 32
  // Changes made in https://github.com/flutter/flutter/pull/44189
  const Element element = Element(myWidget);
  element.inheritFromElement(ancestor);
  element.inheritFromWidgetOfExactType(targetType);
  element.ancestorInheritedElementForWidgetOfExactType(targetType);
  element.ancestorWidgetOfExactType(targetType);
  element.ancestorStateOfType(TypeMatcher<targetType>());
  element.rootAncestorStateOfType(TypeMatcher<targetType>());
  element.ancestorRenderObjectOfType(TypeMatcher<targetType>());

33
  // Changes made in https://github.com/flutter/flutter/pull/45941 and https://github.com/flutter/flutter/pull/83843
34 35 36 37
  final WidgetsBinding binding = WidgetsBinding.instance!;
  binding.deferFirstFrameReport();
  binding.allowFirstFrameReport();

38 39 40
  // Changes made in https://github.com/flutter/flutter/pull/44189
  const StatefulElement statefulElement = StatefulElement(myWidget);
  statefulElement.inheritFromElement(ancestor);
41 42 43 44 45 46 47 48 49 50

  // Changes made in https://github.com/flutter/flutter/pull/44189
  const BuildContext buildContext = Element(myWidget);
  buildContext.inheritFromElement(ancestor);
  buildContext.inheritFromWidgetOfExactType(targetType);
  buildContext.ancestorInheritedElementForWidgetOfExactType(targetType);
  buildContext.ancestorWidgetOfExactType(targetType);
  buildContext.ancestorStateOfType(TypeMatcher<targetType>());
  buildContext.rootAncestorStateOfType(TypeMatcher<targetType>());
  buildContext.ancestorRenderObjectOfType(TypeMatcher<targetType>());
51

52 53 54
  // Changes made in https://github.com/flutter/flutter/pull/66305
  const Stack stack = Stack(overflow: Overflow.visible);
  const Stack stack = Stack(overflow: Overflow.clip);
55
  const Stack stack = Stack(error: '');
56 57
  final behavior = stack.overflow;

58 59 60
  // Changes made in https://github.com/flutter/flutter/pull/61648
  const Form form = Form(autovalidate: true);
  const Form form = Form(autovalidate: false);
61
  const Form form = Form(error: '');
62 63 64 65 66
  final autoMode = form.autovalidate;

  // Changes made in https://github.com/flutter/flutter/pull/61648
  const FormField formField = FormField(autovalidate: true);
  const FormField formField = FormField(autovalidate: false);
67
  const FormField formField = FormField(error: '');
68
  final autoMode = formField.autovalidate;
69

70 71 72 73 74 75 76 77 78 79
  // Changes made in https://github.com/flutter/flutter/pull/61648
  const TextFormField textFormField = TextFormField(autovalidate: true);
  const TextFormField textFormField = TextFormField(autovalidate: false);
  const TextFormField textFormField = TextFormField(error: '');

  // Changes made in https://github.com/flutter/flutter/pull/61648
  const DropdownButtonFormField dropDownButtonFormField = DropdownButtonFormField(autovalidate: true);
  const DropdownButtonFormField dropdownButtonFormField = DropdownButtonFormField(autovalidate: false);
  const DropdownButtonFormField dropdownButtonFormField = DropdownButtonFormField(error: '');

80 81 82
  // Changes made in https://github.com/flutter/flutter/pull/68736
  MediaQuery.of(context, nullOk: true);
  MediaQuery.of(context, nullOk: false);
83
  MediaQuery.of(error: '');
84 85 86 87

  // Changes made in https://github.com/flutter/flutter/pull/70726
  Navigator.of(context, nullOk: true);
  Navigator.of(context, nullOk: false);
88
  Navigator.of(error: '');
89

90 91 92 93 94 95 96 97
  // Changes made in https://github.com/flutter/flutter/pull/68908
  ScaffoldMessenger.of(context, nullOk: true);
  ScaffoldMessenger.of(context, nullOk: false);
  ScaffoldMessenger.of(error: '');
  Scaffold.of(error: '');
  Scaffold.of(context, nullOk: true);
  Scaffold.of(context, nullOk: false);

98 99 100
  // Changes made in https://github.com/flutter/flutter/pull/68910
  Router.of(context, nullOk: true);
  Router.of(context, nullOk: false);
101
  Router.of(error: '');
102 103 104 105

  // Changes made in https://github.com/flutter/flutter/pull/68911
  Localizations.localeOf(context, nullOk: true);
  Localizations.localeOf(context, nullOk: false);
106
  Localizations.localeOf(error: '');
107 108 109 110

  // Changes made in https://github.com/flutter/flutter/pull/68917
  FocusTraversalOrder.of(context, nullOk: true);
  FocusTraversalOrder.of(context, nullOk: false);
111 112
  FocusTraversalOrder.of(error: '');
  FocusTraversalGroup.of(error: '');
113 114 115 116
  FocusTraversalGroup.of(context, nullOk: true);
  FocusTraversalGroup.of(context, nullOk: false);
  Focus.of(context, nullOk: true);
  Focus.of(context, nullOk: false);
117
  Focus.of(error: '');
118 119 120 121

  // Changes made in https://github.com/flutter/flutter/pull/68921
  Shortcuts.of(context, nullOk: true);
  Shortcuts.of(context, nullOk: false);
122 123
  Shortcuts.of(error: '');
  Actions.find(error: '');
124 125 126 127
  Actions.find(context, nullOk: true);
  Actions.find(context, nullOk: false);
  Actions.handler(context, nullOk: true);
  Actions.handler(context, nullOk: false);
128 129
  Actions.handler(error: '');
  Actions.invoke(error: '');
130 131 132 133 134 135
  Actions.invoke(context, nullOk: true);
  Actions.invoke(context, nullOk: false);

  // Changes made in https://github.com/flutter/flutter/pull/68925
  AnimatedList.of(context, nullOk: true);
  AnimatedList.of(context, nullOk: false);
136 137
  AnimatedList.of(error: '');
  SliverAnimatedList.of(error: '');
138 139 140 141
  SliverAnimatedList.of(context, nullOk: true);
  SliverAnimatedList.of(context, nullOk: false);

  // Changes made in https://github.com/flutter/flutter/pull/68905
142 143 144
  MaterialBasedCupertinoThemeData.resolveFrom(context, nullOk: true);
  MaterialBasedCupertinoThemeData.resolveFrom(context, nullOk: false);
  MaterialBasedCupertinoThemeData.resolveFrom(error: '');
Kate Lovett's avatar
Kate Lovett committed
145 146

  // Changes made in https://github.com/flutter/flutter/pull/72043
147 148 149 150
  TextField(maxLengthEnforced: true);
  TextField(maxLengthEnforced: false);
  TextField(error: '');
  final TextField textField;
Kate Lovett's avatar
Kate Lovett committed
151
  textField.maxLengthEnforced;
152 153 154
  TextFormField(maxLengthEnforced: true);
  TextFormField(maxLengthEnforced: false);
  TextFormField(error: '');
155 156 157

  // Changes made in https://github.com/flutter/flutter/pull/59127
  const BottomNavigationBarItem bottomNavigationBarItem = BottomNavigationBarItem(title: myTitle);
158 159
  const BottomNavigationBarItem bottomNavigationBarItem = BottomNavigationBarItem();
  const BottomNavigationBarItem bottomNavigationBarItem = BottomNavigationBarItem(error: '');
160
  bottomNavigationBarItem.title;
161

162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
  // Changes made in https://github.com/flutter/flutter/pull/65246
  RectangularSliderTrackShape(disabledThumbGapWidth: 2.0);
  RectangularSliderTrackShape(error: '');

  // Changes made in https://github.com/flutter/flutter/pull/46115
  const InputDecoration inputDecoration = InputDecoration(hasFloatingPlaceholder: true);
  InputDecoration(hasFloatingPlaceholder: false);
  InputDecoration();
  InputDecoration(error: '');
  InputDecoration.collapsed(hasFloatingPlaceholder: true);
  InputDecoration.collapsed(hasFloatingPlaceholder: false);
  InputDecoration.collapsed();
  InputDecoration.collapsed(error: '');
  inputDecoration.hasFloatingPlaceholder;
  const InputDecorationTheme inputDecorationTheme = InputDecorationTheme(hasFloatingPlaceholder: true);
  InputDecorationTheme(hasFloatingPlaceholder: false);
  InputDecorationTheme();
  InputDecorationTheme(error: '');
  inputDecorationTheme.hasFloatingPlaceholder;
  inputDecorationTheme.copyWith(hasFloatingPlaceholder: false);
  inputDecorationTheme.copyWith(hasFloatingPlaceholder: true);
  inputDecorationTheme.copyWith();
  inputDecorationTheme.copyWith(error: '');

186 187 188 189
  // Changes made in https://github.com/flutter/flutter/pull/79160
  Draggable draggable = Draggable();
  draggable = Draggable(dragAnchor: DragAnchor.child);
  draggable = Draggable(dragAnchor: DragAnchor.pointer);
190
  draggable = Draggable(error: '');
191 192 193 194 195 196
  draggable.dragAnchor;

  // Changes made in https://github.com/flutter/flutter/pull/79160
  LongPressDraggable longPressDraggable = LongPressDraggable();
  longPressDraggable = LongPressDraggable(dragAnchor: DragAnchor.child);
  longPressDraggable = LongPressDraggable(dragAnchor: DragAnchor.pointer);
197
  longPressDraggable = LongPressDraggable(error: '');
198
  longPressDraggable.dragAnchor;
199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224

  // Changes made in https://github.com/flutter/flutter/pull/64254
  final LeafRenderObjectElement leafElement = LeafRenderObjectElement();
  leafElement.insertChildRenderObject(renderObject, object);
  leafElement.moveChildRenderObject(renderObject, object);
  leafElement.removeChildRenderObject(renderObject);
  final ListWheelElement listWheelElement = ListWheelElement();
  listWheelElement.insertChildRenderObject(renderObject, object);
  listWheelElement.moveChildRenderObject(renderObject, object);
  listWheelElement.removeChildRenderObject(renderObject);
  final MultiChildRenderObjectElement multiChildRenderObjectElement = MultiChildRenderObjectElement();
  multiChildRenderObjectElement.insertChildRenderObject(renderObject, object);
  multiChildRenderObjectElement.moveChildRenderObject(renderObject, object);
  multiChildRenderObjectElement.removeChildRenderObject(renderObject);
  final SingleChildRenderObjectElement singleChildRenderObjectElement = SingleChildRenderObjectElement();
  singleChildRenderObjectElement.insertChildRenderObject(renderObject, object);
  singleChildRenderObjectElement.moveChildRenderObject(renderObject, object);
  singleChildRenderObjectElement.removeChildRenderObject(renderObject);
  final SliverMultiBoxAdaptorElement sliverMultiBoxAdaptorElement = SliverMultiBoxAdaptorElement();
  sliverMultiBoxAdaptorElement.insertChildRenderObject(renderObject, object);
  sliverMultiBoxAdaptorElement.moveChildRenderObject(renderObject, object);
  sliverMultiBoxAdaptorElement.removeChildRenderObject(renderObject);
  final RenderObjectToWidgetElement renderObjectToWidgetElement = RenderObjectToWidgetElement(widget);
  renderObjectToWidgetElement.insertChildRenderObject(renderObject, object);
  renderObjectToWidgetElement.moveChildRenderObject(renderObject, object);
  renderObjectToWidgetElement.removeChildRenderObject(renderObject);
225 226 227 228 229

  // Changes made in https://flutter.dev/docs/release/breaking-changes/clip-behavior
  ListWheelScrollView listWheelScrollView = ListWheelScrollView();
  listWheelScrollView = ListWheelScrollView(clipToSize: true);
  listWheelScrollView = ListWheelScrollView(clipToSize: false);
230
  listWheelScrollView = ListWheelScrollView(error: '');
231
  listWheelScrollView = ListWheelScrollView.useDelegate(error: '');
232 233 234 235 236 237 238
  listWheelScrollView = ListWheelScrollView.useDelegate();
  listWheelScrollView = ListWheelScrollView.useDelegate(clipToSize: true);
  listWheelScrollView = ListWheelScrollView.useDelegate(clipToSize: false);
  listWheelScrollView.clipToSize;
  ListWheelViewport listWheelViewport = ListWheelViewport();
  listWheelViewport = ListWheelViewport(clipToSize: true);
  listWheelViewport = ListWheelViewport(clipToSize: false);
239
  listWheelViewport = ListWheelViewport(error: '');
240
  listWheelViewport.clipToSize;
241 242

  // Changes made in https://github.com/flutter/flutter/pull/87839
243 244
  final OverscrollIndicatorNotification notification = OverscrollIndicatorNotification(leading: true);
  final OverscrollIndicatorNotification notification = OverscrollIndicatorNotification(error: '');
245
  notification.disallowGlow();
246

247 248 249
  // Changes made in https://github.com/flutter/flutter/pull/96115
  Icon icon = Icons.pie_chart_outlined;

250
  // Changes made in https://github.com/flutter/flutter/pull/96957
251
  Scrollbar scrollbar = Scrollbar(isAlwaysShown: true);
252
  bool nowShowing = scrollbar.isAlwaysShown;
253 254 255
  ScrollbarThemeData scrollbarTheme = ScrollbarThemeData(isAlwaysShown: nowShowing);
  scrollbarTheme.copyWith(isAlwaysShown: nowShowing);
  scrollbarTheme.isAlwaysShown;
256 257
  RawScrollbar rawScrollbar = RawScrollbar(isAlwaysShown: true);
  nowShowing = rawScrollbar.isAlwaysShown;
258

259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
  // Changes made in https://github.com/flutter/flutter/pull/96174
  Chip chip = Chip();
  chip = Chip(useDeleteButtonTooltip: false);
  chip = Chip(useDeleteButtonTooltip: true);
  chip = Chip(useDeleteButtonTooltip: false, deleteButtonTooltipMessage: 'Delete Tooltip');
  chip.useDeleteButtonTooltip;

  // Changes made in https://github.com/flutter/flutter/pull/96174
  InputChip inputChip = InputChip();
  inputChip = InputChip(useDeleteButtonTooltip: false);
  inputChip = InputChip(useDeleteButtonTooltip: true);
  inputChip = InputChip(useDeleteButtonTooltip: false, deleteButtonTooltipMessage: 'Delete Tooltip');
  inputChip.useDeleteButtonTooltip;

  // Changes made in https://github.com/flutter/flutter/pull/96174
  RawChip rawChip = Rawchip();
  rawChip = RawChip(useDeleteButtonTooltip: false);
  rawChip = RawChip(useDeleteButtonTooltip: true);
  rawChip = RawChip(useDeleteButtonTooltip: false, deleteButtonTooltipMessage: 'Delete Tooltip');
  rawChip.useDeleteButtonTooltip;

280 281
  // Change made in https://github.com/flutter/flutter/pull/100381
  TextSelectionOverlay.fadeDuration;
282

283 284 285 286 287 288 289 290 291 292 293 294 295 296 297
  // Changes made in https://github.com/flutter/flutter/pull/105291
  ButtonStyle elevationButtonStyle = ElevatedButton.styleFrom(
    primary: Colors.blue,
    onPrimary: Colors.white,
    onSurface: Colors.grey,
  );
  ButtonStyle outlinedButtonStyle = OutlinedButton.styleFrom(
    primary: Colors.blue,
    onSurface: Colors.grey,
  );
  ButtonStyle textButtonStyle = TextButton.styleFrom(
    primary: Colors.blue,
    onSurface: Colors.grey,
  );

298 299 300
  // Changes made in https://github.com/flutter/flutter/pull/78588
  final ScrollBehavior scrollBehavior = ScrollBehavior();
  scrollBehavior.buildViewportChrome(context, child, axisDirection);
301 302 303 304 305 306 307 308 309
  final MaterialScrollBehavior materialScrollBehavior = MaterialScrollBehavior();
  materialScrollBehavior.buildViewportChrome(context, child, axisDirection);

  // Changes made in https://github.com/flutter/flutter/pull/111706
  Scrollbar scrollbar = Scrollbar(showTrackOnHover: true);
  bool nowShowing = scrollbar.showTrackOnHover;
  ScrollbarThemeData scrollbarTheme = ScrollbarThemeData(showTrackOnHover: nowShowing);
  scrollbarTheme.copyWith(showTrackOnHover: nowShowing);
  scrollbarTheme.showTrackOnHover;
310
}