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:
parent
169812f9ce
commit
abc95a9113
|
@ -1,10 +1,10 @@
|
|||
/**
|
||||
/*
|
||||
* Copyright (c) 2014-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.
|
||||
* This source code is licensed under the MIT license found in the LICENSE
|
||||
* file in the root directory of this source tree.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "YGConfig.h"
|
||||
|
||||
const std::array<bool, YGExperimentalFeatureCount>
|
||||
|
@ -15,5 +15,8 @@ YGConfig::YGConfig(YGLogger logger)
|
|||
useWebDefaults(false),
|
||||
useLegacyStretchBehaviour(false),
|
||||
shouldDiffLayoutWithoutLegacyStretchBehaviour(false),
|
||||
pointScaleFactor(1.0f), logger(logger), cloneNodeCallback(nullptr),
|
||||
context(nullptr) {}
|
||||
pointScaleFactor(1.0f),
|
||||
logger(logger),
|
||||
cloneNodeCallback(nullptr),
|
||||
context(nullptr),
|
||||
printTree(false) {}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
/**
|
||||
/*
|
||||
* Copyright (c) 2014-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.
|
||||
* 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 "Yoga-internal.h"
|
||||
#include "Yoga.h"
|
||||
|
@ -18,6 +18,7 @@ struct YGConfig {
|
|||
YGLogger logger;
|
||||
YGCloneNodeFunc cloneNodeCallback;
|
||||
void* context;
|
||||
bool printTree;
|
||||
|
||||
YGConfig(YGLogger logger);
|
||||
};
|
||||
|
|
|
@ -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)(
|
||||
|
|
|
@ -155,6 +155,7 @@ WIN_EXPORT void YGNodeCopyStyle(
|
|||
|
||||
void* YGNodeGetContext(YGNodeRef node);
|
||||
void YGNodeSetContext(YGNodeRef node, void* context);
|
||||
void YGConfigSetPrintTreeFlag(YGConfigRef config, bool enabled);
|
||||
YGMeasureFunc YGNodeGetMeasureFunc(YGNodeRef node);
|
||||
void YGNodeSetMeasureFunc(YGNodeRef node, YGMeasureFunc measureFunc);
|
||||
YGBaselineFunc YGNodeGetBaselineFunc(YGNodeRef node);
|
||||
|
|
Loading…
Reference in New Issue