Backout "[RN] Fabric: Enable zIndex only for non-`static` positioned views"
Summary: Changelog: [internal] Backout D22098586 (476ab7481e
) because of issues like D22843134 (799654b105
). [428](https://fburl.com/codesearch/0dyyakf5) places with zIndex and most of them do not have position defined. This could cause views to be overlapped. Reviewed By: JoshuaGross Differential Revision: D22890669 fbshipit-source-id: 200d1cbe2a4c27e2a0445b315868f37418ab1d9b
This commit is contained in:
Родитель
cc78aee56a
Коммит
709a3a0ceb
|
@ -105,18 +105,13 @@ class ConcreteViewShadowNode : public ConcreteShadowNode<
|
|||
void initialize() noexcept {
|
||||
auto &props = BaseShadowNode::getConcreteProps();
|
||||
|
||||
BaseShadowNode::orderIndex_ = props.zIndex.value_or(0);
|
||||
|
||||
if (props.yogaStyle.display() == YGDisplayNone) {
|
||||
BaseShadowNode::traits_.set(ShadowNodeTraits::Trait::Hidden);
|
||||
} else {
|
||||
BaseShadowNode::traits_.unset(ShadowNodeTraits::Trait::Hidden);
|
||||
}
|
||||
|
||||
// `zIndex` is only defined for non-`static` positioned views.
|
||||
if (props.yogaStyle.positionType() != YGPositionTypeStatic) {
|
||||
BaseShadowNode::orderIndex_ = props.zIndex.value_or(0);
|
||||
} else {
|
||||
BaseShadowNode::orderIndex_ = 0;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ void ViewShadowNode::initialize() noexcept {
|
|||
viewProps.opacity != 1.0 || viewProps.transform != Transform{} ||
|
||||
viewProps.elevation != 0 ||
|
||||
(viewProps.zIndex.has_value() &&
|
||||
viewProps.yogaStyle.positionType() != YGPositionTypeStatic) ||
|
||||
viewProps.yogaStyle.positionType() != YGPositionTypeAbsolute) ||
|
||||
viewProps.yogaStyle.display() == YGDisplayNone ||
|
||||
viewProps.getClipsContentToBounds() ||
|
||||
isColorMeaningful(viewProps.shadowColor) ||
|
||||
|
|
Загрузка…
Ссылка в новой задаче