|
|
|
@@ -9,7 +9,6 @@
|
|
|
|
|
|
|
|
|
|
package com.facebook.react.flat;
|
|
|
|
|
|
|
|
|
|
import com.facebook.react.uimanager.UIViewOperationQueue;
|
|
|
|
|
import android.util.SparseIntArray;
|
|
|
|
|
import android.view.View;
|
|
|
|
|
import android.view.ViewGroup;
|
|
|
|
@@ -35,7 +34,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
private final FlatNativeViewHierarchyManager mNativeViewHierarchyManager;
|
|
|
|
|
private final ProcessLayoutRequests mProcessLayoutRequests = new ProcessLayoutRequests();
|
|
|
|
|
|
|
|
|
|
private final class ProcessLayoutRequests implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class ProcessLayoutRequests implements UIOperation {
|
|
|
|
|
@Override
|
|
|
|
|
public void execute() {
|
|
|
|
|
FlatViewGroup.processLayoutRequests();
|
|
|
|
@@ -45,7 +44,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
/**
|
|
|
|
|
* UIOperation that updates DrawCommands for a View defined by reactTag.
|
|
|
|
|
*/
|
|
|
|
|
private final class UpdateMountState implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class UpdateMountState implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final @Nullable DrawCommand[] mDrawCommands;
|
|
|
|
@@ -76,7 +75,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
/**
|
|
|
|
|
* UIOperation that updates DrawCommands for a View defined by reactTag.
|
|
|
|
|
*/
|
|
|
|
|
private final class UpdateClippingMountState implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class UpdateClippingMountState implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final @Nullable DrawCommand[] mDrawCommands;
|
|
|
|
@@ -128,7 +127,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final class UpdateViewGroup implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class UpdateViewGroup implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final int[] mViewsToAdd;
|
|
|
|
@@ -149,7 +148,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
/**
|
|
|
|
|
* UIOperation that updates View bounds for a View defined by reactTag.
|
|
|
|
|
*/
|
|
|
|
|
public final class UpdateViewBounds implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
public final class UpdateViewBounds implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final int mLeft;
|
|
|
|
@@ -171,7 +170,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final class SetPadding implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class SetPadding implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final int mPaddingLeft;
|
|
|
|
@@ -203,7 +202,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final class DropViews implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class DropViews implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final SparseIntArray mViewsToDrop;
|
|
|
|
|
|
|
|
|
@@ -221,7 +220,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final class MeasureVirtualView implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class MeasureVirtualView implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final float mScaledX;
|
|
|
|
@@ -285,7 +284,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public final class DetachAllChildrenFromViews implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
public final class DetachAllChildrenFromViews implements UIOperation {
|
|
|
|
|
private @Nullable int[] mViewsToDetachAllChildrenFrom;
|
|
|
|
|
|
|
|
|
|
public void setViewsToDetachAllChildrenFrom(int[] viewsToDetachAllChildrenFrom) {
|
|
|
|
@@ -298,7 +297,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final class FindTargetForTouchOperation implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
private final class FindTargetForTouchOperation implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final float mTargetX;
|
|
|
|
@@ -374,7 +373,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
* Used to delay view manager command dispatch until after the view hierarchy is updated.
|
|
|
|
|
* Mirrors command operation dispatch, but is only used in Nodes for view manager commands.
|
|
|
|
|
*/
|
|
|
|
|
public final class ViewManagerCommand implements UIViewOperationQueue.UIOperation {
|
|
|
|
|
public final class ViewManagerCommand implements UIOperation {
|
|
|
|
|
|
|
|
|
|
private final int mReactTag;
|
|
|
|
|
private final int mCommand;
|
|
|
|
@@ -469,7 +468,7 @@ import javax.annotation.Nullable;
|
|
|
|
|
return new ViewManagerCommand(reactTag, command, args);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* package */ void enqueueFlatUIOperation(UIViewOperationQueue.UIOperation operation) {
|
|
|
|
|
/* package */ void enqueueFlatUIOperation(UIOperation operation) {
|
|
|
|
|
enqueueUIOperation(operation);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|