move setStyleInputs to vanilla jni (YogaStyleProperties Part 5)
Summary: Move Yoga style properties to vanilla JNI under a flag. Reviewed By: amir-shalem Differential Revision: D17686117 fbshipit-source-id: e79bee1188c24e301b23416486b10f613434eebc
This commit is contained in:
committed by
Facebook Github Bot
parent
ee73f556b4
commit
7c2683fe52
@@ -664,6 +664,9 @@ public abstract class YogaNodeJNIBase extends YogaNode implements Cloneable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setStyleInputs(float[] styleInputsArray, int size) {
|
public void setStyleInputs(float[] styleInputsArray, int size) {
|
||||||
|
if (useVanillaJNI)
|
||||||
|
YogaNative.jni_YGNodeSetStyleInputsJNI(mNativePointer, styleInputsArray, size);
|
||||||
|
else
|
||||||
YogaNative.jni_YGNodeSetStyleInputs(mNativePointer, styleInputsArray, size);
|
YogaNative.jni_YGNodeSetStyleInputs(mNativePointer, styleInputsArray, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -22,49 +22,6 @@ using namespace facebook::jni;
|
|||||||
using namespace std;
|
using namespace std;
|
||||||
using facebook::yoga::detail::Log;
|
using facebook::yoga::detail::Log;
|
||||||
|
|
||||||
enum YGStyleInput {
|
|
||||||
LayoutDirection,
|
|
||||||
FlexDirection,
|
|
||||||
Flex,
|
|
||||||
FlexGrow,
|
|
||||||
FlexShrink,
|
|
||||||
FlexBasis,
|
|
||||||
FlexBasisPercent,
|
|
||||||
FlexBasisAuto,
|
|
||||||
FlexWrap,
|
|
||||||
Width,
|
|
||||||
WidthPercent,
|
|
||||||
WidthAuto,
|
|
||||||
MinWidth,
|
|
||||||
MinWidthPercent,
|
|
||||||
MaxWidth,
|
|
||||||
MaxWidthPercent,
|
|
||||||
Height,
|
|
||||||
HeightPercent,
|
|
||||||
HeightAuto,
|
|
||||||
MinHeight,
|
|
||||||
MinHeightPercent,
|
|
||||||
MaxHeight,
|
|
||||||
MaxHeightPercent,
|
|
||||||
JustifyContent,
|
|
||||||
AlignItems,
|
|
||||||
AlignSelf,
|
|
||||||
AlignContent,
|
|
||||||
PositionType,
|
|
||||||
AspectRatio,
|
|
||||||
Overflow,
|
|
||||||
Display,
|
|
||||||
Margin,
|
|
||||||
MarginPercent,
|
|
||||||
MarginAuto,
|
|
||||||
Padding,
|
|
||||||
PaddingPercent,
|
|
||||||
Border,
|
|
||||||
Position,
|
|
||||||
PositionPercent,
|
|
||||||
IsReferenceBaseline,
|
|
||||||
};
|
|
||||||
|
|
||||||
const short int LAYOUT_EDGE_SET_FLAG_INDEX = 0;
|
const short int LAYOUT_EDGE_SET_FLAG_INDEX = 0;
|
||||||
const short int LAYOUT_WIDTH_INDEX = 1;
|
const short int LAYOUT_WIDTH_INDEX = 1;
|
||||||
const short int LAYOUT_HEIGHT_INDEX = 2;
|
const short int LAYOUT_HEIGHT_INDEX = 2;
|
||||||
@@ -589,174 +546,6 @@ void jni_YGConfigSetLogger(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void YGNodeSetStyleInputs(
|
|
||||||
const YGNodeRef node,
|
|
||||||
float* styleInputs,
|
|
||||||
int size) {
|
|
||||||
const auto end = styleInputs + size;
|
|
||||||
auto edgesSet = YGNodeEdges{node};
|
|
||||||
while (styleInputs < end) {
|
|
||||||
auto styleInputKey = static_cast<YGStyleInput>((int) *styleInputs++);
|
|
||||||
switch (styleInputKey) {
|
|
||||||
case LayoutDirection:
|
|
||||||
YGNodeStyleSetDirection(node, static_cast<YGDirection>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case FlexDirection:
|
|
||||||
YGNodeStyleSetFlexDirection(
|
|
||||||
node, static_cast<YGFlexDirection>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case Flex:
|
|
||||||
YGNodeStyleSetFlex(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case FlexGrow:
|
|
||||||
YGNodeStyleSetFlexGrow(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case FlexShrink:
|
|
||||||
YGNodeStyleSetFlexShrink(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case FlexBasis:
|
|
||||||
YGNodeStyleSetFlexBasis(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case FlexBasisPercent:
|
|
||||||
YGNodeStyleSetFlexBasisPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case FlexBasisAuto:
|
|
||||||
YGNodeStyleSetFlexBasisAuto(node);
|
|
||||||
break;
|
|
||||||
case FlexWrap:
|
|
||||||
YGNodeStyleSetFlexWrap(node, static_cast<YGWrap>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case Width:
|
|
||||||
YGNodeStyleSetWidth(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case WidthPercent:
|
|
||||||
YGNodeStyleSetWidthPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case WidthAuto:
|
|
||||||
YGNodeStyleSetWidthAuto(node);
|
|
||||||
break;
|
|
||||||
case MinWidth:
|
|
||||||
YGNodeStyleSetMinWidth(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MinWidthPercent:
|
|
||||||
YGNodeStyleSetMinWidthPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MaxWidth:
|
|
||||||
YGNodeStyleSetMaxWidth(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MaxWidthPercent:
|
|
||||||
YGNodeStyleSetMaxWidthPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case Height:
|
|
||||||
YGNodeStyleSetHeight(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case HeightPercent:
|
|
||||||
YGNodeStyleSetHeightPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case HeightAuto:
|
|
||||||
YGNodeStyleSetHeightAuto(node);
|
|
||||||
break;
|
|
||||||
case MinHeight:
|
|
||||||
YGNodeStyleSetMinHeight(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MinHeightPercent:
|
|
||||||
YGNodeStyleSetMinHeightPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MaxHeight:
|
|
||||||
YGNodeStyleSetMaxHeight(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case MaxHeightPercent:
|
|
||||||
YGNodeStyleSetMaxHeightPercent(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case JustifyContent:
|
|
||||||
YGNodeStyleSetJustifyContent(
|
|
||||||
node, static_cast<YGJustify>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case AlignItems:
|
|
||||||
YGNodeStyleSetAlignItems(node, static_cast<YGAlign>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case AlignSelf:
|
|
||||||
YGNodeStyleSetAlignSelf(node, static_cast<YGAlign>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case AlignContent:
|
|
||||||
YGNodeStyleSetAlignContent(node, static_cast<YGAlign>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case PositionType:
|
|
||||||
YGNodeStyleSetPositionType(
|
|
||||||
node, static_cast<YGPositionType>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case AspectRatio:
|
|
||||||
YGNodeStyleSetAspectRatio(node, *styleInputs++);
|
|
||||||
break;
|
|
||||||
case Overflow:
|
|
||||||
YGNodeStyleSetOverflow(node, static_cast<YGOverflow>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case Display:
|
|
||||||
YGNodeStyleSetDisplay(node, static_cast<YGDisplay>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
case Margin: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float marginValue = *styleInputs++;
|
|
||||||
edgesSet.add(YGNodeEdges::MARGIN);
|
|
||||||
YGNodeStyleSetMargin(node, edge, marginValue);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case MarginPercent: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float marginPercent = *styleInputs++;
|
|
||||||
edgesSet.add(YGNodeEdges::MARGIN);
|
|
||||||
YGNodeStyleSetMarginPercent(node, edge, marginPercent);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case MarginAuto: {
|
|
||||||
edgesSet.add(YGNodeEdges::MARGIN);
|
|
||||||
YGNodeStyleSetMarginAuto(node, static_cast<YGEdge>(*styleInputs++));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case Padding: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float paddingValue = *styleInputs++;
|
|
||||||
edgesSet.add(YGNodeEdges::PADDING);
|
|
||||||
YGNodeStyleSetPadding(node, edge, paddingValue);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case PaddingPercent: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float paddingPercent = *styleInputs++;
|
|
||||||
edgesSet.add(YGNodeEdges::PADDING);
|
|
||||||
YGNodeStyleSetPaddingPercent(node, edge, paddingPercent);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case Border: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float borderValue = *styleInputs++;
|
|
||||||
edgesSet.add(YGNodeEdges::BORDER);
|
|
||||||
YGNodeStyleSetBorder(node, edge, borderValue);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case Position: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float positionValue = *styleInputs++;
|
|
||||||
YGNodeStyleSetPosition(node, edge, positionValue);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case PositionPercent: {
|
|
||||||
auto edge = static_cast<YGEdge>(*styleInputs++);
|
|
||||||
float positionPercent = *styleInputs++;
|
|
||||||
YGNodeStyleSetPositionPercent(node, edge, positionPercent);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case IsReferenceBaseline: {
|
|
||||||
YGNodeSetIsReferenceBaseline(node, *styleInputs++ == 1 ? true : false);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
edgesSet.setOn(node);
|
|
||||||
}
|
|
||||||
|
|
||||||
void jni_YGNodeSetStyleInputs(
|
void jni_YGNodeSetStyleInputs(
|
||||||
alias_ref<jclass>,
|
alias_ref<jclass>,
|
||||||
jlong nativePointer,
|
jlong nativePointer,
|
||||||
|
211
java/jni/YGJNI.h
211
java/jni/YGJNI.h
@@ -4,6 +4,49 @@
|
|||||||
* This source code is licensed under the MIT license found in the LICENSE
|
* This source code is licensed under the MIT license found in the LICENSE
|
||||||
* file in the root directory of this source tree.
|
* file in the root directory of this source tree.
|
||||||
*/
|
*/
|
||||||
|
enum YGStyleInput {
|
||||||
|
LayoutDirection,
|
||||||
|
FlexDirection,
|
||||||
|
Flex,
|
||||||
|
FlexGrow,
|
||||||
|
FlexShrink,
|
||||||
|
FlexBasis,
|
||||||
|
FlexBasisPercent,
|
||||||
|
FlexBasisAuto,
|
||||||
|
FlexWrap,
|
||||||
|
Width,
|
||||||
|
WidthPercent,
|
||||||
|
WidthAuto,
|
||||||
|
MinWidth,
|
||||||
|
MinWidthPercent,
|
||||||
|
MaxWidth,
|
||||||
|
MaxWidthPercent,
|
||||||
|
Height,
|
||||||
|
HeightPercent,
|
||||||
|
HeightAuto,
|
||||||
|
MinHeight,
|
||||||
|
MinHeightPercent,
|
||||||
|
MaxHeight,
|
||||||
|
MaxHeightPercent,
|
||||||
|
JustifyContent,
|
||||||
|
AlignItems,
|
||||||
|
AlignSelf,
|
||||||
|
AlignContent,
|
||||||
|
PositionType,
|
||||||
|
AspectRatio,
|
||||||
|
Overflow,
|
||||||
|
Display,
|
||||||
|
Margin,
|
||||||
|
MarginPercent,
|
||||||
|
MarginAuto,
|
||||||
|
Padding,
|
||||||
|
PaddingPercent,
|
||||||
|
Border,
|
||||||
|
Position,
|
||||||
|
PositionPercent,
|
||||||
|
IsReferenceBaseline,
|
||||||
|
};
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
union YGNodeContext {
|
union YGNodeContext {
|
||||||
@@ -56,3 +99,171 @@ struct YogaValue {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
|
static void YGNodeSetStyleInputs(
|
||||||
|
const YGNodeRef node,
|
||||||
|
float* styleInputs,
|
||||||
|
int size) {
|
||||||
|
const auto end = styleInputs + size;
|
||||||
|
auto edgesSet = YGNodeEdges{node};
|
||||||
|
while (styleInputs < end) {
|
||||||
|
auto styleInputKey = static_cast<YGStyleInput>((int) *styleInputs++);
|
||||||
|
switch (styleInputKey) {
|
||||||
|
case LayoutDirection:
|
||||||
|
YGNodeStyleSetDirection(node, static_cast<YGDirection>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case FlexDirection:
|
||||||
|
YGNodeStyleSetFlexDirection(
|
||||||
|
node, static_cast<YGFlexDirection>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case Flex:
|
||||||
|
YGNodeStyleSetFlex(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case FlexGrow:
|
||||||
|
YGNodeStyleSetFlexGrow(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case FlexShrink:
|
||||||
|
YGNodeStyleSetFlexShrink(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case FlexBasis:
|
||||||
|
YGNodeStyleSetFlexBasis(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case FlexBasisPercent:
|
||||||
|
YGNodeStyleSetFlexBasisPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case FlexBasisAuto:
|
||||||
|
YGNodeStyleSetFlexBasisAuto(node);
|
||||||
|
break;
|
||||||
|
case FlexWrap:
|
||||||
|
YGNodeStyleSetFlexWrap(node, static_cast<YGWrap>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case Width:
|
||||||
|
YGNodeStyleSetWidth(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case WidthPercent:
|
||||||
|
YGNodeStyleSetWidthPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case WidthAuto:
|
||||||
|
YGNodeStyleSetWidthAuto(node);
|
||||||
|
break;
|
||||||
|
case MinWidth:
|
||||||
|
YGNodeStyleSetMinWidth(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MinWidthPercent:
|
||||||
|
YGNodeStyleSetMinWidthPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MaxWidth:
|
||||||
|
YGNodeStyleSetMaxWidth(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MaxWidthPercent:
|
||||||
|
YGNodeStyleSetMaxWidthPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case Height:
|
||||||
|
YGNodeStyleSetHeight(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case HeightPercent:
|
||||||
|
YGNodeStyleSetHeightPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case HeightAuto:
|
||||||
|
YGNodeStyleSetHeightAuto(node);
|
||||||
|
break;
|
||||||
|
case MinHeight:
|
||||||
|
YGNodeStyleSetMinHeight(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MinHeightPercent:
|
||||||
|
YGNodeStyleSetMinHeightPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MaxHeight:
|
||||||
|
YGNodeStyleSetMaxHeight(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case MaxHeightPercent:
|
||||||
|
YGNodeStyleSetMaxHeightPercent(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case JustifyContent:
|
||||||
|
YGNodeStyleSetJustifyContent(
|
||||||
|
node, static_cast<YGJustify>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case AlignItems:
|
||||||
|
YGNodeStyleSetAlignItems(node, static_cast<YGAlign>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case AlignSelf:
|
||||||
|
YGNodeStyleSetAlignSelf(node, static_cast<YGAlign>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case AlignContent:
|
||||||
|
YGNodeStyleSetAlignContent(node, static_cast<YGAlign>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case PositionType:
|
||||||
|
YGNodeStyleSetPositionType(
|
||||||
|
node, static_cast<YGPositionType>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case AspectRatio:
|
||||||
|
YGNodeStyleSetAspectRatio(node, *styleInputs++);
|
||||||
|
break;
|
||||||
|
case Overflow:
|
||||||
|
YGNodeStyleSetOverflow(node, static_cast<YGOverflow>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case Display:
|
||||||
|
YGNodeStyleSetDisplay(node, static_cast<YGDisplay>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
case Margin: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float marginValue = *styleInputs++;
|
||||||
|
edgesSet.add(YGNodeEdges::MARGIN);
|
||||||
|
YGNodeStyleSetMargin(node, edge, marginValue);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case MarginPercent: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float marginPercent = *styleInputs++;
|
||||||
|
edgesSet.add(YGNodeEdges::MARGIN);
|
||||||
|
YGNodeStyleSetMarginPercent(node, edge, marginPercent);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case MarginAuto: {
|
||||||
|
edgesSet.add(YGNodeEdges::MARGIN);
|
||||||
|
YGNodeStyleSetMarginAuto(node, static_cast<YGEdge>(*styleInputs++));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case Padding: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float paddingValue = *styleInputs++;
|
||||||
|
edgesSet.add(YGNodeEdges::PADDING);
|
||||||
|
YGNodeStyleSetPadding(node, edge, paddingValue);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case PaddingPercent: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float paddingPercent = *styleInputs++;
|
||||||
|
edgesSet.add(YGNodeEdges::PADDING);
|
||||||
|
YGNodeStyleSetPaddingPercent(node, edge, paddingPercent);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case Border: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float borderValue = *styleInputs++;
|
||||||
|
edgesSet.add(YGNodeEdges::BORDER);
|
||||||
|
YGNodeStyleSetBorder(node, edge, borderValue);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case Position: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float positionValue = *styleInputs++;
|
||||||
|
YGNodeStyleSetPosition(node, edge, positionValue);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case PositionPercent: {
|
||||||
|
auto edge = static_cast<YGEdge>(*styleInputs++);
|
||||||
|
float positionPercent = *styleInputs++;
|
||||||
|
YGNodeStyleSetPositionPercent(node, edge, positionPercent);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case IsReferenceBaseline: {
|
||||||
|
YGNodeSetIsReferenceBaseline(node, *styleInputs++ == 1 ? true : false);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
edgesSet.setOn(node);
|
||||||
|
}
|
||||||
|
@@ -396,6 +396,17 @@ static jlong jni_YGNodeCloneJNI(JNIEnv* env, jobject obj, jlong nativePointer) {
|
|||||||
// Yoga specific properties, not compatible with flexbox specification
|
// Yoga specific properties, not compatible with flexbox specification
|
||||||
YG_NODE_JNI_STYLE_PROP(jfloat, float, AspectRatio);
|
YG_NODE_JNI_STYLE_PROP(jfloat, float, AspectRatio);
|
||||||
|
|
||||||
|
static void jni_YGNodeSetStyleInputsJNI(
|
||||||
|
JNIEnv* env,
|
||||||
|
jobject obj,
|
||||||
|
jlong nativePointer,
|
||||||
|
jfloatArray styleInputs,
|
||||||
|
jint size) {
|
||||||
|
float result[size];
|
||||||
|
env->GetFloatArrayRegion(styleInputs, 0, size, result);
|
||||||
|
YGNodeSetStyleInputs(_jlong2YGNodeRef(nativePointer), result, size);
|
||||||
|
}
|
||||||
|
|
||||||
void assertNoPendingJniException(JNIEnv* env) {
|
void assertNoPendingJniException(JNIEnv* env) {
|
||||||
// This method cannot call any other method of the library, since other
|
// This method cannot call any other method of the library, since other
|
||||||
// methods of the library use it to check for exceptions too
|
// methods of the library use it to check for exceptions too
|
||||||
@@ -642,6 +653,9 @@ static JNINativeMethod methods[] = {
|
|||||||
"(JF)V",
|
"(JF)V",
|
||||||
(void*) jni_YGNodeStyleSetAspectRatioJNI},
|
(void*) jni_YGNodeStyleSetAspectRatioJNI},
|
||||||
{"jni_YGNodePrintJNI", "(J)V", (void*) jni_YGNodePrintJNI},
|
{"jni_YGNodePrintJNI", "(J)V", (void*) jni_YGNodePrintJNI},
|
||||||
|
{"jni_YGNodeSetStyleInputsJNI",
|
||||||
|
"(J[FI)V",
|
||||||
|
(void*) jni_YGNodeSetStyleInputsJNI},
|
||||||
{"jni_YGNodeCloneJNI", "(J)J", (void*) jni_YGNodeCloneJNI},
|
{"jni_YGNodeCloneJNI", "(J)J", (void*) jni_YGNodeCloneJNI},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user