53 Commits

Author SHA1 Message Date
Adam Barth
4408c820e1 Rename AutoLayoutParams to AutoLayoutRect
This object represents a rect the auto-layout system.
2016-02-15 16:29:27 -08:00
Adam Barth
c7d71d8ab1 Simplify the AutoLayout API
This patch makes it easier to use the auto layout API:

* We no longer use operator== because that requires an ugly cast by the
  API user.
* Also, "leftEdge" is now just "left" for less verbosity.
* AutoLayoutChild not implies its key from the AutoLayoutParam object.
* We now correctly layout every child of a RenderAutoLayout object even
  if the solver doesn't flush any updates to that child.
2016-02-15 15:25:21 -08:00
Ian Hickson
5494323db9 Move us to HashSet to avoid the overhead of tracking the order 2016-01-23 18:13:13 -08:00
Ian Hickson
9eb978443b Prepare flutter analyze for dart 1.14 2016-01-16 11:28:13 -08:00
Eric Seidel
1bde1e7939 Generate docs for more of our packages
I also stopped pushing docs to domokit.org I presume we
were doing that to not break old links.  @abarth

@sethladd
2015-12-18 08:52:05 -08:00
Ian Hickson
7151fdd054 Move flutter tests from packages/unit to packages/flutter/test 2015-12-16 08:00:57 -08:00
Jason Simmons
cb6eef70e8 Upgrade the test package (needed by the latest mojo roll) 2015-12-10 16:25:12 -08:00
Adam Barth
f41869f639 Update package:test to the latest version 2015-11-30 18:41:10 -08:00
Adam Barth
58f056da68 Pin package:test to an exact revision
We use a number of non-public APIs in the test package, which makes our
dependency quite fragile. This patch pins a specific, known-good version. We
should update to the lastest version in a follow-up patch.
2015-11-24 09:22:11 -08:00
Hixie
a0227cab15 flutter analyze command
Other changes in this patch:
- Make the 'flutter' tool say "Updating flutter tool..." when it calls
  pub get, to avoid confusion about what the pub get output is about.
- Make the bash flutter tool call pub get when the revision has
  changed. (This was already happening on Windows.)
- Fix a raft of bugs found by the analyzer.
- Fix some style nits in various bits of code that happened to be near
  things the analyzer noticed.
- Remove the logic in "flutter test" that would run "pub get", since
  upon further reflexion it was determined it didn't work anyway.
  We'll probably have to add better diagnostics here and say to run the
  updater script.
- Remove the native velocity tracker script, since it was testing code
  that has since been removed.

Notes on ignored warnings:
- We ignore warnings in any packages that are not in the Flutter repo or
  in the author's current directory.
- We ignore various irrelevant Strong Mode warnings. We still enable
  strong mode because even though it's not really relevant to our needs,
  it does (more or less accidentally) catch a few things that are
  helpful to us.
- We allow CONSTANTS_LIKE_THIS, since we get some of those from other
  platforms that we are copying for sanity and consistency.
- We allow one-member abstract classes since we have a number of them
  where it's perfectly reasonable.
- We unfortunately still ignore warnings in mojom.dart autogenerated
  files. We should really fix those but that's a separate patch.
- We verify the actual source file when we see the 'Name non-constant
  identifiers using lowerCamelCase.' lint, to allow one-letter variables
  that use capital letters (e.g. for physics expressions) and to allow
  multiple-underscore variable names.
- We ignore all errors on lines that contain the following magic
  incantation and a "#" character:
    // analyzer doesn't like constructor tear-offs
- For all remaining errors, if the line contains a comment of the form
    // analyzer says "..."
  ...then we ignore any errors that have that "..." string in them.
