Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Keyboard scrolling of Scrollable #45019

Merged
merged 12 commits into from Nov 26, 2019
Merged

Conversation

@gspencergoog
Copy link
Contributor

gspencergoog commented Nov 16, 2019

Description

This adds the ability to scroll and page up/down in a Scrollable using the keyboard. Currently, the macOS bindings use Platform.isMacOS as a check, but we'll switch that to be defaultTargetPlatform == TargetPlatform.macOS once that exists.

Related Issues

Tests

  • Added a test for keyboard scrolling both horizontally and vertically.

Breaking Change

  • No, this is not a breaking change.
@gspencergoog gspencergoog requested a review from goderbauer Nov 16, 2019
@googlebot googlebot added the cla: yes label Nov 16, 2019
@gspencergoog gspencergoog changed the title Keyboard scroll Keyboard scrolling of Scrollable Nov 16, 2019
@goderbauer

This comment has been minimized.

Copy link
Member

goderbauer commented Nov 18, 2019

Looks like cirrus is unhappy :(

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch from 0cf9a29 to 5add30c Nov 18, 2019
packages/flutter/lib/src/widgets/app.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/scrollable.dart Outdated Show resolved Hide resolved
@@ -267,4 +270,85 @@ void main() {

expect(getScrollOffset(tester), 20.0);
});

