Compare commits
1 Commits
mateoguzma
...
export-D80
Author | SHA1 | Date | |
---|---|---|---|
|
9c4aa5dd52 |
@@ -83,8 +83,7 @@ publishing {
|
|||||||
afterEvaluate { from(components["default"]) }
|
afterEvaluate { from(components["default"]) }
|
||||||
pom {
|
pom {
|
||||||
description.set(
|
description.set(
|
||||||
"An embeddable and performant flexbox layout engine with bindings for multiple languages"
|
"An embeddable and performant flexbox layout engine with bindings for multiple languages")
|
||||||
)
|
|
||||||
name.set(project.name)
|
name.set(project.name)
|
||||||
url.set("https://github.com/facebook/yoga.git")
|
url.set("https://github.com/facebook/yoga.git")
|
||||||
licenses {
|
licenses {
|
||||||
|
62
java/com/facebook/yoga/YogaConfigJNIBase.java
Normal file
62
java/com/facebook/yoga/YogaConfigJNIBase.java
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
|
*
|
||||||
|
* This source code is licensed under the MIT license found in the
|
||||||
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.facebook.yoga;
|
||||||
|
|
||||||
|
public abstract class YogaConfigJNIBase extends YogaConfig {
|
||||||
|
|
||||||
|
long mNativePointer;
|
||||||
|
private YogaLogger mLogger;
|
||||||
|
|
||||||
|
private YogaConfigJNIBase(long nativePointer) {
|
||||||
|
if (nativePointer == 0) {
|
||||||
|
throw new IllegalStateException("Failed to allocate native memory");
|
||||||
|
}
|
||||||
|
mNativePointer = nativePointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
YogaConfigJNIBase() {
|
||||||
|
this(YogaNative.jni_YGConfigNewJNI());
|
||||||
|
}
|
||||||
|
|
||||||
|
YogaConfigJNIBase(boolean useVanillaJNI) {
|
||||||
|
this(YogaNative.jni_YGConfigNewJNI());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setExperimentalFeatureEnabled(YogaExperimentalFeature feature, boolean enabled) {
|
||||||
|
YogaNative.jni_YGConfigSetExperimentalFeatureEnabledJNI(mNativePointer, feature.intValue(), enabled);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUseWebDefaults(boolean useWebDefaults) {
|
||||||
|
YogaNative.jni_YGConfigSetUseWebDefaultsJNI(mNativePointer, useWebDefaults);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPointScaleFactor(float pixelsInPoint) {
|
||||||
|
YogaNative.jni_YGConfigSetPointScaleFactorJNI(mNativePointer, pixelsInPoint);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setErrata(YogaErrata errata) {
|
||||||
|
YogaNative.jni_YGConfigSetErrataJNI(mNativePointer, errata.intValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
public YogaErrata getErrata() {
|
||||||
|
return YogaErrata.fromInt(YogaNative.jni_YGConfigGetErrataJNI(mNativePointer));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLogger(YogaLogger logger) {
|
||||||
|
mLogger = logger;
|
||||||
|
YogaNative.jni_YGConfigSetLoggerJNI(mNativePointer, logger);
|
||||||
|
}
|
||||||
|
|
||||||
|
public YogaLogger getLogger() {
|
||||||
|
return mLogger;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected long getNativePointer() {
|
||||||
|
return mNativePointer;
|
||||||
|
}
|
||||||
|
}
|
@@ -1,61 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
||||||
*
|
|
||||||
* This source code is licensed under the MIT license found in the
|
|
||||||
* LICENSE file in the root directory of this source tree.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.facebook.yoga
|
|
||||||
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigGetErrataJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigNewJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigSetErrataJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigSetExperimentalFeatureEnabledJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigSetLoggerJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigSetPointScaleFactorJNI
|
|
||||||
import com.facebook.yoga.YogaNative.jni_YGConfigSetUseWebDefaultsJNI
|
|
||||||
|
|
||||||
public abstract class YogaConfigJNIBase
|
|
||||||
private constructor(@JvmField protected var nativePointer: Long) : YogaConfig() {
|
|
||||||
private var _logger: YogaLogger? = null
|
|
||||||
|
|
||||||
init {
|
|
||||||
check(nativePointer != 0L) { "Failed to allocate native memory" }
|
|
||||||
}
|
|
||||||
|
|
||||||
internal constructor() : this(jni_YGConfigNewJNI())
|
|
||||||
|
|
||||||
internal constructor(useVanillaJNI: Boolean) : this(jni_YGConfigNewJNI())
|
|
||||||
|
|
||||||
public override fun setExperimentalFeatureEnabled(
|
|
||||||
feature: YogaExperimentalFeature,
|
|
||||||
enabled: Boolean
|
|
||||||
) {
|
|
||||||
YogaNative.jni_YGConfigSetExperimentalFeatureEnabledJNI(
|
|
||||||
nativePointer, feature.intValue(), enabled)
|
|
||||||
}
|
|
||||||
|
|
||||||
public override fun setUseWebDefaults(useWebDefaults: Boolean) {
|
|
||||||
YogaNative.jni_YGConfigSetUseWebDefaultsJNI(nativePointer, useWebDefaults)
|
|
||||||
}
|
|
||||||
|
|
||||||
public override fun setPointScaleFactor(pixelsInPoint: Float) {
|
|
||||||
YogaNative.jni_YGConfigSetPointScaleFactorJNI(nativePointer, pixelsInPoint)
|
|
||||||
}
|
|
||||||
|
|
||||||
public override fun setErrata(errata: YogaErrata) {
|
|
||||||
YogaNative.jni_YGConfigSetErrataJNI(nativePointer, errata.intValue())
|
|
||||||
}
|
|
||||||
|
|
||||||
public override fun getErrata(): YogaErrata =
|
|
||||||
YogaErrata.fromInt(YogaNative.jni_YGConfigGetErrataJNI(nativePointer))
|
|
||||||
|
|
||||||
public override fun setLogger(logger: YogaLogger) {
|
|
||||||
_logger = logger
|
|
||||||
YogaNative.jni_YGConfigSetLoggerJNI(nativePointer, logger)
|
|
||||||
}
|
|
||||||
|
|
||||||
public override fun getLogger(): YogaLogger = checkNotNull(_logger) { "YogaLogger is not set" }
|
|
||||||
|
|
||||||
public override fun getNativePointer(): Long = nativePointer
|
|
||||||
}
|
|
@@ -22,10 +22,10 @@ public class YogaConfigJNIFinalizer extends YogaConfigJNIBase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void freeNatives() {
|
public void freeNatives() {
|
||||||
if (nativePointer != 0) {
|
if (mNativePointer != 0) {
|
||||||
long pointer = nativePointer;
|
long nativePointer = mNativePointer;
|
||||||
nativePointer = 0;
|
mNativePointer = 0;
|
||||||
YogaNative.jni_YGConfigFreeJNI(pointer);
|
YogaNative.jni_YGConfigFreeJNI(nativePointer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -57,7 +57,7 @@ public abstract class YogaNodeJNIBase extends YogaNode implements Cloneable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
YogaNodeJNIBase(YogaConfig config) {
|
YogaNodeJNIBase(YogaConfig config) {
|
||||||
this(YogaNative.jni_YGNodeNewWithConfigJNI(((YogaConfigJNIBase) config).nativePointer));
|
this(YogaNative.jni_YGNodeNewWithConfigJNI(((YogaConfigJNIBase) config).mNativePointer));
|
||||||
mConfig = config; // makes sure the YogaConfig is not garbage collected
|
mConfig = config; // makes sure the YogaConfig is not garbage collected
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user