Mengjue Wang 46c842c71a Fix CSSLayout to Support RTL
Summary:
@public The current CSSLayout can't support RTL because wrong calculation for absolute position.
This change is mainly to fix the issue: https://github.com/facebook/css-layout/issues/197
Three main problems I fixed:
1. Calculate the position in the same way as margin, boarder, and padding. So that to fix the absolute problem.
2. Fix one wrong calculation for leading value when we only know the trailing value. It was hard code for the LTR situation. Now I changed it to depends on the main Axis.
3. Expose getter and setter function for RN to read layout direction and start/end position value.

Reviewed By: fkgozali

Differential Revision: D3616949

fbshipit-source-id: ae7a47cc0a5d02b42b95f87232be51ab144056d9
2016-07-28 14:52:40 -07:00
2016-07-28 14:52:40 -07:00
2016-07-28 14:52:40 -07:00
2016-07-25 15:53:07 +01:00
2015-04-10 12:14:30 -07:00
2016-07-25 09:52:59 -07:00

CSSLayout Build Status

css-layout is currently in the process of big changes. If you are looking at using the latest stable version please have a look at the `deprecated` branch. This includes a js version and a C-sharp version not currently available on master.

CSSLayout is a cross platform implementation of the flexbox specification. CSSLayout targets native mobile development and is therefor disconnected from the web browser. CSSLayout is implemented in C for portability reasons and uses JNI to expose public methods to Java.

See CSSLayout/CSSLayout.h for a look at the public API being exposed.

Building

CSSLayout builds with buck (buckbuild.com). To build run buck build //:CSSLayout and run buck test //:CSSLayout to run the test suite.

Description
Yoga is an embeddable layout engine targeting web standards.
Readme MIT 37 MiB
Yoga 3.2.1 Latest
2024-12-12 17:41:47 -08:00
Languages
C++ 46.4%
Java 25.2%
TypeScript 23.1%
HTML 2.6%
JavaScript 1%
Other 1.6%