| 123 | } |
| 124 | |
| 125 | void BridgeLayer::onLayout() { |
| 126 | ExternalLayer::onLayout(); |
| 127 | |
| 128 | if (shouldRasterizeExternalSurface()) { |
| 129 | auto viewNode = valdiViewNodeFromLayer(*this); |
| 130 | auto bridgedView = getBridgedView(); |
| 131 | if (bridgedView != nullptr && viewNode != nullptr) { |
| 132 | auto viewTransaction = bridgedView->getViewManager().createViewTransaction( |
| 133 | viewNode->getViewNodeTree()->getMainThreadManager(), false); |
| 134 | viewTransaction->setViewFrame( |
| 135 | bridgedView->getView(), Valdi::Frame(0, 0, getFrame().width(), getFrame().height()), false, nullptr); |
| 136 | viewTransaction->flush(/* sync */ false); |
| 137 | } |
| 138 | } |
| 139 | } |
| 140 | |
| 141 | Valdi::Ref<BridgedView> BridgeLayer::getBridgedView() const { |
| 142 | return Valdi::castOrNull<BridgedView>(getExternalSurface()); |
nothing calls this directly
no test coverage detected