mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Fix modals when using Nodes
Summary: Modals were broken in Nodes, because the custom measurement logic for all the children of the ReactModalShadowNode was not being applied (because we wrapped it in a NativeViewWrapper). This change adds a custom flat node type for modals. Differential Revision: D3499557
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
/**
|
||||
* Copyright (c) 2015-present, Facebook, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under the BSD-style license found in the
|
||||
* LICENSE file in the root directory of this source tree. An additional grant
|
||||
* of patent rights can be found in the PATENTS file in the same directory.
|
||||
*/
|
||||
|
||||
package com.facebook.react.flat;
|
||||
|
||||
import com.facebook.react.bridge.ReactApplicationContext;
|
||||
import com.facebook.react.uimanager.LayoutShadowNode;
|
||||
import com.facebook.react.views.modal.ReactModalHostManager;
|
||||
|
||||
/* package */ class RCTModalHostManager extends ReactModalHostManager {
|
||||
|
||||
/* package */ RCTModalHostManager(ReactApplicationContext context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LayoutShadowNode createShadowNodeInstance() {
|
||||
return new FlatReactModalShadowNode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends LayoutShadowNode> getShadowNodeClass() {
|
||||
return FlatReactModalShadowNode.class;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user