From 89fc1601515d8686112ec91c0068c7e09e6cc3a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateo=20Guzm=C3=A1n?= Date: Thu, 14 Aug 2025 07:29:26 -0700 Subject: [PATCH] Migrate `YogaConfig` to Kotlin (#1841) Summary: Migrate com.facebook.yoga.YogaConfig to Kotlin. Pull Request resolved: https://github.com/facebook/yoga/pull/1841 Test Plan: RN ```sh yarn android yarn test-android ``` Yoga ```sh ./gradlew :yoga:assembleDebug ``` Reviewed By: rshest Differential Revision: D79897694 Pulled By: cortinico fbshipit-source-id: 0eff36f47bbb8da6a91087f2ea69bc4e40a732ac --- java/com/facebook/yoga/YogaConfig.java | 29 ---------------------- java/com/facebook/yoga/YogaConfig.kt | 33 ++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 29 deletions(-) delete mode 100644 java/com/facebook/yoga/YogaConfig.java create mode 100644 java/com/facebook/yoga/YogaConfig.kt diff --git a/java/com/facebook/yoga/YogaConfig.java b/java/com/facebook/yoga/YogaConfig.java deleted file mode 100644 index c841acd7..00000000 --- a/java/com/facebook/yoga/YogaConfig.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * 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. - */ - -package com.facebook.yoga; - -public abstract class YogaConfig { - - public static int SPACING_TYPE = 1; - - public abstract void setExperimentalFeatureEnabled(YogaExperimentalFeature feature, boolean enabled); - - public abstract void setUseWebDefaults(boolean useWebDefaults); - - public abstract void setPointScaleFactor(float pixelsInPoint); - - public abstract void setErrata(YogaErrata errata); - - public abstract YogaErrata getErrata(); - - public abstract void setLogger(YogaLogger logger); - - public abstract YogaLogger getLogger(); - - protected abstract long getNativePointer(); -} diff --git a/java/com/facebook/yoga/YogaConfig.kt b/java/com/facebook/yoga/YogaConfig.kt new file mode 100644 index 00000000..cdf6cfaa --- /dev/null +++ b/java/com/facebook/yoga/YogaConfig.kt @@ -0,0 +1,33 @@ +/* + * 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. + */ + +package com.facebook.yoga + +public abstract class YogaConfig { + public abstract fun setExperimentalFeatureEnabled( + feature: YogaExperimentalFeature, + enabled: Boolean + ) + + public abstract fun setUseWebDefaults(useWebDefaults: Boolean) + + public abstract fun setPointScaleFactor(pixelsInPoint: Float) + + public abstract fun setErrata(errata: YogaErrata) + + public abstract fun getErrata(): YogaErrata + + public abstract fun setLogger(logger: YogaLogger) + + public abstract fun getLogger(): YogaLogger + + protected abstract fun getNativePointer(): Long + + public companion object { + public var SPACING_TYPE: Int = 1 + } +}