Add support for ViewProps.NEEDS_OFFSCREEN_ALPHA_COMPOSITING to RCTView
Summary: Copied from ReactViewManager. Should provide performance improvements. Reviewed By: ahmedre Differential Revision: D2772832
This commit is contained in:
parent
99d1c15c4d
commit
79be10428b
|
@ -57,6 +57,7 @@ import com.facebook.react.uimanager.ReactCompoundView;
|
||||||
private int mDrawChildIndex = 0;
|
private int mDrawChildIndex = 0;
|
||||||
private boolean mIsAttached = false;
|
private boolean mIsAttached = false;
|
||||||
private boolean mIsLayoutRequested = false;
|
private boolean mIsLayoutRequested = false;
|
||||||
|
private boolean mNeedsOffscreenAlphaCompositing = false;
|
||||||
private Drawable mHotspot;
|
private Drawable mHotspot;
|
||||||
|
|
||||||
/* package */ FlatViewGroup(Context context) {
|
/* package */ FlatViewGroup(Context context) {
|
||||||
|
@ -179,6 +180,22 @@ import com.facebook.react.uimanager.ReactCompoundView;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* We override this to allow developers to determine whether they need offscreen alpha compositing
|
||||||
|
* or not. See the documentation of needsOffscreenAlphaCompositing in View.js.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public boolean hasOverlappingRendering() {
|
||||||
|
return mNeedsOffscreenAlphaCompositing;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* See the documentation of needsOffscreenAlphaCompositing in View.js.
|
||||||
|
*/
|
||||||
|
/* package */ void setNeedsOffscreenAlphaCompositing(boolean needsOffscreenAlphaCompositing) {
|
||||||
|
mNeedsOffscreenAlphaCompositing = needsOffscreenAlphaCompositing;
|
||||||
|
}
|
||||||
|
|
||||||
/* package */ void setHotspot(Drawable hotspot) {
|
/* package */ void setHotspot(Drawable hotspot) {
|
||||||
if (mHotspot != null) {
|
if (mHotspot != null) {
|
||||||
mHotspot.setCallback(null);
|
mHotspot.setCallback(null);
|
||||||
|
|
|
@ -90,4 +90,11 @@ import com.facebook.react.views.view.ReactDrawableHelper;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ReactProp(name = ViewProps.NEEDS_OFFSCREEN_ALPHA_COMPOSITING)
|
||||||
|
public void setNeedsOffscreenAlphaCompositing(
|
||||||
|
FlatViewGroup view,
|
||||||
|
boolean needsOffscreenAlphaCompositing) {
|
||||||
|
view.setNeedsOffscreenAlphaCompositing(needsOffscreenAlphaCompositing);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue