Commit Graph

21 Commits

Author SHA1 Message Date
Lucas Rocha
1ab785b7a3 Inline immutable values in layout algorithm
Store immutable values from the node being laid out to avoid unnecessary
method invocations during layout calculation. This gives us a 3%-5%
performance boost in my benchmarks on Android.
2015-09-08 15:15:52 +01:00
Lucas Rocha
06c708053f Change Java to use array indexes instead of methods
Method invocations are not entirely free on Android. Change the
generated Java code to use the same array-based approach used in
JS and C to compute dimensions, positions, etc instead of relying
too heavily on method invovations. As a bonus, the Java transpiler
becomes a lot simpler because the code is more analogous to the C
counterpart.

In my local benchmarks this change gives us a major performance
boost on Android (between 15% and 30%) depending on the device
and the runtime (Dalvik|Art).
2015-09-08 15:15:46 +01:00
Colin Eberhardt
401f473449 Added eslint to the build
Fixes #102
2015-08-11 16:52:57 +01:00
Lucas Rocha
524b44200a Expose the resolved direction in the node's layout 2015-05-20 11:35:01 +01:00
Pierre Renaux
019fc9b88c Merge remote-tracking branch 'upstream/master' 2015-05-17 21:54:30 +08:00
Lucas Rocha
03dfe7bb17 Implement (padding|border|margin)-(start|end) support 2015-05-14 17:43:33 +01:00
Felix Oghină
bb8fdf57eb [java] implement proper spacing objects, with support for default spacing 2015-05-14 13:59:13 +01:00
Lucas Rocha
36a46673f9 Support ROW_REVERSE, COLUMN_REVERSE and RTL direction 2015-05-11 11:24:21 +01:00
Pierre Renaux
998fa1d6ba [Issue facebook/css-layout#78]: Implemented alignContent ; 2015-05-10 00:19:27 +08:00
Russell Keith-Magee
c523b7c404 Added support for min/max width and height constraints. 2015-03-31 17:32:54 +08:00
Tom Mulcahy
ddd7a899ac Make Java measure thread-safe. 2015-03-26 22:49:48 +00:00
daviskoh
3a6e50db99 Address eslint errors:
* modify .eslintrc w/ globals & rules
* use judgement in deciding bet proj style & eslint recommendation
* make
2015-02-17 21:12:29 -05:00
daviskoh
cf9b841e33 Fix jshint issues
* add .jshintrc
* address semicolon errors
* ignore 'already defined' errors
2015-02-05 19:49:55 -05:00
Krzysztof Magiera
e1969bda05 Couple of major improvements for Java version.
Including:
 - Extracting spacing logic into a Spacing class
 - Fix layout update issue
 - Add null assertions support
2015-01-19 13:09:32 +00:00
Christopher Chedeau
10fb645777 Initial implementation of flexWrap 2014-12-12 12:03:31 +00:00
Christopher Chedeau
28243156e4 make C and Java tests pass and update their code 2014-12-11 20:23:53 +00:00
Krzysztof Magiera
fbd14263f9 Move isUndefined check to CSSConstants in java code 2014-12-02 22:30:44 +00:00
Felix Oghină
8903bb15c6 Add support for paddingVertical, paddingHorizontal, borderVertical, borderHorizontal
* implement padding & border as arrays of values
* apply padding & border with the correct priority (e.g. left, horizontal, all)
* update transpiler & tests
2014-11-20 17:59:40 +00:00
Felix Oghină
6ee0c5817c Add support for marginVertical and marginHorizontal
* implement margin as an array of values
* apply margins with the correct priority (e.g. left, horizontal, all)
* update transpiler & tests
2014-11-20 17:28:54 +00:00
Christopher Chedeau
c2aa92cd0b Add licenses and remove third party libraries 2014-10-29 08:01:22 -07:00
Andy Street
6d93c20610 Java 2014-10-07 16:22:27 -07:00