2015-11-12 12:23:29 -08:00
Adam Barth
21579a9d25 Add a missing README and a .gitignore file 2015-11-02 22:25:49 -08:00
Adam Barth
c7dfbc0451 Merge branch 'cassowary' 2015-11-02 22:10:41 -08:00
Adam Barth
6fea7f5871 Start building the repository structure 2015-11-02 22:00:11 -08:00
Chinmay Garde
d29a0b526b Address initial code review concerns 2015-07-08 16:40:51 -07:00
Chinmay Garde
99dc91eb36 Add bulk remove options 2015-07-08 12:38:22 -07:00
Chinmay Garde
e933565993 Add bulk edit update options to the solver 2015-07-08 10:39:17 -07:00
Chinmay Garde
149a2ca1f8 Get rid of the return type decl on the equality operator override on EquationMember 2015-07-08 10:38:42 -07:00
Chinmay Garde
e0f38529ed == operator override on expression returns a constraint 2015-07-07 13:19:36 -07:00
Chinmay Garde
1ad945f897 Make the constant member value final 2015-07-01 12:26:46 -07:00
Chinmay Garde
a223491d00 Equality override on equation member returns a constraint 2015-07-01 12:26:33 -07:00
Chinmay Garde
e66e88834e Parameter contexts are non-final 2015-06-30 16:49:15 -07:00
Chinmay Garde
704d0174e0 Solver.flush update returns the set of context associated with parameters in play 2015-06-30 14:05:52 -07:00
Chinmay Garde
4568b088e0 Solver.flushParameterUpdates returns the a collection of updated parameters 2015-06-29 15:51:29 -07:00
Chinmay Garde
df2eb202cc Minor: A slightly more contrived test case to verify contraint priorities 2015-06-26 12:21:06 -07:00
Chinmay Garde
e65fd76ead Since params are usually created to be edited later, make the initial value optional 2015-06-26 12:20:02 -07:00
Chinmay Garde
eedbb4f167 Add a simple test for the toString() override so that the coverage
tool is not sad
2015-06-25 18:13:56 -07:00
Chinmay Garde
d8d07a31dd Add tests edit constraints 2015-06-25 17:28:00 -07:00
Chinmay Garde
97cd09d2a1 Avoid adding implicit constraints for edit variables at required priority 2015-06-25 17:27:42 -07:00
Chinmay Garde
49d14caa69 Make the midpoints test pass. Fixes incorrect Row.reverseSign 2015-06-25 17:07:15 -07:00
Chinmay Garde
20908034d5 Make constraint priority setup more expressive 2015-06-25 16:24:21 -07:00
Chinmay Garde
2f3e5aa70b Add toString() overrides to internal solver members 2015-06-25 14:30:37 -07:00
Chinmay Garde
9d075adabb Minor: Add tests to check for addition of multiple constraints 2015-06-25 12:20:10 -07:00
Chinmay Garde
a029c93ed1 Remove the << overload on solver. Operator precendence rules made it awkward to use anyway 2015-06-25 12:11:00 -07:00
Chinmay Garde
882a17f75b Minor: Add more tests 2015-06-25 11:45:47 -07:00
Chinmay Garde
8be3c640cc Minor: Refactor -> Rename internal private methods in the solver 2015-06-25 10:25:33 -07:00
Chinmay Garde
7dcd8115c3 Avoid exposing internal classes from the cassowary library 2015-06-24 18:18:58 -07:00
Chinmay Garde
891085b74b Allow updating external variables from the solver 2015-06-24 18:03:21 -07:00
Chinmay Garde
d4a67499e9 Implement Solver.suggestValue 2015-06-24 17:53:41 -07:00
Chinmay Garde
436f272a09 Avoid using variables as equation members 2015-06-24 16:48:02 -07:00
Chinmay Garde
9ea8abd5af Allow constraint creation from multiplication and division when at least one argument is a constant expression 2015-06-24 14:52:46 -07:00
Chinmay Garde
5137e03c9d Add support for updating edits 2015-06-24 13:23:31 -07:00
Chinmay Garde
8187c6852b Allow removal of constraints from the solver 2015-06-24 12:41:54 -07:00
Chinmay Garde
9beb286180 Account for the result of optimization when adding constraints 2015-06-23 18:07:56 -07:00
Chinmay Garde
b78b35d723 Implement addition of constraints to the solver 2015-06-23 18:01:17 -07:00
Chinmay Garde
af67d08746 Minor: Add result types for known failure cases 2015-06-23 13:58:44 -07:00
Chinmay Garde
530700a8c1 Implement row.dart and some other minor utility methods 2015-06-23 13:22:48 -07:00
Chinmay Garde
306c795c21 Minor: Add stubs for the symbol and solver 2015-06-23 09:50:52 -07:00
Chinmay Garde
e788fe538f Minor: Match style guide 2015-06-22 15:07:02 -07:00
Chinmay Garde
7eb8322315 Dry up multiplication and division of equation members 2015-06-22 15:02:31 -07:00
Chinmay Garde
5288d466ab Dry up incremental expression construction from constants, variable, terms and other expressions 2015-06-22 14:39:55 -07:00