From 25bac9e0dff5b05436fd418a190b2291493f5820 Mon Sep 17 00:00:00 2001 From: Fabio Carballo Date: Fri, 26 Jul 2024 00:15:58 -0700 Subject: [PATCH] Extract common logic for ViewAttributes creation into method Summary: Add further refactor around `ViewAttributes` method creation so that it can accomodatte better the creation of `ViewAttributes` for the `ViewAttributesBinder`. Reviewed By: zielinskimz Differential Revision: D59324627 fbshipit-source-id: ba828e6e1c2f2f500134cf7934844fff3216eaf3 --- .../java/com/facebook/litho/LithoNodeUtils.kt | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/litho-core/src/main/java/com/facebook/litho/LithoNodeUtils.kt b/litho-core/src/main/java/com/facebook/litho/LithoNodeUtils.kt index 275ef383698..9f58f799cf8 100644 --- a/litho-core/src/main/java/com/facebook/litho/LithoNodeUtils.kt +++ b/litho-core/src/main/java/com/facebook/litho/LithoNodeUtils.kt @@ -411,8 +411,6 @@ object LithoNodeUtils { @ImportantForAccessibility importantForAccessibility: Int, disableBgFgOutputs: Boolean ): ViewAttributes? { - - val nodeInfo: NodeInfo? = unit.nodeInfo val willMountView: Boolean = when (type) { OutputUnitType.HOST -> true @@ -422,6 +420,24 @@ object LithoNodeUtils { else -> false } + return createViewAttributes( + nodeInfo = unit.nodeInfo, + component = component, + willMountView = willMountView, + importantForAccessibility = importantForAccessibility, + disableBgFgOutputs = disableBgFgOutputs, + lithoNode = lithoNode) + } + + @JvmStatic + private fun createViewAttributes( + nodeInfo: NodeInfo?, + component: Component, + willMountView: Boolean, + @ImportantForAccessibility importantForAccessibility: Int, + disableBgFgOutputs: Boolean, + lithoNode: LithoNode? + ): ViewAttributes? { if (nodeInfo == null && !willMountView) { return null } @@ -455,6 +471,7 @@ object LithoNodeUtils { attrs.systemGestureExclusionZones = lithoNode.systemGestureExclusionZones } + return attrs } }