testWidgets('Vertical scrollables are scrolled when activated via keyboard.', (WidgetTester tester) async {

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 18, 2019

Member

Can you add more tests to ensure that it scrolls in the right direction when "reverse: true" and when a "center" sliver is used?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 19, 2019

Author Contributor

OK, I added some, which highlighted that I needed to change how I specified direction, so it's now an Axis and a reverse bool instead of an AxisDirection, so it can be resolved with the current directional environment.

What do you mean by "center sliver"? I'm not sure what that should look like.

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch 4 times, most recently from 988ba7f to 28c9bb9 Nov 19, 2019
@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch from 28c9bb9 to e35888e Nov 20, 2019
@gspencergoog

This comment has been minimized.

Copy link
Contributor Author

gspencergoog commented Nov 20, 2019

I've cleaned this up so that there isn't a new public API on ScrollableState, which didn't turn out to be necessary. PTAL.

@gspencergoog

This comment has been minimized.

Copy link
Contributor Author

gspencergoog commented Nov 20, 2019

@goderbauer, can you respond to my comment so I can address yours?

Copy link
Member

dnfield left a comment

LGTM, would defer to @goderbauer on the requested test though

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch from 302bfbf to 9e90aaa Nov 22, 2019
@gspencergoog

This comment has been minimized.

Copy link
Contributor Author

gspencergoog commented Nov 22, 2019

Hi, @goderbauer, OK, I think I added the sliver test that we talked about. Please take a look.

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch from 9e90aaa to ed6f02b Nov 25, 2019
@goderbauer

This comment has been minimized.

Copy link
Member

goderbauer commented Nov 25, 2019

Cirrus looks unhappy.

LogicalKeySet(LogicalKeyboardKey.arrowUp): const DirectionalFocusIntent(TraversalDirection.up),

// Directional keyboard traversal. Not available on web.
if (!kIsWeb)

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

That each line gets its own if reads awkward...

I wonder if this would look nicer with just one if and then the spread operator? Not sure, though.

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Yes, it does! Done.


// Keyboard scrolling.
// TODO(gspencergoog): Convert all of the Platform.isMacOS checks to be
// defaultTargetPlatform == TargetPlatform.macOS, once that exists.

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

nit: link to the issue for this?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Done.

/// [ScrollIncrementCalculator] function on a [Scrollable].
///
/// {@template flutter.widgets.scrollable.scroll_increment_type.intent}
/// This indicates the *intent* of the scroll, not necessarily the size. Not all

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Nice explanation!

/// Indicates that the [ScrollIncrementCalculator] should return the scroll
/// distance it should move when the user requests to scroll by a "line".
///
/// The distance a "line" scrolls is really refers to what should happen when

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Does this sentence have a duplicated verb? "..is really refers to..." sounds strange...

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Removed "is really" (and yes, it was a typo).

/// Indicates that the [ScrollIncrementCalculator] should return the scroll
/// distance it should move when the user requests to scroll by a "page".
///
/// The distance a "page" scrolls is really refers to what should happen when

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

"... is really refers to..." ?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Fixed.

/// specified.
class ScrollIntent extends Intent {
/// Creates a const [ScrollIntent] that requests scrolling in the given
/// [axis], with the given [type]. If [reversed] is specified, then the scroll

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

nit: first paragraph should be a one-sentence summary. Move the second sentence to a separate paragraph?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Done.

/// widget.
final Axis axis;

/// Whether or not the natural scroll direction for this scroll operation

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

It's not really clear to me from the doc why we have this property and what it actually means....

Also, what is the "natural scroll direction"? Is that what apple calls natural scrolling? Are we making up our own definition?


/// The direction in which to scroll the scrollable containing the focused
/// widget.
final Axis axis;

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Don't you need an AxisDirection? e.g. wether to scroll up or down?

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Oh, is that supposed to be indicated by the reversed property?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

I switched back to AxisDirection and made sure it worked. I never did discover what made me switch away from it in the first place: maybe an old design was flawed? I also did add a test for RTL locales to make sure that the result was correct there too.

),
home: CustomScrollView(
controller: controller,
physics: const NeverScrollableScrollPhysics(),

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Hm, this seems odd. It has NeverScrollableScrollPhysics, but you can still scroll it with the keyboard? That sounds like a bug?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Yep, it was. I added a test for this, and fixed the bug.

controller: controller,
physics: const NeverScrollableScrollPhysics(),
slivers: <Widget>[
SliverToBoxAdapter(

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

Instead of making the test based on scrolloffsets (which are difficult to comprehend since the zero scroll offset may be at the top or bottom) maybe use multiple slivers with text (e.g. sliver 1, sliver 2, etc). and then assert that the expected slivers are currently visible?

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Done. All based on the rects of the items now.

Copy link
Contributor Author

gspencergoog left a comment

OK, @goderbauer, I think I addressed everything we talked about. PTAL.

LogicalKeySet(LogicalKeyboardKey.arrowUp): const DirectionalFocusIntent(TraversalDirection.up),

// Directional keyboard traversal. Not available on web.
if (!kIsWeb)

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Yes, it does! Done.


// Keyboard scrolling.
// TODO(gspencergoog): Convert all of the Platform.isMacOS checks to be
// defaultTargetPlatform == TargetPlatform.macOS, once that exists.

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Done.

/// Indicates that the [ScrollIncrementCalculator] should return the scroll
/// distance it should move when the user requests to scroll by a "line".
///
/// The distance a "line" scrolls is really refers to what should happen when

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Removed "is really" (and yes, it was a typo).

/// Indicates that the [ScrollIncrementCalculator] should return the scroll
/// distance it should move when the user requests to scroll by a "page".
///
/// The distance a "page" scrolls is really refers to what should happen when

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Fixed.

/// specified.
class ScrollIntent extends Intent {
/// Creates a const [ScrollIntent] that requests scrolling in the given
/// [axis], with the given [type]. If [reversed] is specified, then the scroll

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Done.

),
home: CustomScrollView(
controller: controller,
physics: const NeverScrollableScrollPhysics(),

This comment has been minimized.

Copy link
@gspencergoog

gspencergoog Nov 25, 2019

Author Contributor

Yep, it was. I added a test for this, and fixed the bug.

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch 2 times, most recently from 5ef40bd to ed91145 Nov 25, 2019
Copy link
Member

goderbauer left a comment

LGTM

await tester.sendKeyEvent(LogicalKeyboardKey.arrowLeft);
await tester.sendKeyUpEvent(modifierKey);
await tester.pumpAndSettle();

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

SHould there be one last expect on the rect to ensure that Box 0 is back to where it started?

await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight);
await tester.sendKeyUpEvent(modifierKey);
await tester.pumpAndSettle();

This comment has been minimized.

Copy link
@goderbauer

goderbauer Nov 25, 2019

Member

same here.

@gspencergoog gspencergoog force-pushed the gspencergoog:keyboard_scroll branch from ed91145 to 093509b Nov 26, 2019
@gspencergoog gspencergoog merged commit 0190e40 into flutter:master Nov 26, 2019
62 of 63 checks passed
62 of 63 checks passed
flutter-build Flutter build is currently broken. Please do not merge this PR unless it contains a fix to the broken build.
Details
WIP Ready for review
Details
analyze-linux Task Summary
Details
analyze-linux
Details
build_tests-linux Task Summary
Details
build_tests-linux
Details
cla/google All necessary CLAs are signed
customer_testing-linux Task Summary
Details
customer_testing-linux
Details
customer_testing-macos Task Summary
Details
customer_testing-macos
Details
customer_testing-windows Task Summary
Details
customer_testing-windows
Details
deploy_gallery-linux Task Summary
Details
deploy_gallery-linux
Details
deploy_gallery-macos Task Summary
Details
deploy_gallery-macos
Details
docs-linux Task Summary
Details
docs-linux
Details
firebase_test_lab_tests-linux Task Summary
Details
firebase_test_lab_tests-linux
Details
framework_tests-libraries-linux Task Summary
Details
framework_tests-libraries-linux
Details
framework_tests-libraries-macos Task Summary
Details
framework_tests-libraries-macos
Details
framework_tests-libraries-windows Task Summary
Details
framework_tests-libraries-windows
Details
framework_tests-misc-linux Task Summary
Details
framework_tests-misc-linux
Details
framework_tests-misc-macos Task Summary
Details
framework_tests-misc-macos
Details
framework_tests-misc-windows Task Summary
Details
framework_tests-misc-windows
Details
framework_tests-widgets-linux Task Summary
Details
framework_tests-widgets-linux
Details
framework_tests-widgets-macos Task Summary
Details
framework_tests-widgets-macos
Details
framework_tests-widgets-windows Task Summary
Details
framework_tests-widgets-windows
Details
hostonly_devicelab_tests-0-linux Task Summary
Details
hostonly_devicelab_tests-0-linux
Details
hostonly_devicelab_tests-1-linux Task Summary
Details
hostonly_devicelab_tests-1-linux
Details
hostonly_devicelab_tests-2-linux Task Summary
Details
hostonly_devicelab_tests-2-linux
Details
hostonly_devicelab_tests-3_last-linux Task Summary
Details
hostonly_devicelab_tests-3_last-linux
Details
web_tests-0-linux Task Summary
Details
web_tests-0-linux
Details
web_tests-1-linux Task Summary
Details
web_tests-1-linux
Details
web_tests-2-linux Task Summary
Details
web_tests-2-linux
Details
web_tests-3-linux Task Summary
Details
web_tests-3-linux
Details
web_tests-4-linux Task Summary
Details
web_tests-4-linux
Details
web_tests-5-linux Task Summary
Details
web_tests-5-linux
Details
web_tests-6-linux Task Summary
Details
web_tests-6-linux
Details
web_tests-7_last-linux Task Summary
Details
web_tests-7_last-linux
Details
goderbauer added a commit to goderbauer/flutter that referenced this pull request Nov 26, 2019
This adds the ability to scroll and page up/down in a Scrollable using the keyboard. Currently, the macOS bindings use Platform.isMacOS as a check, but we'll switch that to be defaultTargetPlatform == TargetPlatform.macOS once that exists.
Zazo032 added a commit to Zazo032/flutter that referenced this pull request Dec 9, 2019
* Roll engine 05f8c8b24b92..96cba6c92a8a (5 commits) (flutter#45597)


git@github.com:flutter/engine.git/compare/05f8c8b24b92...96cba6c92a8a

git log 05f8c8b24b92..96cba6c92a8a --first-parent --oneline
2019-11-26 skia-flutter-autoroll@skia.org Roll src/third_party/skia 8fa469d3bcd6..4f90f9d83183 (4 commits) (flutter#14012)
2019-11-26 hterkelsen@users.noreply.github.com Refactor CanvasKit backend in preparation for platform views (flutter#13935)
2019-11-26 iska.kaushik@gmail.com [vulkan] Bundle vulkan validation layer so files (flutter#13930)
2019-11-25 chinmaygarde@google.com Don't crash but warn when the scene builder specifies no layers. (flutter#14008)
2019-11-25 franciscojma@google.com Remove device independent mask (flutter#14010)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* implicit-casts:false in flutter/lib/src/foundation (flutter#45503)

* implicit-casts:false in flutter/lib/src/animation (flutter#45501)

* SliverOffstage Fix (flutter#45580)

* Performance Improvement for SliverFillRemaining (flutter#44471)

* Roll engine 96cba6c92a8a..e136d637a873 (2 commits) (flutter#45616)


git@github.com:flutter/engine.git/compare/96cba6c92a8a...e136d637a873

git log 96cba6c92a8a..e136d637a873 --first-parent --oneline
2019-11-26 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from 1nxSz... to Bxgic... (flutter#14014)
2019-11-26 skia-flutter-autoroll@skia.org Roll src/third_party/skia 4f90f9d83183..54036c9b8e4b (4 commits) (flutter#14013)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Add integration test for transitive plugin dependencies (flutter#45579)

* Fix flutter run cache (flutter#45267)

* Resume isolate before terminating tests to prevent flutter_tester leaks in integration tests (flutter#45248)

* Resume isolate before terminating tests to prevent flutter_tester leak

* Fix lint

* Catch exceptions from resume() as well as timeout()

* Formatting fixes

* Don't try to resume if there's no vm service

* Fix handling of timeouts to not leak futures

* Keyboard scrolling of Scrollable (flutter#45019)

This adds the ability to scroll and page up/down in a Scrollable using the keyboard. Currently, the macOS bindings use Platform.isMacOS as a check, but we'll switch that to be defaultTargetPlatform == TargetPlatform.macOS once that exists.

* Add additional properties callback in Inspector Serialization Delegate (flutter#45531)

* Add additional properties callback in Inspector Serialization Delegate

* Rename _SerializationDelegate to InspectorSerializationDelegate and add test

* Fix indentation

* Remove trailing whitespace

* Handle case when addAdditionalPropertiesCallback returns null

* Improve docs and minor renames

* Improve docs

* Improve documentation

* Suggest GitHub template when flutter tool crashes (flutter#45360)

* On flutter tool crash suggest GitHub template

* Shorten GitHub URLs

* Whitespace

* Wording tweak from @InMatrix

* Review edits

* Implicit scrolling for pageview (flutter#45598)

* Register memory info command on vmservice for Android devices (flutter#45568)

* 27fa60793 Added docstring for FlutterOverlayView. (flutter/engine#14019) (flutter#45642)


git@github.com:flutter/engine.git/compare/e136d637a873...27fa60793bcb

git log e136d637a873..27fa60793bcb --first-parent --oneline
2019-11-26 30870216+gaaclarke@users.noreply.github.com Added docstring for FlutterOverlayView. (flutter#14019)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Add macOS to TargetPlatform (flutter#43457)

This PR adds TargetPlatform.macOS to the TargetPlatform enum. This allows us to begin implementation of some adaptive UI based on which target platform is desired.

I haven't updated the tests here, that will come in a follow-up PR.

* Roll engine 27fa60793bcb..5250d6315e7a (4 commits) (flutter#45659)


git@github.com:flutter/engine.git/compare/27fa60793bcb...5250d6315e7a

git log 27fa60793bcb..5250d6315e7a --first-parent --oneline
2019-11-26 skia-flutter-autoroll@skia.org Roll src/third_party/skia 54036c9b8e4b..40a7dfc268b6 (1 commits) (flutter#14016)
2019-11-26 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from Bxgic... to aVdHP... (flutter#14017)
2019-11-26 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from kzFUw... to xyyOR... (flutter#14021)
2019-11-26 chinmaygarde@gmail.com Add a separate target for Dart coverter on FML types. (flutter#14011)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* update-packages after dwds updates (flutter#45633)

* Roll engine 5250d6315e7a..2c0eee43923f (2 commits) (flutter#45663)


git@github.com:flutter/engine.git/compare/5250d6315e7a...2c0eee43923f

git log 5250d6315e7a..2c0eee43923f --first-parent --oneline
2019-11-26 garyq@google.com Always set mEditable values when different in TextPlugin (flutter#13951)
2019-11-26 dnfield@google.com Avoid retaining self in block (flutter#14022)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* e3e5f8dab Adding support for enabling semantics on desktop (flutter/engine#14003) (flutter#45667)


git@github.com:flutter/engine.git/compare/2c0eee43923f...e3e5f8dabc2e

git log 2c0eee43923f..e3e5f8dabc2e --first-parent --oneline
2019-11-27 50856934+nturgut@users.noreply.github.com Adding support for enabling semantics on desktop (flutter#14003)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* 18d74fe45 Show test output when engine unit test fails. (flutter/engine#14026) (flutter#45675)


git@github.com:flutter/engine.git/compare/e3e5f8dabc2e...18d74fe45b9c

git log e3e5f8dabc2e..18d74fe45b9c --first-parent --oneline
2019-11-27 flar@google.com Show test output when engine unit test fails. (flutter#14026)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Retry Xcode builds if they fail due to concurrent builds running (flutter#45608)

* Retry Xcode builds if they fail due to concurrent builds running

Fixes flutter#40576.

* Add tests for concurrent iOS launches

* Increase number of retries to account for the initial build being slow

* fad1b23c4 Roll fuchsia/sdk/core/linux-amd64 from xyyOR... to mSEnz... (flutter/engine#14043) (flutter#45689)


git@github.com:flutter/engine.git/compare/18d74fe45b9c...fad1b23c42b9

git log 18d74fe45b9c..fad1b23c42b9 --first-parent --oneline
2019-11-27 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from xyyOR... to mSEnz... (flutter#14043)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Fix comment (flutter#45325)

* [flutter_tool] Crash less when git fails during 'version' (flutter#45628)

* Provide debug output for Gold uploads on post-submit (flutter#45704)

* Use RenderSliverPadding to inset SliverFillViewport  (flutter#45432)

* implicit-casts:false in flutter/lib/src/physics (flutter#45622)

* Print clipBehavior while debugging ClipXXXLayer (flutter#45716)

Fixes flutter#45587

* Fix parameter name: handlePointerEvent (flutter#45717)

Removes an unnecessary leading underscore from a parameter name. The
parameter type is library private, but parameters cannot be 'private'.

* Cleanups to resident runner and flutter device classes (flutter#45673)

* Support web-server/profile/release mode with incremental compiler support for web (flutter#45713)

* Add more documentation around layers. (flutter#45648)

* Eliminate commented-out code (flutter#45726)

This appears to have been inadvertently added in flutter#37497 (333c961).

The code in question already exists in `_PlatformViewGestureMixin`, which
`PlatformViewRenderBox` (where it was added) mixes in.

* License update (flutter#45373)

* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs

* Roll engine fad1b23c42b9..35937eb31240 (3 commits) (flutter#45725)

* f61bec846 Pass "null" when copy data is null to iOS pasteboard.string (flutter/engine#14046)

* 268107d2f fixing the method call for testing semantics (flutter/engine#14056)

* 35937eb31 Roll src/third_party/dart 134e0e28cd..96e7a4ff30 (38 commits) (flutter/engine#14058)

* Relicense Shrine demo to match rest of repository (flutter#45718)

* Relicense Shrine demo to match rest of repository

The Shrine demo was Apache-licensed. The code was mostly
Google-written, with contributions from:

 - Michelle Dudley (@michdud)

 - Abhijeeth Padarthi <rkinabhi@gmail.com> (@rkinabhi)

 - @a14n

I contacted all three, and they confirmed their approval for this
change, as described below.

Abhijeeth Padarthi said by e-mail on Thu, Nov 21, 2019 at 5:48 PM:

> hi Ian,
>
> sure :)
>
> let me know if I need to do anything on my end..

Michelle Dudley wrote by e-mail on Sun, Nov 24, 2019 at 2:07 PM:

> Hi Ian,
>
> That would be ok with me.
>
> Thanks,
>
> Michelle

@a14n said on Discord's Flutter server in the #hackers channel at 10:44PM on Thursday, November 21, 2019:

> @Hixie no problem I agree with this relicensing

* Remove shrine loophole from license checker.

* Make all of the driver interface public. (flutter#45733)

We keep finding things that we've accidentally not made public. The
pattern we use elsewhere in the platform is to just export everything,
to avoid encouraging people from importing `src/` files directly.

* Do not delete output directory during flutter build ios-framework (flutter#45740)

* Make Android log reader read any recent logs (flutter#45743)

* Roll engine 35937eb31240..4bdd15cd5438 (5 commits) (flutter#45741)

* 29b2e91f1 Include uncommitted files when checking for code format issues. (flutter/engine#14035)

* 7a7118d0a Roll src/third_party/skia 861ac61cb1a9..c96f5108df28 (10 commits) (flutter/engine#14059)

* bc07e6a23 [web] Initial support for LineMetrics (flutter/engine#13985)

* bcb826759 Revert "Do not default to downstream affinity on iOS insertText (flutter#13852)" (flutter/engine#14053)

* 4bdd15cd5 more tests for enabling semantics (flutter/engine#14060)

* Revert "Track and use fallback TextAffinity for null affinity platform TextSelections. (flutter#44622)" (flutter#45698)

This reverts commit 6b66d79.

* Roll engine 4bdd15cd5438..6c605f8a9624 (3 commits) (flutter#45746)

* a86ef9465 Dynamically determine whether to use offscreen surface based on need (flutter/engine#13976)

* 0fc7867ae Roll src/third_party/dart 96e7a4ff30..73fdf19b56 (3 commits) (flutter/engine#14063)

* 6c605f8a9 Fix fml_unittests (flutter/engine#14062)

* Roll engine 6c605f8a9624..8672e79af873 (2 commits) (flutter#45817)

* 8d6fa7e85 Fallback to Roboto if no suitable font is found (flutter/engine#14061)

* 8672e79af Roll src/third_party/skia c96f5108df28..73beaaa48fcc (2 commits) (flutter/engine#14065)

* Revert "Roll engine 6c605f8a9624..8672e79af873 (2 commits) (flutter#45817)" (flutter#45916)

This reverts commit b9a56b9.

* Sample driver test working on Fuchsia (flutter#45652)

* [flutter_driver] [fuchsia] Validate existance of cmx for driver tests

Also added an example driver test that can run on Fuchsia devices.

Fixes: flutter#45624

* update packages for stock example

* fix licenses

* Add Sliver video to RenderSliver (flutter#45708)

* Improve MouseTracker lifecycle: Move checks to post-frame (flutter#44631)

This PR rewrites MouseTracker's lifecycle, so that mouse callbacks are all triggered in post frame, instead of the current one where some are triggered during the build phase. This PR also changes the onExit callback to MouseRegion, RenderMouseRegion, and MouseTrackerAnnotation, so that it is no longer triggered on dispose.

* Set the LANG when invoking cocoapods (flutter#45710)

* Re-land "Add option to delay rendering the first frame (flutter#45135)" (flutter#45588)

* Handle case where lastLogcatTimestamp is null (flutter#45937)

* Revert "Re-land "Add option to delay rendering the first frame (flutter#45135)" (flutter#45588)" (flutter#45939)

This reverts commit c59151b.

* Revert "Make all of the driver interface public. (flutter#45733)" (flutter#45924)

This reverts commit f244500.

* Dont crash on malformed packages.json (flutter#45786)

* Update configuration for flutter features (flutter#45914)

* Fixing SliverOverlapAbsorber & SliverOverlapInjector child property (flutter#44283)

* Clean up some things I noticed while doing another change (flutter#45658)

This fixes some minor things I noticed while doing another change.

- Uncomments an old test that wants to be run, but can't be, and marked it as "skipped", so that the code won't rot anymore.
- Added the focus state to the short string version of a FocusNode
- Added a missing piece of information to findAncestorWidgetOfExactType

* fix lint applied after PR was opened (flutter#45953)

* Deprecate UpdateLiveRegionEvent (flutter#45940)

* Move dartdocs to devicelab vm. (flutter#45952)

We added support linux VMs to devicelab and we will be moving some of
the machine independent benchmarks there.

* update macOS configuration settings (flutter#45920)

* use package-scheme imports for generated web entrypoint (flutter#45934)

* Revert "update macOS configuration settings (flutter#45920)" (flutter#45965)

This reverts commit 3b2042a.

* Remove canTransitionFrom override from Material/CupertinoPageRoute (flutter#45750)

* implicit-casts:false in flutter/lib/src/scheduler (flutter#45721)

* Roll engine 6c605f8a9624..8672e79af873 (2 commits) (flutter#45918)


git@github.com:flutter/engine.git/compare/6c605f8a9624...8672e79af873

git log 6c605f8a9624..8672e79af873 --first-parent --oneline
2019-11-28 skia-flutter-autoroll@skia.org Roll src/third_party/skia c96f5108df28..73beaaa48fcc (2 commits) (flutter#14065)
2019-11-28 hterkelsen@users.noreply.github.com Fallback to Roboto if no suitable font is found (flutter#14061)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC cbracken@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Roll engine 8672e79af873..faa11214c09b (7 commits) (flutter#45986)


git@github.com:flutter/engine.git/compare/8672e79af873...faa11214c09b

git log 8672e79af873..faa11214c09b --first-parent --oneline
2019-12-03 liyuqian@google.com Run benchmarks in Cirrus (flutter#13950)
2019-12-03 stuartmorgan@google.com Report backing store changes in the macOS view (flutter#13933)
2019-12-03 franciscojma@google.com Listen to keyUp event on meta modified keys (flutter#13984)
2019-12-02 dnfield@google.com Fix live region logic (flutter#14081)
2019-12-02 skia-flutter-autoroll@skia.org Roll src/third_party/skia e8c96d8e6116..2792515dab7c (1 commits) (flutter#14069)
2019-12-02 bkonyi@google.com Roll src/third_party/dart 3f32196958..e4344a568f (1 commits) (flutter#14073)
2019-12-02 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from aVdHP... to 6QxEZ... (flutter#14080)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Reland: Update macOS configuration settings (flutter#45966)

* Add comments to package scheme fix (flutter#45997)

* Add printTrace when vscode package.json parsing fails (flutter#45998)

* Add clip behaviour to Container (flutter#44971)

* 1a9608774 Update to newer path fill-type API in Skia (flutter/engine#14070) (flutter#46002)


git@github.com:flutter/engine.git/compare/faa11214c09b...1a96087747ac

git log faa11214c09b..1a96087747ac --first-parent --oneline
2019-12-03 brianosman@google.com Update to newer path fill-type API in Skia (flutter#14070)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Remove record/replay/bug report functionality from the tool (flutter#45999)

* Start fixing docs (flutter#45977)

* Update PULL_REQUEST_TEMPLATE.md (flutter#45944)

Update for recent changes to policies.

* Simplify logging code in flutter_driver (flutter#45945)

* Simplify logging code in flutter_driver

It appears nobody is benefitting from this logic, so we may as well not pay the cost.

* Make all of the driver interface public.

This is the second attempt at this; it should be better than before because the Logger interface, which conflicted in various places, no longer exists.

See flutter#45733 for original attempt.

This reverts commit 0ce9206 (PR flutter#45924).

* Roll engine 1a96087747ac..617938024315 (5 commits) (flutter#46023)


git@github.com:flutter/engine.git/compare/1a96087747ac...617938024315

git log 1a96087747ac..617938024315 --first-parent --oneline
2019-12-03 caseyhillers@gmail.com Update fallback to Roboto url to be HTTPS (flutter#14086)
2019-12-03 iska.kaushik@gmail.com Revert "Fix fml_unittests (flutter#14062)" (flutter#14087)
2019-12-03 liyuqian@google.com Revert PRs to unblock David and Jim's work (flutter#14088)
2019-12-03 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from 6QxEZ... to OSk8h... (flutter#14085)
2019-12-03 bkonyi@google.com Roll src/third_party/dart e4344a568f..a4d799c402 (7 commits) (flutter#14083)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Enable Android embedding v2 on the beta, dev and stable channel (flutter#46040)

* Roll engine 617938024315..90e28c027c0b (3 commits) (flutter#46043)


git@github.com:flutter/engine.git/compare/617938024315...90e28c027c0b

git log 617938024315..90e28c027c0b --first-parent --oneline
2019-12-04 bkonyi@google.com Roll src/third_party/dart 89e31069e8..19fc1016da (6 commits) (flutter#14093)
2019-12-03 dworsham@google.com Relanding: Add Flow unittests and fixtures (flutter#14091)
2019-12-03 bkonyi@google.com Roll src/third_party/dart a4d799c402..89e31069e8 (14 commits) (flutter#14089)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Re-land "Add option to delay rendering the first frame (flutter#45135)" (flutter#45941)

* Add Density API to ThemeData, implement for buttons. (flutter#43547)

* Add a density attribute to ThemeData

* Simplify tests

* Review changes (Hans)

* Re-enable hostonly tests on non-master branches (flutter#46037)

This is a follow-on to flutter#45455 - the test failures indicated a
real problem, so re-enabling the tests on non-master.

flutter#45453

* Ensure that docker tag is legal (flutter#46035)

* [flutter_tool] Do not continue with a no-op 'upgrade' (flutter#46011)

* [Driver] correct type for getWidgetDiagnostics (flutter#45985)

* Set track color in Cupertino Switch and Adaptive Switch (flutter#45074)

* 3e6d6bc61 add pointer data santizing in flutter web engine (flutter/engine#14082) (flutter#46049)


git@github.com:flutter/engine.git/compare/90e28c027c0b...3e6d6bc612fd

git log 90e28c027c0b..3e6d6bc612fd --first-parent --oneline
2019-12-04 47866232+chunhtai@users.noreply.github.com add pointer data santizing in flutter web engine (flutter#14082)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* implicit-casts:false in flutter/lib/src/services (flutter#45723)

* implicit-casts:false in flutter/lib/src/semantics (flutter#45722)

* 1cdfc9931 Roll src/third_party/dart 19fc1016da..2a13b1fe26 (6 commits) (flutter/engine#14107) (flutter#46059)


git@github.com:flutter/engine.git/compare/3e6d6bc612fd...1cdfc99314df

git log 3e6d6bc612fd..1cdfc99314df --first-parent --oneline
2019-12-04 bkonyi@google.com Roll src/third_party/dart 19fc1016da..2a13b1fe26 (6 commits) (flutter#14107)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* implicit-casts:false in flutter/lib/src/widgets (flutter#45728)

* implicit-casts:false in flutter/lib/src/widgets

* address review comments

* address review comment

* implicit-casts:false in flutter/lib/src/rendering (flutter#45720)

* implicit-casts:false in flutter/lib/src/rendering

* address review comments

* implicit-casts:false in flutter_driver (flutter#45175)

* implicit-casts:false in flutter_driver

* address review comments

* Api Samples and Diagrams for 10 more classes / functions (flutter#45603)

* Api Samples and Diagrams for the following classes and methods:

  - AlertDialog
  - SimpleDialog
  - SingleChildScrollView
  - showDatePicker
  - RichText
  - InputDecoration
  - Divider
  - StreamBuilder
  - DataTable
  - BottomSheet
    - showBottomSheet
    - showModalBottomSheet

* Update packages/flutter/lib/src/material/divider.dart

Co-Authored-By: Kate Lovett <katelovett@google.com>

* Update packages/flutter/lib/src/widgets/basic.dart

Co-Authored-By: Kate Lovett <katelovett@google.com>

* Update packages/flutter/lib/src/material/data_table.dart

Co-Authored-By: Kate Lovett <katelovett@google.com>

* Update packages/flutter/lib/src/material/bottom_sheet.dart

Co-Authored-By: Kate Lovett <katelovett@google.com>

* Update packages/flutter/lib/src/material/scaffold.dart

Co-Authored-By: Kate Lovett <katelovett@google.com>

* Move animation out of sample

* Remove "widget.size", replace with "60"

* 07aab9821 Fix one more use of deprecated path fill type API (flutter/engine#14127) (flutter#46092)


git@github.com:flutter/engine.git/compare/1cdfc99314df...07aab98212cb

git log 1cdfc99314df..07aab98212cb --first-parent --oneline
2019-12-04 brianosman@google.com Fix one more use of deprecated path fill type API (flutter#14127)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* improve resetChanges() dartdoc (flutter#46008)

* Update dartdoc to 0.29.2. (flutter#46014)

* Add a VisualDensity manual test (flutter#46083)

Adds a manual test that allows testing of density for buttons. Also updates some of the button tests to be somewhat simpler and to test the child positions in the test to make sure they are consistent.

* Roll engine 07aab98212cb..fdaa7cf12175 (2 commits) (flutter#46095)


git@github.com:flutter/engine.git/compare/07aab98212cb...fdaa7cf12175

git log 07aab98212cb..fdaa7cf12175 --first-parent --oneline
2019-12-04 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from OSk8h... to XCAOU... (flutter#14128)
2019-12-04 skia-flutter-autoroll@skia.org Roll src/third_party/skia 75368c3a0290..ccca30aad770 (12 commits) (flutter#14129)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* only run codecov on master (flutter#46100)

* Remove flutterBuildPluginAsAarFeature flag (flutter#46101)

* Pre-Submit Tryjobs for Flutter Gold (flutter#44474)

* Overridable default platform key bindings (flutter#45102)

This adds actions and shortcuts arguments to WidgetsApp (and MaterialApp and CupertinoApp) to allow developers to override the default mappings on an application, and to allow for a more complex definition of the default mappings.

I've stopped using SelectAction here, in favor of using ActivateAction for all activations, but haven't removed it, to avoid a breaking change, and to allow a common base class for these types of actions. This is because some platforms use the same mapping (web) for both kinds of activations (both select and activate).

* Move technical_debt_cost to use a cloud vm. (flutter#45996)

* Support --fast-start for Android applications (as an opt-in) (flutter#45431)

* Revert "Support --fast-start for Android applications (as an opt-in) (flutter#45431)" (flutter#46138)

This reverts commit 2a11316.

* implicit-casts:false in flutter/lib/src/painting (flutter#45621)

* [flutter_tool] Make Device.dispose() abstract (flutter#46006)

* Name the docker_builer shard (flutter#46103)

* [flutter_tool] Print version info on a no-op upgrade. (flutter#46109)

* Add bitcode and architectures to App.framework build ios framework command (flutter#46130)

* Only schedule callback when there is mouse (flutter#46113)

* Normalizes all of the "See also" blocks in comments. (flutter#46121)

This normalizes all of the "See also" blocks in comments so that they conform in style.

They all look like this now:

  /// See also:
  ///
  ///  * [MyFavoriteWidget], because it's cool.
  class Foo {}

I removed some useless "See also" blocks, and added commentary to ones that were just "bare" references.

This is my penance for adding so many bullets that are "-" instead of "*". :-)

* implicit-casts:false in examples (flutter#45805)

* Made the behavior for caching large images modular. (flutter#46010)

Introduced LargeImageHandler to ImageCache class.

* Dispatch hover events to PlatformViewController (flutter#46124)

This adds support to PlatformViewLayer for handling hover events. Prior
to this, PlatformViewLayers only supported events forwarded by the
gesture recognizers associated with the PlatformViewRenderBox. Hover
events don't participate in gesture recognition and as such are dropped
in GestureBinding. That said, hover event processing in platform views
is expected for desktop and other platforms with hover event support.

This adds support for passing an optional MouseTrackerAnnotation to
PlatformViewLayer. PlatformViewRenderBox populates this with a mouse
tracker annotation that forwards hover events to
PlatformViewController.dispatchPointerEvent() for handling by users.

* implicit-casts:false in dev (flutter#45787)

* Manual roll engine fdaa7cf12175..ee4c2a53c7c6 (8 commits) (flutter#46174)

git@github.com:flutter/engine.git/compare/fdaa7cf12175...ee4c2a53c7c6

git log fdaa7cf12175..ee4c2a53c7c6 --first-parent --oneline
2019-12-05 skia-flutter-autoroll@skia.org Roll src/third_party/skia 6344c2937997..0af32fdf5fea (12 commits) (flutter#14139)
2019-12-05 dworsham@google.com Wire up Opacity on Fuchsia, round 2 (flutter#14024)
2019-12-05 gw280@google.com Disable fml_tests until they're fixed on Fuchsia (flutter#14137)
2019-12-05 30870216+gaaclarke@users.noreply.github.com Started specifying the OS version for running the tests. (flutter#14094)
2019-12-04 skia-flutter-autoroll@skia.org Roll src/third_party/skia ccca30aad770..6344c2937997 (13 commits) (flutter#14133)
2019-12-04 30870216+gaaclarke@users.noreply.github.com Expanded our scenario_app docs. (flutter#14136)
2019-12-04 yjbanov@google.com [web][felt] fix source map path (flutter#14134)
2019-12-04 chinmaygarde@google.com Fix platform view offsets incorrectly taking into account device pixel ratios. (flutter#14135)

* Roll engine fdaa7cf12175..ee4c2a53c7c6 (8 commits) (flutter#46178)


git@github.com:flutter/engine.git/compare/fdaa7cf12175...ee4c2a53c7c6

git log fdaa7cf12175..ee4c2a53c7c6 --first-parent --oneline
2019-12-05 skia-flutter-autoroll@skia.org Roll src/third_party/skia 6344c2937997..0af32fdf5fea (12 commits) (flutter#14139)
2019-12-05 dworsham@google.com Wire up Opacity on Fuchsia, round 2 (flutter#14024)
2019-12-05 gw280@google.com Disable fml_tests until they're fixed on Fuchsia (flutter#14137)
2019-12-05 30870216+gaaclarke@users.noreply.github.com Started specifying the OS version for running the tests. (flutter#14094)
2019-12-04 skia-flutter-autoroll@skia.org Roll src/third_party/skia ccca30aad770..6344c2937997 (13 commits) (flutter#14133)
2019-12-04 30870216+gaaclarke@users.noreply.github.com Expanded our scenario_app docs. (flutter#14136)
2019-12-04 yjbanov@google.com [web][felt] fix source map path (flutter#14134)
2019-12-04 chinmaygarde@google.com Fix platform view offsets incorrectly taking into account device pixel ratios. (flutter#14135)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Fixes Focus and FocusScope's assignment of canRequestFocus. (flutter#46168)

This fixes an issue where lines like this:

    focusNode.canRequestFocus = widget.canRequestFocus ?? focusNode.canRequestFocus;

Were causing the canRequestFocus bit to copy the status of the enclosing scope, since canRequestFocus also looks to the enclosing scope to decide if it can focus.

* fix release web builds where the target file is not under lib (flutter#46179)

* Add visualDensity to checkbox, radio, icon button, and chip. (flutter#46091)

This adds a visualDensity attribute to checkbox, radio, icon button, and chip.

* Roll engine ee4c2a53c7c6..0506c65f5915 (5 commits) (flutter#46194)


git@github.com:flutter/engine.git/compare/ee4c2a53c7c6...0506c65f5915

git log ee4c2a53c7c6..0506c65f5915 --first-parent --oneline
2019-12-05 mouad.debbar@gmail.com [web] DOM text measurement return a LineMetrics list if single-line (flutter#14138)
2019-12-05 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from XCAOU... to qQlb5... (flutter#14144)
2019-12-05 skia-flutter-autoroll@skia.org Roll src/third_party/skia f5542b6aa307..0af13b3caf03 (1 commits) (flutter#14143)
2019-12-05 dnfield@google.com Disable a11y on detach (flutter#14142)
2019-12-05 ferhat@gmail.com Fix firefox detection to fix app startup for other browsers (flutter#14145)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Memory test on scrolling large images quickly (flutter#46184)

* Fix null event crash in TapGestureRecognizer (flutter#45943)

* Mitigation for current tool test skips on CI (flutter#46181)

* Roll engine 0506c65f5915..29998f07faf9 (6 commits) (flutter#46211)


git@github.com:flutter/engine.git/compare/0506c65f5915...29998f07faf9

git log 0506c65f5915..29998f07faf9 --first-parent --oneline
2019-12-06 fmil@google.com Configures ICU to load the timezone data (flutter#13952)
2019-12-06 jason-simmons@users.noreply.github.com Do not paint a layer's children if the children were not prerolled (flutter#14149)
2019-12-05 skia-flutter-autoroll@skia.org Roll src/third_party/skia 0af13b3caf03..cc92b27c78a0 (26 commits) (flutter#14151)
2019-12-05 50856934+nturgut@users.noreply.github.com [web] [tests] Changing configurations for firefox (flutter#14148)
2019-12-05 dnfield@google.com Raise API level for reportFullyDrawn (flutter#14146)
2019-12-05 30870216+gaaclarke@users.noreply.github.com Started setting the FlutterOverlayView's bounds when it gets added to its superview. (flutter#14018)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Roll engine 29998f07faf9..fd240d0d532a (2 commits) (flutter#46218)


git@github.com:flutter/engine.git/compare/29998f07faf9...fd240d0d532a

git log 29998f07faf9..fd240d0d532a --first-parent --oneline
2019-12-06 skia-flutter-autoroll@skia.org Roll src/third_party/skia 3e01360677b2..aa4f7f55829d (3 commits) (flutter#14153)
2019-12-06 skia-flutter-autoroll@skia.org Roll src/third_party/skia cc92b27c78a0..3e01360677b2 (2 commits) (flutter#14152)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Update iOS build signing error message (flutter#45835)

* ed2d00ba0 Roll fuchsia/sdk/core/mac-amd64 from qQlb5... to VKso5... (flutter/engine#14154) (flutter#46220)


git@github.com:flutter/engine.git/compare/fd240d0d532a...ed2d00ba02a4

git log fd240d0d532a..ed2d00ba02a4 --first-parent --oneline
2019-12-06 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from qQlb5... to VKso5... (flutter#14154)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* gen_l10n.dart tool testing (flutter#44856)

* Add tests to gen_l10n.dart tool

* Separate out LocalizationsGenerator class to improve testability of code

* Add testing dependencies to dev/tools

* Integrate dev/tools testing to flutter CI

* Restructure dev/tools folder for testing

* Fix license headers

* Roll engine ed2d00ba02a4..5f6fa92a8fd3 (2 commits) (flutter#46241)


git@github.com:flutter/engine.git/compare/ed2d00ba02a4...5f6fa92a8fd3

git log ed2d00ba02a4..5f6fa92a8fd3 --first-parent --oneline
2019-12-06 skia-flutter-autoroll@skia.org Roll src/third_party/skia 46e2d8d4a1ae..24ee4e0341fd (2 commits) (flutter#14157)
2019-12-06 skia-flutter-autoroll@skia.org Roll src/third_party/skia aa4f7f55829d..46e2d8d4a1ae (1 commits) (flutter#14156)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Add a FlutterDriver screenshot test to device lab. (flutter#45411)

* Update SliverPersistentHeader docs (flutter#46081)

* Implement screenshot test for flutter web. (flutter#45530)

* e7b69ced2 Roll src/third_party/skia 24ee4e0341fd..274a766baf2f (8 commits) (flutter/engine#14159) (flutter#46249)


flutter/engine@5f6fa92...e7b69ce

git log 5f6fa92a8fd3..e7b69ced2e24 --first-parent --oneline
2019-12-06 skia-flutter-autoroll@skia.org Roll src/third_party/skia 24ee4e0341fd..274a766baf2f (8 commits) (flutter/engine#14159)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Revert "Add a FlutterDriver screenshot test to device lab. (flutter#45411)" (flutter#46281)

This reverts commit adec697.

* Roll engine e7b69ced2e24..5b870a218f15 (3 commits) (flutter#46569)


flutter/engine@e7b69ce...5b870a2

git log e7b69ced2e24..5b870a218f15 --first-parent --oneline
2019-12-08 wvvwwvw@gmail.com Add support for setting window size limits for glfw (flutter/engine#13415)
2019-12-06 iska.kaushik@gmail.com [fuchsia] SnapToNextPhase refactor + add tests and documentation (flutter/engine#14158)
2019-12-06 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from VKso5... to 9C6UA... (flutter/engine#14161)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Allow plugins that don't support the Android platform (flutter#46282)

* ff6fa4765 Roll src/third_party/skia 274a766baf2f..b60ec7f98b08 (9 commits) (flutter/engine#14256) (flutter#46572)


flutter/engine@5b870a2...ff6fa47

git log 5b870a218f15..ff6fa47659c0 --first-parent --oneline
2019-12-09 skia-flutter-autoroll@skia.org Roll src/third_party/skia 274a766baf2f..b60ec7f98b08 (9 commits) (flutter/engine#14256)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
@gspencergoog gspencergoog deleted the gspencergoog:keyboard_scroll branch Jan 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.