mirror of
https://github.com/status-im/react-native.git
synced 2025-02-05 22:23:37 +00:00
JNI version is the default, its name should reflect that
Reviewed By: lucasr Differential Revision: D3992777 fbshipit-source-id: cdd4cc58f3c15b5db1158f6f794394eb5c44a44d
This commit is contained in:
parent
5c728a47b9
commit
6dae68306e
@ -17,7 +17,7 @@ import java.util.ArrayList;
|
||||
import com.facebook.proguard.annotations.DoNotStrip;
|
||||
import com.facebook.soloader.SoLoader;
|
||||
|
||||
public class CSSNodeJNI implements CSSNodeAPI<CSSNodeJNI> {
|
||||
public class CSSNode implements CSSNodeAPI<CSSNode> {
|
||||
|
||||
static {
|
||||
try {
|
||||
@ -29,8 +29,8 @@ public class CSSNodeJNI implements CSSNodeAPI<CSSNodeJNI> {
|
||||
}
|
||||
}
|
||||
|
||||
private CSSNodeJNI mParent;
|
||||
private List<CSSNodeJNI> mChildren;
|
||||
private CSSNode mParent;
|
||||
private List<CSSNode> mChildren;
|
||||
private MeasureFunction mMeasureFunction;
|
||||
private long mNativePointer;
|
||||
private Object mData;
|
||||
@ -60,10 +60,6 @@ public class CSSNodeJNI implements CSSNodeAPI<CSSNodeJNI> {
|
||||
throw new IllegalStateException("You should not reset an attached CSSNode");
|
||||
}
|
||||
|
||||
free();
|
||||
}
|
||||
|
||||
private void free() {
|
||||
jni_CSSNodeFree(mNativePointer);
|
||||
mNativePointer = 0;
|
||||
mChildren = null;
|
||||
@ -71,30 +67,19 @@ public class CSSNodeJNI implements CSSNodeAPI<CSSNodeJNI> {
|
||||
mMeasureFunction = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void finalize() throws Throwable {
|
||||
try {
|
||||
if (mNativePointer != 0) {
|
||||
free();
|
||||
}
|
||||
} finally {
|
||||
super.finalize();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getChildCount() {
|
||||
return mChildren.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public CSSNodeJNI getChildAt(int i) {
|
||||
public CSSNode getChildAt(int i) {
|
||||
return mChildren.get(i);
|
||||
}
|
||||
|
||||
private native void jni_CSSNodeInsertChild(long nativePointer, long childPointer, int index);
|
||||
@Override
|
||||
public void addChildAt(CSSNodeJNI child, int i) {
|
||||
public void addChildAt(CSSNode child, int i) {
|
||||
assertNativeInstance();
|
||||
if (child.mParent != null) {
|
||||
throw new IllegalStateException("Child already has a parent, it must be removed first.");
|
||||
@ -107,22 +92,23 @@ public class CSSNodeJNI implements CSSNodeAPI<CSSNodeJNI> {
|
||||
|
||||
private native void jni_CSSNodeRemoveChild(long nativePointer, long childPointer);
|
||||
@Override
|
||||
public CSSNodeJNI removeChildAt(int i) {
|
||||
public CSSNode removeChildAt(int i) {
|
||||
assertNativeInstance();
|
||||
|
||||
final CSSNodeJNI child = mChildren.remove(i);
|
||||
final CSSNode child = mChildren.remove(i);
|
||||
child.mParent = null;
|
||||
jni_CSSNodeRemoveChild(mNativePointer, child.mNativePointer);
|
||||
return child;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @Nullable CSSNodeJNI getParent() {
|
||||
public @Nullable
|
||||
CSSNode getParent() {
|
||||
return mParent;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int indexOf(CSSNodeJNI child) {
|
||||
public int indexOf(CSSNode child) {
|
||||
return mChildren.indexOf(child);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user