mark update seen when child is drawn

This commit is contained in:
Horcrux
2016-11-08 23:10:15 +08:00
parent 7c6407e622
commit c06f28e951
10 changed files with 3 additions and 31 deletions
@@ -14,7 +14,6 @@ import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.Point;
import android.view.View;
import com.facebook.react.bridge.ReadableArray;
@@ -14,8 +14,6 @@ import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.Point;
import android.view.View;
import android.view.ViewGroup;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.uimanager.ReactShadowNode;
@@ -44,6 +42,7 @@ public class RNSVGGroupShadowNode extends RNSVGPathShadowNode {
child.mergeProperties(this, mOwnedPropList, true);
child.draw(canvas, paint, opacity * mOpacity);
child.markUpdateSeen();
if (child.isResponsible()) {
svg.enableTouchEvents();
@@ -18,7 +18,6 @@ import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Region;
import android.net.Uri;
import android.util.Log;
import com.facebook.common.executors.UiThreadImmediateExecutorService;
import com.facebook.common.logging.FLog;
@@ -21,7 +21,6 @@ import android.graphics.Point;
import android.graphics.RectF;
import android.graphics.Color;
import android.view.View;
import com.facebook.common.logging.FLog;
import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
@@ -10,13 +10,9 @@
package com.horcrux.svg;
import android.view.View;
import android.view.ViewGroup;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.LayoutShadowNode;
import com.facebook.react.uimanager.ReactShadowNode;
import com.facebook.react.uimanager.ThemedReactContext;
import com.facebook.react.uimanager.ViewGroupManager;
import com.facebook.react.uimanager.ViewManager;
/**
@@ -9,27 +9,17 @@
package com.horcrux.svg;
import javax.annotation.Nullable;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Point;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.TextureView;
import com.facebook.react.ReactRootView;
import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.touch.OnInterceptTouchEventListener;
import com.facebook.react.touch.ReactInterceptingViewGroup;
import com.facebook.react.uimanager.TouchTargetHelper;
import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.events.NativeGestureUtil;
import com.facebook.react.uimanager.events.RCTEventEmitter;
import com.facebook.react.uimanager.events.TouchEvent;
import com.facebook.react.uimanager.events.TouchEventCoalescingKeyHelper;
@@ -136,7 +126,6 @@ public class RNSVGSvgView extends TextureView {
dispatch(ev, TouchEventType.END);
mTargetTag = -1;
} else if (action == MotionEvent.ACTION_MOVE) {
Log.e("asdasd", "asdasd");
// Update pointer position for current gesture
dispatch(ev, TouchEventType.MOVE);
} else if (action == MotionEvent.ACTION_POINTER_DOWN) {
@@ -9,18 +9,11 @@
package com.horcrux.svg;
import android.graphics.Bitmap;
import android.util.Log;
import android.util.SparseArray;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.common.MapBuilder;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.ThemedReactContext;
import com.facebook.react.uimanager.ViewGroupManager;
import com.facebook.react.uimanager.ViewManager;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
@@ -16,14 +16,12 @@ import android.graphics.Point;
import android.util.Base64;
import android.util.SparseArray;
import android.view.TextureView;
import android.view.ViewGroup;
import android.graphics.Color;
import android.view.Surface;
import android.graphics.PorterDuff;
import android.graphics.SurfaceTexture;
import com.facebook.common.logging.FLog;
import com.facebook.imagepipeline.request.ImageRequest;
import com.facebook.react.common.ReactConstants;
import com.facebook.react.uimanager.LayoutShadowNode;
import com.facebook.react.uimanager.ReactShadowNode;
@@ -100,6 +98,7 @@ public class RNSVGSvgViewShadowNode extends LayoutShadowNode implements TextureV
child.setupDimensions(canvas);
child.saveDefinition();
child.draw(canvas, paint, 1f);
child.markUpdateSeen();
if (child.isResponsible() && !mResponsible) {
mResponsible = true;
@@ -21,7 +21,6 @@ import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Typeface;
import android.text.TextUtils;
import android.view.View;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.bridge.ReadableMap;
@@ -16,7 +16,6 @@ import android.graphics.Path;
import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.Region;
import android.view.View;
import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
import com.facebook.react.bridge.ReadableArray;
@@ -144,6 +143,7 @@ public abstract class RNSVGVirtualNode extends LayoutShadowNode {
} else {
mMatrix = null;
}
markUpdated();
}