Commit graph

378 commits

Author SHA1 Message Date
Will Larche 326caa5d22 [Gallery] Updated assets and copy (#18324) 2018-06-09 00:39:27 -07:00
Florian Loitsch 79dec6fa5c
Remove spurious new line. (#18230) 2018-06-06 13:25:58 +02:00
Florian Loitsch 211615fc63
Disable engine calls doring layout_bench. (#18163) 2018-06-06 11:43:43 +02:00
Chris Bracken 6db3c6d1d1
Build devicelab iOS apps as universal binaries (#18102)
Eliminates 64-bit hardcoding for iOS test apps under dev/. This brings
them in line with the default iOS app templates.
2018-06-01 08:43:57 -07:00
Mikkel Nygaard Ravn 8c39c35eb0
Upgradle Gradle dependencies to match Android Studio 3.1.2 (#18080) 2018-06-01 09:57:40 +02:00
Mikkel Nygaard Ravn 87a6e2b497
Revert "Update Gradle dependencies (#18071)" (#18074)
This reverts commit 59bb2dba73.
2018-05-31 19:25:40 +02:00
Mikkel Nygaard Ravn 59bb2dba73
Update Gradle dependencies (#18071) 2018-05-31 17:16:47 +02:00
Mikkel Nygaard Ravn d21b2799a0
Revert "Update Gradle dependencies to match Android Studio 3.1.2 (#17974)" (#17979)
This reverts commit 0f557e720e.
2018-05-28 21:18:13 +02:00
Mikkel Nygaard Ravn 0f557e720e
Update Gradle dependencies to match Android Studio 3.1.2 (#17974) 2018-05-28 21:08:50 +02:00
Mikkel Nygaard Ravn bb88766448
Revert "Update Gradle dependencies to match Android Studio 3.1.2 (#17942)" (#17966)
This reverts commit dac1baf4fa.
2018-05-28 15:10:37 +02:00
Mikkel Nygaard Ravn dac1baf4fa
Update Gradle dependencies to match Android Studio 3.1.2 (#17942) 2018-05-28 14:35:32 +02:00
Sam Rawlins 5fafface34 Bump mockito to 3.0.0-alpha+5 (#17487) 2018-05-11 15:27:15 -07:00
Konstantin Scheglov 9b65fc6529
Rebase after package:isolate fixes. (#17289) 2018-05-10 18:52:33 -07:00
Devon Carew d427d26d1b
Unpin analyzer - no longer use the version from the sdk (#17479)
* no longer use the analyzer version shipped in the sdk

* update all package versions to the latest
2018-05-10 13:31:54 -07:00
Hans Muller bf3bd7667f
New Gallery UI reprise (#17031) 2018-04-27 08:11:20 -07:00
Hans Muller 38d5d46127 Revert "New Flutter Gallery UI" (#16984)
* Revert "New Flutter Gallery UI (#16936)"

This reverts commit 7038597b02.
2018-04-25 18:41:07 -07:00
Hans Muller 7038597b02
New Flutter Gallery UI (#16936)
A new front-end for the Flutter Gallery example.
2018-04-25 14:15:34 -07:00
Todd Volkert f408bb06f9
Update dependencies (#16442) 2018-04-10 14:27:53 -07:00
Jacob Richman 660408edd6
Switch to the new Matrix4.tryInvert method to avoid throwing and catching (#15771) exceptions while performing hit testing. 2018-04-09 10:32:22 -07:00
Jonah Williams 5125c43247
re-enable verify only test failure and update deps. (#16090)
* re-enable verify-only failing test for out of sync deps and update deps to latest version
2018-04-04 10:52:46 -07:00
Anatoly Pulyaevskiy 78434580d2 Upgrade quiver to 0.28.1 in flutter_test to fix usage of Maps (#16132) 2018-04-02 22:26:49 -07:00
Jonah Williams e91683942c
Update AndroidManifest to include screenLayout|density in config changes (#15871)
* android templates should add density and screenLayout to config changes

* update the rest of the manifests
2018-03-24 12:38:42 -07:00
Andrew Davies 72fd020a24
[fuchsia_remote_debug_protocol] Adds the fuchsia remote debug protocol package.
Adds a package that will support connecting to and debugging devices with multiple instances of the Dart VM, and operate on multiple Isolates and Flutter Views.

Currently supports connecting to all existing Dart VMs and extracting information about all Flutter Views running across each VM.
2018-03-22 17:19:02 -07:00
Jonah Williams 88cc977384
Remove package:http from Flutter (#15416)
* use HttpOverrides and dart:io HttpClient in flutter

* add missing package:http dependency

* update flutter packages and remove comment about createHttpClient from flutter_test

* move byte loading logic to common class, move string parsing logic to base class

* addAll doesn't work for a Uint8List

* use bytes.setRange

* undo addition to hello_world

* add newline to end of binding.dart

* and a newline for hello world

* refactor to function and add tests

* address comments on unknown length case

* alignment

* sort alaphabetically

* rename convertResponse to consolidateClientHttpClientResponseBytes.  Add header

* fix alignment in test
2018-03-22 08:21:01 -07:00
Jonah Williams ad9506d25a
Traverse dependencies and dev dependencies separately (#15581)
* traverse dependencies and dev dependencies separately

* separate dev and reg deps

* update pubspecs

* add checksum string and update transitive dep string.  Add additional verify command to check checksum

* cleanup comments

* add missing space, quote, run verify-onlu from bot script

* rerun tool with fixed string

* ensure correct working directory and bump versions

* flutter not flutterRoot
2018-03-20 20:03:32 -07:00
Vyacheslav Egorov d693d427d8
Upgrade packages to pull in newest petitparser with Dart 2 fixes. (#15558)
* Upgrade packages to pull in newest petitparser with Dart 2 fixes.

* Don't allow Dart 2 failures.

* Address new lints discovered by updated analyzer.
2018-03-15 11:11:13 +01:00
Alexander Aprelev e23a658685
Rev dependencies up and regenerate stock_messages. (#15469)
This fixes https://github.com/flutter/flutter/issues/15458.
2018-03-12 17:46:26 -07:00
Alexander Aprelev 2f8474f9aa
Roll engine to b6df7a637498ca9beda1fa9cd7210e3202ea599f. (#15444)
* Roll engine to b6df7a637498ca9beda1fa9cd7210e3202ea599f.

Changes since last roll:
```
b6df7a637 Roll dart to 290c576264faa096a0b3206c71b2435309d9f904. (#4771)
a6764dbd5 Add sources for Fuchsia target. (#4763)
2d5900615 [fuchsia] Remove unused header file. (#4769)
9717063b7 Revert "Roll dart to c080951d45e79cd25df98036c4be835b284a269c. (#4767)" (#4768)
9a9814312 Roll dart to c080951d45e79cd25df98036c4be835b284a269c. (#4767)
e74e8b35c [async] Update includes of async headers to new path (#4760)
e2c4b2760 Use Dart 2 camel case constants in the engine Dart libraries (#4766)
9c1e48434 Updates for Fuchsia roll. (#4765)
14c940e27 Switch from fxl::Mutex to std::mutex (#4764)
debf82c0b Roll Garnet (#4759)
5bffdefbb Use weak pointers to the accesibility bridge from objects vended to the UIKit accessibility framework. (#4761)
```
2018-03-12 15:44:25 -07:00
Siva e5ba3041cd
Update dart-petitparser and dart-xml packages (#15376)
* Update the following packages
- dart-petitparser to 1.7.5
- dart-xml to 3.0.3
- image to 1.1.30
These updates fix some of the strong mode errors we were encountering
while running flutter tests.
2018-03-11 18:57:14 -07:00
Alexander Aprelev ded538a1bb
Update dependencies with forced upgrade. (#15344)
* Update dependencies with forced upgrade.

Now that https://github.com/flutter/flutter/issues/15261 is fixed, do the update with upgrade.

* Update test package use following upgrade

* Replace addOption(allowMultiple) with addMultiOption
2018-03-09 10:38:54 -08:00
Alexander Aprelev 1a3c9b83c0
Step process, boolean_selector, collection deps up. (#15262)
This is needed to fix 'flutter test --preview-dart-2 test/all.dart' in dev/devicelab
2018-03-08 11:07:03 -08:00
Jason Simmons 7f03b9e41b
Upgrade to test package version 0.12.30+4 (#14853)
30+4 has made some changes to the remoting protocol that are incompatbile
with a test harness running 30+3 (e.g. adding a type='initial' field to the
first message)
2018-02-23 12:49:57 -08:00
Alexander Aprelev a448994543
Use the Dart SDK built from Flutter engine rather than from dartlang.org (#14610)
* Use engine-built dart sdk

* Download dart-sdk from engine

* Move up deps to fix dart sdk constraint problem

* Update update_dart_sdk.ps1 for Windows

* Fix tests so they pass analysis

* More types for tests

* Roll engine

* Update dart sdk stamp location in flutter.bat

* Add newline
2018-02-14 07:18:25 -08:00
Vyacheslav Egorov f5bbc5bb76
Upgrade packages (#14588)
We need to pull in Dart 2 compliant mockito

Fixes #14532
2018-02-09 11:16:58 +01:00
Greg Spencer df791279ab
Fix process running during package creation (#14508)
There were some problems I introduced with the last PR for this. It passed the test, but failed in practice.

This adds tests for those failure cases, adds a "--help" and fixes the test so that it doesn't try and actually download MinGit as part of the Windows test.

I added package:platform as a dependency, so I did a force upgrade on the packages.

Also, re-enabling 'create package' in the cache warming code, now that #14448 is fixed.
2018-02-07 12:21:14 -08:00
Alexandre Ardhuin c02b6a8bcf
some whitespace cleanup (#14443) 2018-02-02 23:27:29 +01:00
Vyacheslav Egorov c23509e9fd
Unpin test and upgrade packages (#14282)
* Unpin package:test and upgrade packages

* Update packages/flutter/test/foundation/stack_trace_test.dart

* Also add packages/flutter_tools/test/data/asset_test/font/.dartignore to ensure that update-packages --force-upgrade does not crash.
2018-01-26 10:40:03 -08:00
Sam Rawlins 7ffcce84a2 Bump async, http, and vm_service_client packages (#14136) 2018-01-19 14:59:16 -08:00
Sam Rawlins ce939564fa Bump json_rpc_2 dependency (#14051) 2018-01-12 16:23:51 -08:00
Sam Rawlins e8b666249a Bump collection dependency to 1.14.5 (#14048) 2018-01-12 14:33:26 -08:00
Alexandre Ardhuin 0fe1e5bf5b
apply upcoming lint prefer_const_literals_to_create_immutables (#14029) 2018-01-11 08:38:55 +01:00
Leaf Petersen ab874da7be
Roll Dart SDK to 2.0.0-dev.16.0, along with associated package updates (#13857)
Rolling the Dart SDK to 2.0, with associated package updates.  

https://groups.google.com/forum/#!topic/flutter-dev/E22RdKAYjs8
2018-01-10 14:31:28 -08:00
Michael Goderbauer 9e51a60299
Reland #13918 (#14023)
* Revert "Reverting package changes until I can figure out how to fix Windows. (#14007)"

This reverts commit 6fda8ee821.

* Make prepare_package run on Windows
2018-01-10 13:37:36 -08:00
Greg Spencer 6fda8ee821
Reverting package changes until I can figure out how to fix Windows. (#14007)
* Revert "Fixed output validation. (#14005)"

This reverts commit d84398db72.

* Revert "Update package prep script to do async process execution and emit output as it happens. (#13918)"

This reverts commit b7169c1d95.
2018-01-09 19:47:19 -08:00
Greg Spencer b7169c1d95
Update package prep script to do async process execution and emit output as it happens. (#13918)
- Switches to async process execution, which now shows output as it happens instead of in chunks when the process completes
-  Now uses ProcessManager so that it may be mocked for the test.
- Adds in the download and install of mingit on Windows.
- Updated package dependencies because of added dependency on process package.
2018-01-09 17:42:42 -08:00
Ian Hickson 9114e2afd1
The dependency script wasn't catching quite all our transitive dependencies (#13954) 2018-01-08 21:39:33 -08:00
Mikkel Nygaard Ravn 0a96f96c4f
Update and simplify Android templates (#13970) 2018-01-08 15:01:43 +01:00
Mikkel Nygaard Ravn c669c62ecf
Update Android template instances - retake 2 (#13928) 2018-01-06 12:02:33 +01:00
Alexander Aprelev 50a28785bd
Update dependencies to bring updated dependency on watcher-0.9.7+6 (#13949) 2018-01-05 21:19:03 -08:00
Greg Spencer a04df5bc6b
Updates the package dependencies by running flutter update-packages --force-upgrade (#13906)
This simply updates the package dependencies by running flutter update-packages --force-upgrade.

I'm doing this with no other changes, because the last time I tried that, redness occurred. I want to isolate the problem to a "clean" update of the packages.

It looks like the plugins device_info, connectivity, and url_launcher haven't yet had their gradle configurations updated, so they fail when trying to build with the new gradle. I did not upgrade for those three packages only (in flutter_gallery) until we are ready to fix them (fixing them for master will break them for alpha users, so we need to do an alpha roll to do that).
2018-01-04 10:44:37 -08:00
Mikkel Nygaard Ravn fea0c03466
Revert "Update Android template instances - retake (#13901)" (#13903)
This reverts commit 36e3b10396 to make the build green.
2018-01-04 15:20:30 +01:00
Mikkel Nygaard Ravn 36e3b10396
Update Android template instances - retake (#13901) 2018-01-04 09:50:25 +01:00
Mikkel Nygaard Ravn 5e2bc1681a
Revert "Refresh template instances in repo (#13864)" (#13865)
This reverts commit 25b1d43ad8.
2018-01-03 10:50:58 +01:00
Mikkel Nygaard Ravn 25b1d43ad8
Refresh template instances in repo (#13864) 2018-01-03 09:58:16 +01:00
Leaf Petersen b3cfa785c4
Uncontroversial and backwards compatible 2.0 SDK fixes (#13723)
Small code changes as part of moving the framework SDK forward to a 2.0 dev version.
2017-12-21 13:39:03 -08:00
Greg Spencer dd796853cc
Revert "Adding minzip to packaging steps for Windows (#13679)" (#13716)
This reverts commit 765191e7b4.
because the updated packages cause a gradle build problem.
2017-12-20 16:21:57 -08:00
Greg Spencer 765191e7b4
Adding minzip to packaging steps for Windows (#13679)
This adds our self-compiled copy of the MinGit executable (built from the flutter/git repo) to the archive when building an archive for Windows.

I also tweaked the internal API for prepare_package.dart so that there's a single entry point to build an archive.
2017-12-20 15:35:53 -08:00
Mikkel Nygaard Ravn e9ba0dd4ba
Switch from app.flx to flutter_assets (#13656) 2017-12-18 22:09:49 +01:00
Sarah Zakarias 68bf4b3c62 Remove app.flx and add flutter_assets to project.pbxproj of all example apps (#13649) 2017-12-18 20:08:30 +01:00
Chris Bracken 2c0c9ba9e5
Apply media padding in complex layout benchmark drawer header (#13610)
By default BoxScrollView (and hence ListView, which is a subclass)
padding is the media padding along its scroll axis in order to avoid
placing list items within areas where user interaction should be
minimised -- e.g. under the status bar, or in and around the iPhone X
notch in landscape mode.

In cases where a list item should occupy the padding area, developers
should set the ListView padding to EdgeInsets.zero so as not to pick up
the default media padding. For widgets inside the drawer that should
avoid safe areas, developers can add a SafeArea widget.
2017-12-15 12:46:35 -08:00
amirh becab558e1
flutter update-packages (#13571)
* flutter update-packages

* update plugin registrant for flutter_gallery
2017-12-14 10:07:51 -08:00
Sarah Zakarias 5e18c07614
Reapply flutter_assets (#13567)
* Revert "Revert engine (#13547)"

This reverts commit ee65db11d4.

* Keep flaky mark
2017-12-14 17:27:25 +01:00
Mikkel Nygaard Ravn 5ae507a752
Revert "Refresh template instances (#13563)" (#13565)
This reverts commit 05d6b08ffe.
2017-12-14 15:38:39 +01:00
Mikkel Nygaard Ravn 05d6b08ffe
Refresh template instances (#13563) 2017-12-14 15:19:59 +01:00
Yegor ee65db11d4
Revert engine (#13547)
* Revert "Include a directory with Flutter assets (#12944)"

This reverts commit 3af6b9cbf5.

* Revert "Upgrade project.pbxproj to include flutter_assets (#13011)"

This reverts commit 08128cb29b.

* Revert "Upgrade complex_layout project.pbxproj to include flutter_assets (#13544)"

This reverts commit 35f1a04195.

* mark complex_layout_ios__start_up as flaky
2017-12-13 16:25:25 -08:00
Sarah Zakarias 35f1a04195
Upgrade complex_layout project.pbxproj to include flutter_assets (#13544) 2017-12-14 00:14:51 +01:00
Chris Bracken 1d6bb3ccbf
Update quiver dependency to 0.26.2 (#13299)
Updates quiver from 0.26.0 to 0.26.2 to pick up strong-mode fixes.
2017-12-01 10:28:59 -08:00
amirh 47b5c37f1a
Add Images demo to the gallery app. (#13141) 2017-11-28 18:17:11 -08:00
Greg Spencer 909406ba25
Consolidating .gitignore files. (#13002)
This consolidates all of the non-template .gitignore rules into the top level .gitignore, to ignore common things more broadly, with less maintenance needed for the .gitignore files. Does not touch the templates, so that they still produce needed .gitignores as part of flutter create.
2017-11-28 17:06:57 -08:00
Ian Hickson 32242b9e38
Remove engine interference in microbenchmarks (#13034) 2017-11-16 17:57:57 -08:00
xster 89405002bc
Add an iOS style demo to the gallery (#12651)
* Built first tab

* Small additions

* started tab 3

* Need color arithmetics

* tab 2 built

* finalize

* lint and tests

* review

* Reapply docs after rebase

* use color.computeLuminance

* linter

* nit
2017-11-03 08:50:29 -07:00
Yegor 35bb855c0d
make microbenchmark logging verbose (#12858)
* make microbenchmark logging verbose

* prefix JSON so it can be parsed in verbose mode
2017-11-02 18:11:34 -07:00
Chris Bracken 83df7bdd0f
Update Dart package dependencies (#12829) 2017-11-01 15:28:46 -07:00
Yegor 154f2e5402 Reapply #12700 but keep linter pinned at 0.1.35 (#12735)
* Revert "Revert "fix --force-upgrade script; upgrade to the latest package versions (#12700)" (#12729)"

This reverts commit 7f0d4f4caa.

* keep linter pinned at 0.1.35
2017-10-26 09:55:36 -07:00
Yegor 7f0d4f4caa Revert "fix --force-upgrade script; upgrade to the latest package versions (#12700)" (#12729)
This reverts commit 5b3575006e.
2017-10-25 17:08:08 -07:00
Yegor 5b3575006e fix --force-upgrade script; upgrade to the latest package versions (#12700)
* fix updrade script; upgrade to the latest package versions

* exclude special dependencies from transitive closure

* fix stack trace handling in flutter_test due to stack_trace change

* change type on _emptyStackTrace
2017-10-25 16:12:43 -07:00
Alexandre Ardhuin 1fce14a31c enable lint prefer_single_quotes (#12665) 2017-10-22 18:11:36 +02:00
Hans Muller c3d56b1dad flutter_localization optional package (#12410) 2017-10-11 16:01:13 -07:00
Alexander Aprelev c02850b4dc Force upgrade update packages with improved update process. (#12412)
* Force upgrade update packages with improved update process.

* Update packages

* Revert "Update packages"

This reverts commit a37de26d3f.
2017-10-05 20:59:08 -07:00
gspencergoog 18f0d3aef7 Add framework support for system text scale factor. (#12180)
* Add framework-side support for system text scale factor.

* Rolling engine to e3404b81a53ba3180c7623a6f2190ebb28518f30
  Additional changes rolled in with engine change:
    libtxt: implementation of GetRectsForRange that processes a line at a time - e3404b8
    Provide an entropy source to the Dart engine (#4161) - e1aa867
    libtxt: search for fallback fonts that can match emoji and CJK characters - 8061df1
    Roll skia to e4679fa06a. (#4157) - 267e7a8
    Update buildroot to 53fea9aebbcc39c6522731471a1a45960ee0685e (#4160) - 02ea7ae
    Revert engine Dart roll. (#4158) - 14aab33
    Add support for system text scale factor. (#4124) - b2a7f4b
    Include _http into sky_engine libraries for analyzer (#4154) - b930f10
    libtxt: Remove postprocess_line and improve tracking of X offsets - 86f95f0
    libtxt: remove redundant line_widths (#4152) - 14bf515
    Roll dart to ade37f931e90b0fdb8fe16d6bf6f089545da55b6 (#4151) - 6f1264f
2017-10-02 14:18:18 -07:00
Ian Hickson 441b5c2031 Pin all dependencies ONCE AND FOR ALL (#12210)
* Pin all dependencies ONCE AND FOR ALL

This replaces the secret `flutter update-packages --upgrade` with a destructive `flutter update-packages --force-upgrade` that actually goes and pins every dependency and transitive dependency in every flutter package to the same version.

* Add comments.
2017-09-22 13:35:35 -07:00
Alexander Aprelev 63802b3dff Pin args to 0.13.7 to avoid version conflict (#12208) 2017-09-21 18:29:16 -07:00
Mikkel Nygaard Ravn 1731a16d81 Make consistent use of gradle wrapper (#10993) 2017-06-29 09:48:01 +02:00
Ian Hickson 9adb4a78a6 Deep linking: automatically push the route hiearchy on load. (#10894)
The main purpose of this PR is to make it so that when you set the
initial route and it's a hierarchical route (e.g. `/a/b/c`), it
implies multiple pushes, one for each step of the route (so in that
case, `/`, `/a`, `/a/b`, and `/a/b/c`, in that order). If any of those
routes don't exist, it falls back to '/'.

As part of doing that, I:

 * Changed the default for MaterialApp.initialRoute to honor the
   actual initial route.

 * Added a MaterialApp.onUnknownRoute for handling bad routes.

 * Added a feature to flutter_driver that allows the host test script
   and the device test app to communicate.

 * Added a test to make sure `flutter drive --route` works.
   (Hopefully that will also prove `flutter run --route` works, though
   this isn't testing the `flutter` tool's side of that. My main
   concern is over whether the engine side works.)

 * Fixed `flutter drive` to output the right target file name.

 * Changed how the stocks app represents its data, so that we can
   show a page for a stock before we know if it exists.

 * Made it possible to show a stock page that doesn't exist. It shows
   a progress indicator if we're loading the data, or else shows a
   message saying it doesn't exist.

 * Changed the pathing structure of routes in stocks to work more
   sanely.

 * Made search in the stocks app actually work (before it only worked
   if we happened to accidentally trigger a rebuild). Added a test.

 * Replaced some custom code in the stocks app with a BackButton.

 * Added a "color" feature to BackButton to support the stocks use case.

 * Spaced out the ErrorWidget text a bit more.

 * Added `RouteSettings.copyWith`, which I ended up not using.

 * Improved the error messages around routing.

While I was in some files I made a few formatting fixes, fixed some
code health issues, and also removed `flaky: true` from some devicelab
tests that have been stable for a while. Also added some documentation
here and there.
2017-06-23 14:58:29 -07:00
Michael Goderbauer 8b888e6a12 Apply tempalte changes to examples (#10865) 2017-06-20 15:27:00 -07:00
Michael Goderbauer 1ad346f5c5 Add workaround for aapt cruncher issue to complex_layout app (#10679)
See https://github.com/flutter/flutter/issues/8986
2017-06-13 17:00:08 -07:00
Michael Goderbauer 8bf17192f6 Adding first semantics perf test (#10649)
* Adding first semantics perf test

* review commnts and analyzer fixes

* fix analyzer warning
2017-06-13 12:49:07 -07:00
Hans Muller 0e4dda7736 Improved support for saving and restoring the scroll offset, etc V2 (#10590) 2017-06-08 17:20:36 -07:00
Chris Bracken d94943a9ac Update integration test .gitignores to latest template (#10191)
Under android/ directory, ignore:
GeneratedPluginRegistrant.java

Under ios/ directory, ignore:
GeneratedPluginRegistrant.h
GeneratedPluginRegistrant.m
Pods/
2017-05-18 18:47:57 -07:00
Adam Barth ff0aa51326 Update gallery assets (#9957)
The new assets have been optipng'ed.
2017-05-11 23:28:25 -07:00
Chris Bracken 60f5ae8e77 Add const non-null asserts where required (#9945)
Also includes minor doc fixes.
2017-05-09 21:15:42 -07:00
Michael Thomsen 5cec108023 Roll android build tools to 25.0.3 (#9922)
* Roll android build tools to 25.0.3

* Roll android build tools to 25.0.3 in templates
2017-05-09 18:58:46 +02:00
Michael Thomsen a625d3e140 Revert "Upgrade to most recent android build tools version (#9878)" (#9888)
This reverts commit 5ed2984e75.
2017-05-08 20:33:12 +02:00
Michael Thomsen 5ed2984e75 Upgrade to most recent android build tools version (#9878) 2017-05-08 20:12:32 +02:00
Ian Hickson 2b04e300af Fix microbenchmarks tests. (#9782) 2017-05-03 17:33:29 -07:00
Jason Simmons b586a97ad2 Enable physical model shadows (with animation) and change elevation to a double (#9756)
Fixes https://github.com/flutter/flutter/issues/9342
2017-05-03 12:11:01 -07:00
Ian Hickson e8c46927c4 Flush microtasks after transient callbacks are run. (#9702)
This splits the frame pipeline into two, beginFrame and drawFrame.

As part of making this change I added some debugging hooks that helped
debug the issues that came up:

 * I added debugPrintScheduleFrameStacks which prints a stack whenever
   a frame is actually scheduled, so you can see why frames are being
   scheduled.

 * I added some toString output to EditableText and RawKeyboardListener.

 * I added a scheduler_tester.dart library for scheduler library tests.

 * I changed the test framework to flush microtasks before pumping.

 * Some asserts that had the old string literal form were replaced by
   asserts with messages.

I also fixed a few subtle bugs that this uncovered:

 * setState() now calls `ensureVisualUpdate`, rather than
   `scheduleFrame`. This means that calling it from an
   AnimationController callback does not actually schedule an extra
   redundant frame as it used to.

 * I corrected some documentation.
2017-05-02 09:27:53 -07:00
Ian Hickson 36052e68dd BoxDecoration API changes: backgroundColor -> color et al (#9648)
backgroundColor -> color
backgroundImage -> image
BackgroundImage -> DecorationImage
2017-04-27 14:19:01 -07:00
Mehmet Fidanboylu 4e7a38b118 Add a tile scrolling test to complex_layout app (#9537)
* Add a tile scrolling test to complex_layout app

* - Review comments and fix analyzer failures.

* Use ListView.builder pattern.
2017-04-26 14:22:11 -07:00
Alexandre Ardhuin 83fce211a3 More const immutable classes (#9544)
* more widget const constructors

* prefer const constructors

* address review comments
2017-04-23 22:37:29 +02:00
Adam Barth 0d0861b3ee The const will continue until morale improves (#9536) 2017-04-21 14:59:24 -07:00
Alexandre Ardhuin 9541848272 make @immutable const classes (#9532)
* make @immutable const

* fix build
2017-04-21 23:09:42 +02:00
Adam Barth ea71bdca20 Start using @immutable annotations (#9152)
There are more places we can use this annotation, but this patch just gets us
started.
2017-04-14 10:38:58 -07:00
Ian Hickson bf017b79b3 Move Point to Offset (#9277)
* Manually fix every use of Point.x and Point.y

Some of these were moved to dx/dy, but not all.

* Manually convert uses of the old gradient API

* Remove old reference to Point.

* Mechanical changes

I applied the following at the root of the Flutter repository:

git ls-files -z | xargs -0 sed -i 's/\bPoint[.]origin\b/Offset.zero/g'
git ls-files -z | xargs -0 sed -i 's/\bPoint[.]lerp\b/Offset.lerp/g'
git ls-files -z | xargs -0 sed -i 's/\bnew Point\b/new Offset/g'
git ls-files -z | xargs -0 sed -i 's/\bconst Point\b/const Offset/g'
git ls-files -z | xargs -0 sed -i 's/\bstatic Point /static Offset /g'
git ls-files -z | xargs -0 sed -i 's/\bfinal Point /final Offset /g'
git ls-files -z | xargs -0 sed -i 's/^\( *\)Point /\1Offset /g'
git ls-files -z | xargs -0 sed -i 's/ui[.]Point\b/ui.Offset/g'
git ls-files -z | xargs -0 sed -i 's/(Point\b/(Offset/g'
git ls-files -z | xargs -0 sed -i 's/\([[{,]\) Point\b/\1 Offset/g'
git ls-files -z | xargs -0 sed -i 's/@required Point\b/@required Offset/g'
git ls-files -z | xargs -0 sed -i 's/<Point>/<Offset>/g'
git ls-files -z | xargs -0 sed -i 's/[.]toOffset()//g'
git ls-files -z | xargs -0 sed -i 's/[.]toPoint()//g'
git ls-files -z | xargs -0 sed -i 's/\bshow Point, /show /g'
git ls-files -z | xargs -0 sed -i 's/\bshow Point;/show Offset;/g'

* Mechanical changes - dartdocs

I applied the following at the root of the Flutter repository:

git ls-files -z | xargs -0 sed -i 's/\ba \[Point\]/an [Offset]/g'
git ls-files -z | xargs -0 sed -i 's/\[Point\]/[Offset]/g'

* Further improvements and a test

* Fix minor errors from rebasing...

* Roll engine
2017-04-12 15:06:12 -07:00
Ian Hickson 2a54524337 Fix tests to use Ahem, and helpful changes around that (#9332)
* Fix tests to use Ahem, and helpful changes around that

- Fix fonts that had metric-specific behaviours.

- LiveTestWidgetsFlutterBinding.allowAllFrames has been renamed
  to LiveTestWidgetsFlutterBinding.framePolicy.

- LiveTestWidgetsFlutterBinding now defaults to using a frame policy
  that pumps slightly more frames, to animate the pointer crosshairs.

- Added "flutter run --use-test-fonts" to enable Ahem on devices.

- Changed how idle() works to be more effective in live mode.

- Display the test name in live mode (unless ahem fonts are enabled).

- Added a toString to TextSelectionPoint.

- Style nit fixes.

* Roll engine to get Ahem changes.

* Update tests for dartdoc changes.

* Fix flutter_tools tests
2017-04-12 13:33:02 -07:00
Yegor a5593b1678 fix analyzer warning: use const where possible (#9320) 2017-04-10 14:20:47 -07:00
Alexandre Ardhuin 610955f81d upgrade to linter-0.1.30 (#9297)
* upgrade to linter-0.1.30

* add prefer_is_empty lint
* add directives_ordering lint
* add no_adjacent_strings_in_list lint
* add no_duplicate_case_values lint
* add prefer_collection_literals lint
* add prefer_const_constructors lint
* add prefer_contains lint
* add prefer_initializing_formals lint
* add unnecessary_null_aware_assignments lint
* add unnecessary_null_in_if_null_operators lint
2017-04-08 08:43:19 +02:00
Ian Hickson ebe6da5b17 Rename BlockBody to ListBody. (#9291)
Nobody knew what a Block was.
2017-04-07 17:14:54 -07:00
Ian Hickson 3eb87830e9 Constants! Constants everywhere! (#9286)
Aggressively apply the const lint.
2017-04-07 12:24:32 -07:00
Hans Muller 606f56221b Eliminated DrawerItem, use ListTile instead (#8992) 2017-03-24 15:34:43 -07:00
Mikkel Nygaard Ravn e918ef5dbe Updated microbenchmark ios project according to #8971 (#8976) 2017-03-23 10:13:38 +01:00
Mikkel Nygaard Ravn f9336e2bbd Updated complex_layout ios project according to #8971 (#8974) 2017-03-23 09:32:55 +01:00
Alexandre Ardhuin 578ca0a295 use color.shadeXxx instead of color[Xxx] (#8932)
* use color.shadeXxx instead of color[Xxx]

* remove calls to .shade500 on MaterialColor

* remove calls to .shade200 on MaterialAccentColor

* fix test
2017-03-21 23:14:55 +01:00
Jakob Andersen 03f053a738 Update complex_layout and microbenchmarks to Gradle build. (#8890) 2017-03-20 16:15:02 +01:00
Adam Barth 1e63dc4a72 Merge BuildableElement and Element (#8758)
There aren't any subclasses of Element that don't also subclass
BuildableElement and I suspect they wouldn't work properly anyway.

Fixes #3656
2017-03-14 17:49:10 -07:00
Chris Bracken 6c97dd2c6c Declare locals as final where not reassigned (dev) (#8574) 2017-03-03 18:06:08 -08:00
Alexandre Ardhuin 8c043d06de fix lints for directives_ordering rule (#8382) 2017-02-23 13:37:26 -08:00
Alexandre Ardhuin e9a775bf38 prefer const constructors (#8316) 2017-02-21 14:54:29 -08:00
Adam Barth 88a01ac40c Port complex_layout to Sliver-based scrolling (#8114) 2017-02-13 16:30:19 -08:00
Ian Hickson 073843f2ca Make these microbenchmarks more holistic. (#8070)
They previously were very sensitive to widgets like LayoutBuilder.
2017-02-10 15:06:18 -08:00
Adam Barth 474c2c7df6 Switch complex_layout back to LazyBlock (#7940)
We need to study these benchmark numbers more carefully. See #7937
2017-02-07 15:21:48 -08:00
Adam Barth 2e9986614d Use sliver-based scrolling in more places (#7893)
In particular, we now use ListView in the about dialog.
2017-02-06 16:13:48 -08:00
Ian Hickson 332a23030b Rename and refactor ScrollView hierarchy (#7865)
This prepares us for a CustomScrollView that takes slivers.
2017-02-03 16:05:43 -08:00
Jason Simmons 59cacd7102 Some fixes for the microbenchmarks (#7781)
* Return null from VM.mainView if no view exists
* Retry in connectToServiceProtocol if a view is not yet available
* Do not explicitly call exit from the benchmarks - it will not cleanly shut down the engine
2017-02-01 11:54:27 -08:00
Chris Bracken d01c55d289 Eliminate calls to deprecated FlutterInit() (#7770) 2017-01-31 17:39:29 -08:00
Ian Hickson 6469b475d2 Let's document this line so I don't accidentally remove it again. (#7750) 2017-01-30 23:32:44 -08:00
Jason Simmons 8ef17e0a6a Create flutter_driver key finders using parameterized ValueKey types (#7749)
The finder will only match the widget's ValueKey if both have identical
runtime types
2017-01-30 16:52:59 -08:00
Ian Hickson 64d3647084 Tab crash in complex_layout (#7744) 2017-01-30 16:11:01 -08:00
Adam Barth a4eca31777 Use ScrollView in examples a manual_tests (#7645)
This patch deploys ScrollView in a number of demos and manual tests.
2017-01-25 21:59:03 -08:00
Ian Hickson 1bdf351818 Merge pubspec.yaml and flutter.yaml. (#7605) 2017-01-24 11:19:31 -08:00
Yegor 0c7a9da98f microbenchmarks: single-line JSON; consolidate #7433 workaround (#7450)
- output single-line JSON because iOS 9.x cannot output more than one line
- move the workaround for #7433 into LiveTestWidgetsFlutterBinding so that it works in all cases (e.g. animation_bench.dart on iOS)
2017-01-11 14:29:21 -08:00
Yegor 42ccffca36 fix microbenchmarks on iOS (#7429) 2017-01-10 18:16:00 -08:00
Yegor 1df639b432 add microbenchmarks to devicelab (fixes #7081) (#7396) 2017-01-09 14:57:14 -08:00
Hans Muller b23aed7a86 New Tabs API (#7387) 2017-01-09 14:55:36 -08:00
Collin Jackson 211fefc217 rename Sky to Flutter and add clarifying comment to template (#7165)
* s/sky/flutter/ in Android templates

* update engine.version with a compatible engine version

* replace more SkyActivity references with FlutterActivity
2016-12-06 16:03:32 -08:00
Adam Barth 8ca4caa440 Rename Flexible to Expanded and improve docs (#6978)
This patch replaces uses of Flexible with Expanded where we're using
FlexFit.tight. We still need to think of a better name for the
FlexFit.loose variant.

Also, improve the docs for Row, Column, Flex, and RenderFlex to be more
problem-oriented and to give a complete account of the layout algorithn.

Fixes #6960
Fixes #5169
2016-11-21 23:16:43 -08:00
Dan Rubel 34e466f1fd Refactor flutter command exit code - part 3 of 3 (#6838)
* Remove the workaround that pinned args to v0.13.6
This reverts most of the changes in commit 6331b6c8b5
* throw exception if exit code is not an integer
* rework command infrastructure to throw ToolExit when non-zero exitCode
* convert commands to return Future<Null>
* cleanup remaining commands to use throwToolExit for non-zero exit code
* remove isUnusual exception message
* add type annotations for updated args package
2016-11-14 14:21:30 -05:00
Dan Rubel 6331b6c8b5 revert args to 0.13.6 (#6765) 2016-11-08 17:15:11 -05:00
Adam Barth c1a2967430 Use SDK sources to refer to our own packages (#6001)
Switch our pubspec.yamls to using SDK sources so that we can have consistent
source types when we depend on these packages from external packages using SDK
sources.
2016-09-22 20:39:35 -07:00
Ian Hickson 92af333eb6 Update docs for benchmarks (#5999)
We changed how `flutter run --release` works (it quits without showing
logs now, since it can't tell when the app closes).
2016-09-22 14:26:24 -07:00
Adam Barth d3efe7da5e Remove flutter_sprites (#5996)
This code is now in its own standalone library. The library is in a private git
repository in the flutter organization because the code is unmaintained. If
you're interested in using and maintaining this code, please contact
flutter-dev@googlegroups.com for more information.
2016-09-22 10:54:06 -07:00
Ian Hickson 6a60608588 add readme for complex_layout benchmark (#5948) 2016-09-20 10:39:31 -07:00
Ian Hickson 411db2d587 Tabs occasionally tried to setState after dispose (#5784)
Fixes https://github.com/flutter/flutter/issues/5776
2016-09-09 14:25:34 -07:00
Ian Hickson 1f15e06e45 Handle stateful widgets in layout builders. (#5752)
Previously, if a StatefulWidget was marked dirty, then removed from the
build, then reinserted using the exact same widget under a widget under
a LayoutBuilder, it wouldn't rebuild.

This fixes that.

It also introduces an assert that's supposed to catch SizeObserver-like
behaviour. Rather than make this patch even bigger, I papered over two
pre-existing bugs which this assert uncovered (and fixed the other
problems it found):

   https://github.com/flutter/flutter/issues/5751
   https://github.com/flutter/flutter/issues/5749

We should fix those before 1.0 though.
2016-09-07 14:45:19 -07:00
Seth Ladd f28cf64127 ios launcher icons with more padding, optimized (#5470) 2016-08-18 10:16:10 -07:00
Seth Ladd 2326f55281 use transparent android launcher icons (#5442)
* use transparent android launcher icons

* revert stocks icons
2016-08-17 09:05:01 -07:00
Chinmay Garde 21ee4b92f1 Specify the IPHONEOS_DEPLOYMENT_TARGET to 8.0. (#5268)
* Update examples to lower the deployment target on iOS.
2016-08-05 14:56:07 -07:00
Eric Seidel 5a0589c781 Remove stray PRODUCT_BUNDLE_IDENTIFIER (#5242)
* Remove stray PRODUCT_BUNDLE_IDENTIFIER

This was erroneously added and overrides
the bundle for the gallery causing signing
to fail in my setup.

@chinmaygarde

* Remove PRODUCT_BUNDLE_IDENTIFIER from all Runner pbxproj's
2016-08-05 10:00:50 -07:00
Hans Muller 4fe80830ca Use updated appbar background assets (#5248) 2016-08-05 09:02:34 -07:00
Hans Muller 3a7508d702 New gallery identity (#5210) 2016-08-04 11:07:59 -07:00
Dragoș Tiselice f3444fcf28 Added BorderRadius. (#5072)
* Added custom radii to RRect.

This is the first commit towads an implementation of
MergeableMaterial. It adds custom radii to RRect.

* Renamed RRect constructors and added BorderRadius.

BorderRadius is a class similar to EdgeInsets that lets you define
all rounded corners of a rounded rectangle easily.
2016-07-29 16:17:57 -07:00
Ian Hickson 51f8fb9979 Add a scrollbar to the license screen. (#5114)
And make Scrollbar work with LazyBlock.

And an about box to the Stocks sample app.
2016-07-29 15:44:12 -07:00
Adam Barth a33fc49659 Remove dangling reference to ViewController (#4841)
We want to use the FlutterViewController in this new project template.

Fixes #4840
2016-07-07 10:45:58 -07:00
Adam Barth 151750baa8 Update the ios projects for examples to HelloServices model (#4822)
We now use a different approach for ios projects where the developer controls
the Xcode project file. This patch removes the old ".generated" approach in
favor of the new approach.
2016-07-06 14:13:21 -07:00
Hans Muller 0e38cba95f Make the limit that defines Row/Column free space configurable (#4646) 2016-06-21 14:29:22 -07:00
Ian Hickson e502e9c8f8 ImageIcon (#4649)
Anywhere that accepted IconData now accepts either an Icon or an
ImageIcon.

Places that used to take an IconData in an `icon` argument, notably
IconButton and DrawerItem, now take a Widget in that slot. You can wrap
the value that used to be passed in in an Icon constructor to get the
same result.

Icon itself now takes the icon as a positional argument, for brevity.

ThemeData now has an iconTheme as well as a primaryIconTheme, the same
way it has had a textTheme and primaryTextTheme for a while.

IconTheme.of() always returns a value now (though that value itself may
have nulls in it). It defaults to the ThemeData.iconTheme.

IconThemeData.fallback() is a new method that returns an icon theme data
structure with all fields filled in.

IconTheme.merge() is a new constructor that takes a context and creates
a widget that mixes in the new values with the inherited values.

Most places that introduced an IconTheme widget now use IconTheme.merge.

IconThemeData.merge and IconThemeData.copyWith act in a way analogous to
the similarly-named members of TextStyle.

ImageIcon is introduced. It acts like Icon but takes an ImageProvider
instead of an IconData.

Also: Fix the analyzer to actually check the stocks app.
2016-06-20 21:04:45 -07:00
Ian Hickson 2dfdc840b1 Refactor everything to do with images (#4583)
Overview
========

This patch refactors images to achieve the following goals:

* it allows references to unresolved assets to be passed
  around (previously, almost every layer of the system had to know about
  whether an image came from an asset bundle or the network or
  elsewhere, and had to manually interact with the image cache).

* it allows decorations to use the same API for declaring images as the
  widget tree.

It requires some minor changes to call sites that use images, as
discussed below.

Widgets
-------

Change this:

```dart
      child: new AssetImage(
        name: 'my_asset.png',
        ...
      )
```

...to this:

```dart
      child: new Image(
        image: new AssetImage('my_asset.png'),
        ...
      )
```

Decorations
-----------

Change this:

```dart
      child: new DecoratedBox(
        decoration: new BoxDecoration(
          backgroundImage: new BackgroundImage(
            image: DefaultAssetBundle.of(context).loadImage('my_asset.png'),
            ...
          ),
          ...
        ),
        child: ...
      )
```

...to this:

```dart
      child: new DecoratedBox(
        decoration: new BoxDecoration(
          backgroundImage: new BackgroundImage(
            image: new AssetImage('my_asset.png'),
            ...
          ),
          ...
        ),
        child: ...
      )
```

DETAILED CHANGE LOG
===================

The following APIs have been replaced in this patch:

* The `AssetImage` and `NetworkImage` widgets have been split in two,
  with identically-named `ImageProvider` subclasses providing the
  image-loading logic, and a single `Image` widget providing all the
  widget tree logic.

* `ImageResource` is now `ImageStream`. Rather than configuring it with
  a `Future<ImageInfo>`, you complete it with an `ImageStreamCompleter`.

* `ImageCache.load` and `ImageCache.loadProvider` are replaced by
  `ImageCache.putIfAbsent`.

The following APIs have changed in this patch:

* `ImageCache` works in terms of arbitrary keys and caches
  `ImageStreamCompleter` objects using those keys. With the new model,
  you should never need to interact with the cache directly.

* `Decoration` can now be `const`. The state has moved to the
  `BoxPainter` class. Instead of a list of listeners, there's now just a
  single callback and a `dispose()` method on the painter. The callback
  is passed in to the `createBoxPainter()` method. When invoked, you
  should repaint the painter.

The following new APIs are introduced:

* `AssetBundle.loadStructuredData`.

* `SynchronousFuture`, a variant of `Future` that calls the `then`
  callback synchronously. This enables the asynchronous and
  synchronous (in-the-cache) code paths to look identical yet for the
  latter to avoid returning to the event loop mid-paint.

* `ExactAssetImage`, a variant of `AssetImage` that doesn't do anything clever.

* `ImageConfiguration`, a class that describes parameters that configure
  the `AssetImage` resolver.

The following APIs are entirely removed by this patch:

* `AssetBundle.loadImage` is gone. Use an `AssetImage` instead.

* `AssetVendor` is gone. `AssetImage` handles everything `AssetVendor`
  used to handle.

* `RawImageResource` and `AsyncImage` are gone.

The following code-level changes are performed:

* `Image`, which replaces `AsyncImage`, `NetworkImage`, `AssetImage`,
  and `RawResourceImage`, lives in `image.dart`.

* `DecoratedBox` and `Container` live in their own file now,
  `container.dart` (they reference `image.dart`).

DIRECTIONS FOR FUTURE RESEARCH
==============================

* The `ImageConfiguration` fields are mostly aspirational. Right now
  only `devicePixelRatio` and `bundle` are implemented. `locale` isn't
  even plumbed through, it will require work on the localisation logic.

* We should go through and make `BoxDecoration`, `AssetImage`, and
  `NetworkImage` objects `const` where possible.

* This patch makes supporting animated GIFs much easier.

* This patch makes it possible to create an abstract concept of an
  "Icon" that could be either an image or a font-based glyph (using
  `IconData` or similar). (see
  https://github.com/flutter/flutter/issues/4494)

RELATED ISSUES
==============

Fixes https://github.com/flutter/flutter/issues/4500
Fixes https://github.com/flutter/flutter/issues/4495
Obsoletes https://github.com/flutter/flutter/issues/4496
2016-06-16 09:49:48 -07:00
Hans Muller ebaf9e29a0 Gallery shrine demo uses image assets (#4544) 2016-06-13 14:48:24 -07:00
Hans Muller 187ff00294 New gallery app bar background (#4539) 2016-06-13 12:41:29 -07:00
Matt Perry ffde6777fc Pull Flutter gallery assets from Google's git repo. (#4493)
This repo contains the final licensed images.
2016-06-09 16:03:10 -04:00
Matt Perry 3e0e6b9997 Smoothly scale the Pesto logo as the app bar resizes. (#4465)
Also update the assets version to pull in better quality logo images.

BUG=https://github.com/flutter/flutter/issues/4407
2016-06-08 15:49:21 -04:00
Hans Muller 0b7e975e2c Updated fitness and weather manual tests, new asset locations (#4351) 2016-06-03 10:38:03 -07:00
Hans Muller 309b9f8010 Version 0.0 of a gallery demo of the Material Design "Shrine" app (#4327) 2016-06-02 14:23:20 -07:00
Adam Barth 1ff7109b02 Mark State.setState as protected (#4295)
This required refactoring some cases where we weren't following the rules for
the protected annotation.
2016-06-02 10:46:12 -07:00
Ian Hickson b5c6da105c Port our microbenchmarks to the new world (#4121)
Our microbenchmarks now run on real devices.
2016-05-23 15:04:50 -07:00
pq e54196d7fc Turn on avoid_return_types_on_setters and cleanup annotated setters.
It's safe to remove the unneeded `void`s from setters since the blocking issues in the
`always_declare_return_types` lint have been fixed (https://github.com/dart-lang/linter/).  We can also safely flip the bit on  `avoid_return_types_on_setters`.
2016-05-12 11:45:30 -07:00
Jason Simmons 09dde8718b Change the Android activity launch mode to singleTop (#3792) 2016-05-09 09:31:34 -07:00
Devon Carew a807b009ad Re add large sample (#3661)
* Revert "Revert "Mega gallery (#3647)" (#3659)"

This reverts commit ea62d31fde.

* fix the dev/dartdoc.dart script
2016-05-01 15:52:51 -07:00
Adam Barth ea62d31fde Revert "Mega gallery (#3647)" (#3659)
This reverts commit 9497fb56d4.

This patch broke the dartdoc step on the bots.
2016-05-01 14:58:40 -07:00
Devon Carew 9497fb56d4 Mega gallery (#3647)
* working on a large benchmark app

* build a 100k saple app

* print sizes of other libs; scale to 60k lines

* test the generated app on travis
2016-04-29 21:47:17 -07:00
Viktor Lidholt b314a7d9fa Adds NineSliceSprite and optimizes gallery front page (#3485)
* Adds NineSliceSprite and optimizes gallery front page
2016-04-21 17:16:16 -07:00
Ian Hickson 1b9476c4d9 Hide routes from the API when they're not needed. (#3431)
The 'routes' table is a point of confusion with new developers. By
providing a 'home' argument that sets the '/' route, we can delay the
point at which we teach developers about 'routes' until the point where
they want to have a second route.
2016-04-20 09:33:28 -07:00
Devon Carew 4678c12098 find all repo packages (#3368)
* find all repo packages

* .dartignore
2016-04-15 20:25:57 -07:00
Yegor 9ce995f65e [driver] refactor API to finder objects (#3365) 2016-04-15 16:57:35 -07:00
Adam Barth 7ab122e557 PopupMenuButton should lazily build menu items
Previously, the client of PopupMenuButton needed to build all the menu times

when building the PopupMenuButton. This can get expensive if, for example, each
item in a scrollable list has a popup menu associated with it.

Now the client passes a builder function to the PopupMenuButton that gets
invoked only when its time to show the menu items.
2016-04-06 13:28:09 -07:00
Adam Barth 618e7e4942 Adds a first draft of LazyBlock
LazyBlock is intended as a replacement for MixedViewport. Rather than

maintaining a table of all the observed child sizes (like

MixedViewport), LazyBlock works by dead reckoning the location of the

children based on the existing viewport. This approach makes it easier

to resize children because LazyBlock doesn't cache any additional

information that would need to be invalidated.



This patch contains a first draft of LazyBlock that works in a simple

usage scenario. Subsequent patches will replace

ScrollableMixedWidgetList with LazyBlock and port the existing

ScrollableMixedWidgetList tests over to LazyBlock.



Related to #3075
2016-04-05 14:13:31 -07:00
Yegor 19e624ccfe [driver] give the timeline data some structure
Fixes https://github.com/flutter/flutter/issues/2713
2016-04-04 17:07:16 -07:00
Viktor Lidholt 794b705133 Merge pull request #3052 from vlidholt/linedrawing
Initial version of complex layout performance test
2016-04-01 15:25:51 -07:00