* Add Windows compilation test (hello_world_windows__compile)
* Add devicelab target to .ci.yaml
* Bringup on new target
* Add license to generated files
* Indicate test ownership
* Delete asset from repo
* Add Windows compilation test (hello_world_windows__compile)
* Add devicelab target to .ci.yaml
* Bringup on new target
* Add license to generated files
* Indicate test ownership
* Delete icon
* Use path.basename
Re triggering tests
* Update test owner to desktop team
Fuchsia will soon remove all support for Component Framework version 1
components (recognized by component manifests ending in `.cmx`).
Notably, some of the `flutter` tool commands for Fuchsia devices--
notably, but not limited to, those related to CFv1--are outdated, and
either do not work today or soon won't work.
This PR removes the outdated components and commands, replacing some
with the newer version, or simply removing the non-working features,
in some cases.
Previously developers had to edit their `Runner.rc` file to update their executable's version information. Now, version information will automatically be set from `flutter build`'s arguments or the `pubspec.yaml` file for new projects.
Addresses https://github.com/flutter/flutter/issues/73652
* Update parameters to the `styleFrom` button methods.
* Updated the Flutter fix data to point to this PR.
* Updated handling of background color to better maintain backwards compatibility with previous API.
* Added an example for IndexedStack
* Added tests for the IndexedStack example
* Fixed type issue for onSubmitted callback functions
* Fixed documentation and moved files to their appropriate places
* Fixed documentation and moved files to their appropriate places
* Moved test files to their appropriate places
* Moved test files to their appropriate places
* Fixed file path in documentation
* Remove trailing space
* Formatting changes
* Remove extra line
* Further formatting changes
* Further formatting changes
* fix comma and inline
Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
* Formatting
* indentation and formatting
* Formatting
* Formatting
* Formatting
* Removed duplicate chevron
* better wording on documentation
Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
* Added testing for state preservation
Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
* Added standard IconButton for M3 with new ButtonStyle field
* Added IconButton examples for standard, filled, filled_tonal, and outlined types
Co-authored-by: Qun Cheng <quncheng@google.com>
* Small typo with text on the source of an example text file
* Added short paragraph on example location
* Keep line length around 80 chars
* Moved description of adding tests to a different paragraph
* Removed whitespace
* small 80 chars fix
* small 80 chars fix
* fixed col length
* trailing whitespace
When I was doing the MenuBar implementation, I made some changes to the PlatformMenuBar to allow it to understand shortcuts a little more, and to deprecate the body parameter rename it to child to match most other widgets.
These are those changes, separated out because they are separable, and I'm trying to make the MenuBar PR smaller.
Roll dependendencies
This rolls depdendencies to latest using
flutter update-packages --force-upgrade
This change includes three code changes:
* Removes charcode from the dependencies allowlist since it no longer
appears in the transitive closure of dependencies of the flutter,
flutter_test, flutter_driver, flutter_localizations, and
integration_test packages.
* Uses Resolver.create instead of the deprecated Resolver constructor.
The default Resolver constructor has been deprecated in favour of the
static Resolver.create() factory function, which unfortunately happens
to be async. Propagated the async-ness up the chain.
This change was partially reverted and the deprecation ignored in this
patch until package:coverage can be rolled internally at Google.
* Eliminates the use of the deprecated packagesPath parameter to
HitMap.parseJson. This parameter was deprecated and replaced with
packagePath in https://github.com/dart-lang/coverage/pull/370 which
was part of the overall deprecation of the .packages file in Dart
itself https://github.com/dart-lang/sdk/issues/48272. The overall goal
being that end-user code shouldn't need to know about implementation
details such as whether dependency information is stored in a
.packages file or a package_info.json file, but rather use the
package_config package to obtain the package metadata and perform
other functions such as resolving its dependencies to filesystem
paths. packagesPath was replaced by packagePath, which takes the path
to the package directory itself. Internally, package:coverage then
uses package_config to do the rest of the package/script URI
resolution to filesystem paths.
This change was partially reverted and the deprecation ignored in this
patch until package:coverage can be rolled internally at Google.
This is a pre-update prior to updating flutter_template_images in
https://github.com/flutter/flutter/pull/103739
Issue: https://github.com/flutter/flutter/issues/103371
Issue: https://github.com/flutter/flutter/issues/103775
Issue: https://github.com/flutter/flutter/issues/103830
When re-applying the partially-reverted changes to code coverage,
we'll need to patch host_entrypoint.dart internally to await the Future
that we'll be returning rather than a non-async value.
This updates the examples for PhysicalKeyboardKey and LogicalKeyboardKey to use Focus widgets that handle the keys instead of using RawKeyboardListener, since that usually leads people down the wrong path. Updated the See Also and added tests as well. Also exposed the `physicalKey` attribute for `tester.sendKeyEvent`.
Implements a PlatformMenuBar widget and associated data structures for defining menu bars that use native APIs for rendering.
This PR includes:
A PlatformMenuBar class, which is a widget that menu bar data can be attached to for sending to the platform.
A PlatformMenuDelegate base, which is the type taken by a new WidgetsBinding.platformMenuDelegate.
An implementation of the above in DefaultPlatformMenuDelegate that talks to the built-in "flutter/menu" channel to talk to the built-in platform implementation. The delegate is so that a plugin could override with its own delegate and provide other platforms with native menu support using the same widgets to define the menus.
This is the framework part of the implementation. The engine part will be in flutter/engine#32080 (and flutter/engine#32358)
* [web] roll Chromium dep to 96.2
Roll Chromium 96.2.
This is the second attempt to roll it. The previous attempt
(https://github.com/flutter/flutter/pull/99725) failed due to a LUCI
cache issue.
* cache-bust CIPD dependency by changing its name
* specify chrome_and_driver version in canvaskit tests
* fix CRC corruption in kTransparentImage
This patch adds an additional check to ensure the target length of a string is within the supported maximum string length prior to calling WideCharToMultiByte/MultiByteToWideChar in the Windows runner template.
This is to prevent resize() from failing if called with a count > std::string::max_size().
According to Win32 API docs (WideCharToMultiByte, MultiByteToWideChar) it's the caller responsibility to make sure the buffers are correctly allocated.
Authored by: Tomasz Gucio <tgucio@gmail.com>
This extracts the examples that are in flutter/engine@main/lib/ui/text.dart into examples in the examples/api/lib/ui directory and adds some simple tests for them.
Also, fixes some inconsistent test file naming.
This is step 1: the next step is to remove the examples from the dart:ui code.
Increased the memory size of multiple_flutters to help identify regressions in performance
This is not a regression and will affect benchmark's readings.
Makes the android_semantics_testing test not fail for newer versions of Talkback.
Also, since the test now depends on pub_semver, upgraded the pubspec files.
The only substantive changes in the PR are in dev/integration_tests/android_semantics_testing/test_driver/main_test.dart
* Revert "Mark last failing test after gradle update as flaky. (#91423)"
This reverts commit 46a52d03bd.
* Revert "fix android template for Gradle 7 (#91411)"
This reverts commit 51d06d537f.
* Revert "Add explicit version for mac and windows openjdk. (#91408)"
This reverts commit bf429f2771.
* Revert "Update the openjdk version used by linux android tests. (#91405)"
This reverts commit 2144ab8b45.
* Revert "Migrate to Gradle 7.0.2 / AGP 7.0.1 (#90642)"
This reverts commit b6459f9b63.
The first of three or four changes to update the platform directories of the packages in the Flutter repo that have out date platform code.
This batch includes updating the flutter_view example, updating the sanity check numbers in analyze.dart, and adding some missing Podfiles in the examples. I also eliminated some trailing whitespace in the templates for Android.
This does a cleanup of the examples, removing all of the "section" markers and extra comments that we don't need anymore now that the samples are no longer in the source code. It also removes the --template arguments from the {@tool dartpad} and {@tool sample} directives, since those are no longer used. It converts two examples that I discovered were still embedded into linked examples in the examples folder.
I didn't delete the templates from the snippets config folder yet, because there are still embedded samples in the dart:ui package from the engine that use them. Once dart:ui no longer uses the templates, they can be removed.
I bumped the version of the snippets package to pick up a change that allows removal of the --template argument.
This adds a smoke test for every single API example. It also fixes 17 tests that had bugs in them, or were otherwise broken, and even fixes one actual bug in the framework, and one limitation in the framework.
The bug in the framework is that NetworkImage's _loadAsync method had await response.drain<List<int>>();, but if the response is null, it will throw a cryptic exception saying that Null can't be assigned to List<int>. The fix was just to use await response.drain<void>(); instead.
The limitation is that RelativePositionedTransition takes an Animation<Rect> rect parameter, and if you want to use a RectTween with it, the value emitted there is Rect?, and one of the examples was just casting from Animation<Rect> to Animation<Rect?>, which is invalid, so I modified RelativePositionedTransition to take a Rect? and just use Rect.zero if the rect is null.
* changed controlsBuilder signature
combined all parameters into ControlsDetails class
* sample fixes
* updates to docstrings
* switched to positional argument for stepper.controlsbuilder
* Merge branch 'master' into stepper-builder-fix
This extracts the sample code out from the API doc comments, and places them in separate files on disk, allowing running of the examples locally, testing them, and building of slightly larger examples.