mirror of
https://github.com/status-im/react-native.git
synced 2025-01-10 01:25:39 +00:00
811d5bfc73
Summary: LayoutableShadowNode defines a unified interface (and set of primitives) essential for laying out shadow nodes. Reviewed By: fkgozali Differential Revision: D7230668 fbshipit-source-id: d8c1772d4c3bd1f87c41f7240a39aecebf3696ae
37 lines
881 B
C++
37 lines
881 B
C++
/**
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <unordered_set>
|
|
|
|
#include <fabric/core/LayoutableShadowNode.h>
|
|
#include <fabric/graphics/Geometry.h>
|
|
|
|
namespace facebook {
|
|
namespace react {
|
|
|
|
/*
|
|
* LayoutContext: Additional contextual information useful for particular
|
|
* layout approaches.
|
|
*/
|
|
struct LayoutContext {
|
|
/*
|
|
* Compound absolute position of the node relative to the root node.
|
|
*/
|
|
Point absolutePosition {0, 0};
|
|
|
|
/*
|
|
* Collection of shadow nodes which were chanded during the layout pass,
|
|
* and which associated views might need to be updated.
|
|
*/
|
|
std::shared_ptr<std::unordered_set<SharedLayoutableShadowNode>> affectedShadowNodes {nullptr};
|
|
};
|
|
|
|
} // namespace react
|
|
} // namespace facebook
|