Expose logging capablities in Yoga header

Summary: Exposes a bool in the config which will help log the yoga hierarchy. Also added a test case

Reviewed By: IanChilds

Differential Revision: D9560577

fbshipit-source-id: ef4998107ed51ea374853bab7cbe09e3232caa0c
This commit is contained in:
Pritesh Nandgaonkar
2018-08-30 04:40:46 -07:00
committed by Facebook Github Bot
parent 2b52c73d70
commit f7df575746
5 changed files with 68 additions and 20 deletions

View File

@@ -198,6 +198,10 @@ bool YGNodeGetHasNewLayout(YGNodeRef node) {
return node->getHasNewLayout();
}
void YGConfigSetPrintTreeFlag(YGConfigRef config, bool enabled) {
config->printTree = enabled;
}
void YGNodeSetHasNewLayout(YGNodeRef node, bool hasNewLayout) {
node->setHasNewLayout(hasNewLayout);
}
@@ -3535,7 +3539,6 @@ static void YGNodelayoutImpl(
}
uint32_t gDepth = 0;
bool gPrintTree = false;
bool gPrintChanges = false;
bool gPrintSkips = false;
@@ -4111,7 +4114,7 @@ void YGNodeCalculateLayout(
node->getLayout().direction, ownerWidth, ownerHeight, ownerWidth);
YGRoundToPixelGrid(node, node->getConfig()->pointScaleFactor, 0.0f, 0.0f);
if (gPrintTree) {
if (node->getConfig()->printTree) {
YGNodePrint(
node,
(YGPrintOptions)(
@@ -4163,7 +4166,7 @@ void YGNodeCalculateLayout(
node->setLayoutDoesLegacyFlagAffectsLayout(
!originalNode->isLayoutTreeEqualToNode(*node));
if (gPrintTree) {
if (originalNode->getConfig()->printTree) {
YGNodePrint(
originalNode,
(YGPrintOptions)(