From aa5edca0e229940c79f2efcb917f5c8b05022e4d Mon Sep 17 00:00:00 2001 From: David Vacca Date: Thu, 11 Jul 2019 16:16:46 -0700 Subject: [PATCH] Migrate Nullable and NonNull annotations to AndroidX Summary: This diff migrates the usages Nullable and NonNull annotations to AndroidX instead of javax. The purpose of this change is to bring consistency in the annotations used by the core of RN Reviewed By: makovkastar Differential Revision: D16054504 fbshipit-source-id: 21d888854da088d2a14615a90d4dc058e5286b91 --- .../facebook/react/testing/AssertModule.java | 2 +- .../react/testing/FakeWebSocketModule.java | 2 +- .../ReactAppInstrumentationTestCase.java | 2 +- .../react/testing/ReactAppTestActivity.java | 2 +- .../testing/ReactInstanceSpecForTest.java | 2 +- .../testing/ReactInstrumentationTest.java | 2 +- .../testing/ReactIntegrationTestCase.java | 2 +- .../react/testing/ReactTestHelper.java | 2 +- .../testing/ScreenshotingFrameLayout.java | 2 +- .../network/NetworkRecordingModuleMock.java | 2 +- .../CatalystSubviewsClippingTestCase.java | 2 +- .../facebook/react/CompositeReactPackage.java | 2 +- .../facebook/react/CoreModulesPackage.java | 2 +- .../facebook/react/HeadlessJsTaskService.java | 2 +- .../com/facebook/react/ReactActivity.java | 2 +- .../facebook/react/ReactActivityDelegate.java | 2 +- .../com/facebook/react/ReactDelegate.java | 2 +- .../com/facebook/react/ReactFragment.java | 2 +- .../facebook/react/ReactInstanceManager.java | 2 +- .../react/ReactInstanceManagerBuilder.java | 2 +- .../com/facebook/react/ReactNativeHost.java | 2 +- .../java/com/facebook/react/ReactPackage.java | 10 ++-- .../com/facebook/react/ReactRootView.java | 2 +- .../ViewManagerOnDemandReactPackage.java | 2 +- .../facebook/react/animated/AnimatedNode.java | 2 +- .../java/com/facebook/react/animated/BUCK | 1 + .../react/animated/EventAnimationDriver.java | 2 +- .../animated/InterpolationAnimatedNode.java | 2 +- .../react/animated/NativeAnimatedModule.java | 2 +- .../animated/NativeAnimatedNodesManager.java | 2 +- .../react/animated/PropsAnimatedNode.java | 2 +- .../react/animated/StyleAnimatedNode.java | 2 +- .../react/animated/ValueAnimatedNode.java | 2 +- .../com/facebook/react/bridge/Arguments.java | 2 +- .../facebook/react/bridge/BaseJavaModule.java | 2 +- .../react/bridge/CatalystInstance.java | 2 +- .../react/bridge/CatalystInstanceImpl.java | 2 +- .../react/bridge/DynamicFromArray.java | 2 +- .../facebook/react/bridge/DynamicFromMap.java | 2 +- .../react/bridge/DynamicFromObject.java | 2 +- .../JSApplicationCausedNativeException.java | 2 +- .../react/bridge/JavaMethodWrapper.java | 2 +- .../react/bridge/JavaModuleWrapper.java | 2 +- .../facebook/react/bridge/JavaOnlyArray.java | 10 ++-- .../facebook/react/bridge/JavaOnlyMap.java | 46 ++++++++-------- .../bridge/JavaScriptModuleRegistry.java | 2 +- .../facebook/react/bridge/ModuleHolder.java | 2 +- .../com/facebook/react/bridge/ModuleSpec.java | 2 +- .../bridge/NativeArgumentsParseException.java | 2 +- .../facebook/react/bridge/NativeModule.java | 4 +- .../com/facebook/react/bridge/Promise.java | 8 +-- .../facebook/react/bridge/PromiseImpl.java | 8 +-- .../react/bridge/ProxyJavaScriptExecutor.java | 2 +- .../facebook/react/bridge/ReactContext.java | 2 +- .../bridge/ReactContextBaseJavaModule.java | 6 +- .../facebook/react/bridge/ReactMarker.java | 2 +- .../facebook/react/bridge/ReadableArray.java | 10 ++-- .../facebook/react/bridge/ReadableMap.java | 34 ++++++------ .../react/bridge/ReadableNativeArray.java | 10 ++-- .../react/bridge/ReadableNativeMap.java | 34 ++++++------ .../facebook/react/bridge/SoftAssertions.java | 2 +- .../com/facebook/react/bridge/UIManager.java | 2 +- .../facebook/react/bridge/UiThreadUtil.java | 2 +- .../facebook/react/bridge/WritableArray.java | 2 +- .../facebook/react/bridge/WritableMap.java | 20 +++---- .../react/bridge/WritableNativeArray.java | 2 +- .../react/bridge/WritableNativeMap.java | 22 ++++---- .../queue/ReactQueueConfigurationSpec.java | 2 +- .../react/common/DebugServerException.java | 2 +- .../facebook/react/common/ShakeDetector.java | 2 +- .../react/common/SingleThreadAsserter.java | 2 +- .../common/futures/SimpleSettableFuture.java | 2 +- .../java/com/facebook/react/devsupport/BUCK | 3 +- .../react/devsupport/BundleDeltaClient.java | 2 +- .../react/devsupport/BundleDownloader.java | 2 +- .../devsupport/DebugOverlayController.java | 2 +- .../devsupport/DevLoadingViewController.java | 2 +- .../react/devsupport/DevServerHelper.java | 2 +- .../devsupport/DevSupportManagerFactory.java | 2 +- .../devsupport/DisabledDevSupportManager.java | 2 +- .../InspectorPackagerConnection.java | 2 +- .../react/devsupport/JSCHeapCapture.java | 2 +- .../devsupport/JSDebuggerWebSocketClient.java | 2 +- .../react/devsupport/JSDevSupport.java | 2 +- .../ReactInstanceManagerDevHelper.java | 2 +- .../react/devsupport/RedBoxDialog.java | 2 +- .../react/devsupport/StackTraceHelper.java | 2 +- .../WebsocketJavaScriptExecutor.java | 2 +- .../interfaces/DevBundleDownloadListener.java | 2 +- .../interfaces/DevSupportManager.java | 2 +- .../fabric/events/FabricEventEmitter.java | 2 +- .../react/fabric/mounting/ViewFactory.java | 2 +- .../fabric/mounting/ViewManagerFactory.java | 2 +- .../AccessibilityInfoModule.java | 2 +- .../react/modules/accessibilityinfo/BUCK | 2 + .../com/facebook/react/modules/camera/BUCK | 2 + .../modules/camera/CameraRollManager.java | 2 +- .../modules/camera/ImageEditingManager.java | 2 +- .../java/com/facebook/react/modules/core/BUCK | 2 + .../core/DeviceEventManagerModule.java | 6 +- .../core/RCTNativeAppEventEmitter.java | 2 +- .../modules/core/ReactChoreographer.java | 2 +- .../facebook/react/modules/core/Timing.java | 2 +- .../datepicker/DatePickerDialogFragment.java | 2 +- .../datepicker/DatePickerDialogModule.java | 6 +- .../DismissableDatePickerDialog.java | 2 +- .../modules/debug/AnimationsDebugModule.java | 2 +- .../com/facebook/react/modules/debug/BUCK | 2 + .../modules/debug/FpsDebugFrameCallback.java | 2 +- .../react/modules/debug/SourceCodeModule.java | 2 +- .../facebook/react/modules/deviceinfo/BUCK | 2 + .../modules/deviceinfo/DeviceInfoModule.java | 2 +- .../react/modules/dialog/AlertFragment.java | 2 +- .../react/modules/dialog/DialogModule.java | 10 ++-- .../com/facebook/react/modules/image/BUCK | 2 + .../modules/image/ImageLoaderModule.java | 2 +- .../com/facebook/react/modules/intent/BUCK | 2 + .../react/modules/intent/IntentModule.java | 2 +- .../com/facebook/react/modules/network/BUCK | 1 + .../network/ForwardingCookieHandler.java | 2 +- .../modules/network/NetworkingModule.java | 2 +- .../modules/network/OkHttpClientProvider.java | 2 +- .../modules/network/ProgressResponseBody.java | 2 +- .../network/ReactCookieJarContainer.java | 2 +- .../modules/network/RequestBodyUtil.java | 2 +- .../modules/statusbar/StatusBarModule.java | 2 +- .../storage/AsyncLocalStorageUtil.java | 2 +- .../storage/AsyncStorageErrorUtil.java | 2 +- .../com/facebook/react/modules/storage/BUCK | 2 + .../storage/ReactDatabaseSupplier.java | 2 +- .../modules/systeminfo/AndroidInfoModule.java | 2 +- .../facebook/react/modules/systeminfo/BUCK | 3 + .../DismissableTimePickerDialog.java | 2 +- .../timepicker/TimePickerDialogFragment.java | 2 +- .../timepicker/TimePickerDialogModule.java | 2 +- .../com/facebook/react/modules/websocket/BUCK | 2 + .../modules/websocket/WebSocketModule.java | 2 +- .../facebook/react/packagerconnection/BUCK | 2 + .../packagerconnection/FileIoHandler.java | 2 +- .../packagerconnection/JSPackagerClient.java | 2 +- .../NotificationOnlyHandler.java | 2 +- .../PackagerConnectionSettings.java | 2 +- .../ReconnectingWebSocket.java | 2 +- .../packagerconnection/RequestHandler.java | 2 +- .../RequestOnlyHandler.java | 2 +- .../java/com/facebook/react/processing/BUCK | 2 + .../processing/ReactPropertyProcessor.java | 2 +- .../react/shell/MainReactPackage.java | 2 +- .../main/java/com/facebook/react/touch/BUCK | 2 + .../react/touch/JSResponderHandler.java | 2 +- .../react/touch/ReactHitSlopView.java | 2 +- .../com/facebook/react/turbomodule/core/BUCK | 1 + ...eactPackageTurboModuleManagerDelegate.java | 2 +- .../turbomodule/core/TurboModuleManager.java | 2 +- .../core/TurboModuleManagerDelegate.java | 2 +- .../react/turbomodule/core/interfaces/BUCK | 2 + .../core/interfaces/TurboModuleRegistry.java | 2 +- .../java/com/facebook/react/uimanager/BUCK | 5 ++ .../react/uimanager/BaseViewManager.java | 55 +++++++++---------- .../react/uimanager/DisplayMetricsHolder.java | 2 +- .../react/uimanager/LayoutShadowNode.java | 2 +- .../uimanager/NativeViewHierarchyManager.java | 2 +- .../NativeViewHierarchyOptimizer.java | 2 +- .../uimanager/ReactAccessibilityDelegate.java | 2 +- .../facebook/react/uimanager/ReactRoot.java | 2 +- .../react/uimanager/ReactShadowNode.java | 2 +- .../react/uimanager/ReactShadowNodeImpl.java | 2 +- .../react/uimanager/ReactStylesDiffMap.java | 2 +- .../react/uimanager/ThemedReactContext.java | 2 +- .../react/uimanager/TouchTargetHelper.java | 2 +- .../react/uimanager/UIImplementation.java | 2 +- .../react/uimanager/UIManagerModule.java | 2 +- .../UIManagerModuleConstantsHelper.java | 2 +- .../react/uimanager/UIViewOperationQueue.java | 2 +- .../ViewGroupDrawingOrderHelper.java | 2 +- .../react/uimanager/ViewGroupManager.java | 2 +- .../facebook/react/uimanager/ViewManager.java | 40 +++++++------- .../react/uimanager/ViewManagerRegistry.java | 2 +- .../uimanager/ViewManagersPropertyCache.java | 2 +- .../facebook/react/uimanager/annotations/BUCK | 2 + .../uimanager/annotations/ReactProp.java | 2 +- .../uimanager/annotations/ReactPropGroup.java | 2 +- .../uimanager/events/RCTEventEmitter.java | 2 +- .../uimanager/events/ReactEventEmitter.java | 2 +- .../react/uimanager/events/TouchEvent.java | 2 +- .../AbstractLayoutAnimation.java | 2 +- .../LayoutAnimationController.java | 2 +- .../LayoutUpdateAnimation.java | 2 +- .../react/views/art/ARTGroupShadowNode.java | 2 +- .../react/views/art/ARTShapeShadowNode.java | 2 +- .../views/art/ARTSurfaceViewShadowNode.java | 2 +- .../react/views/art/ARTTextShadowNode.java | 2 +- .../react/views/art/ARTVirtualNode.java | 2 +- .../java/com/facebook/react/views/art/BUCK | 2 + .../facebook/react/views/art/PropHelper.java | 2 +- .../views/checkbox/ReactCheckBoxManager.java | 2 +- .../java/com/facebook/react/views/common/BUCK | 1 + .../react/views/common/ContextUtils.java | 2 +- .../drawer/ReactDrawerLayoutManager.java | 2 +- .../react/views/image/ImageLoadEvent.java | 2 +- .../react/views/image/ImageResizeMode.java | 2 +- .../react/views/image/ReactImageManager.java | 2 +- .../react/views/image/ReactImageView.java | 2 +- .../com/facebook/react/views/imagehelper/BUCK | 4 ++ .../react/views/imagehelper/ImageSource.java | 2 +- .../views/imagehelper/MultiSourceHelper.java | 2 +- .../imagehelper/ResourceDrawableIdHelper.java | 2 +- .../react/views/modal/ReactModalHostView.java | 2 +- .../react/views/picker/ReactPicker.java | 2 +- .../views/picker/ReactPickerAdapter.java | 2 +- .../react/views/picker/ReactPickerItem.java | 2 +- .../views/picker/ReactPickerManager.java | 2 +- .../com/facebook/react/views/progressbar/BUCK | 2 + .../progressbar/ProgressBarContainerView.java | 2 +- .../progressbar/ProgressBarShadowNode.java | 2 +- .../ReactProgressBarViewManager.java | 2 +- .../scroll/ReactHorizontalScrollView.java | 2 +- .../ReactHorizontalScrollViewManager.java | 2 +- .../react/views/scroll/ReactScrollView.java | 2 +- .../scroll/ReactScrollViewCommandHelper.java | 2 +- .../views/scroll/ReactScrollViewManager.java | 2 +- .../react/views/scroll/ScrollEvent.java | 2 +- .../react/views/scroll/VelocityHelper.java | 2 +- .../react/views/slider/ReactSlider.java | 2 +- .../SwipeRefreshLayoutManager.java | 2 +- .../com/facebook/react/views/switchview/BUCK | 2 +- .../react/views/switchview/ReactSwitch.java | 2 +- .../views/switchview/ReactSwitchManager.java | 2 +- .../views/text/ReactBaseTextShadowNode.java | 2 +- .../views/text/ReactRawTextShadowNode.java | 2 +- .../text/ReactTextAnchorViewManager.java | 2 +- .../react/views/text/ReactTextShadowNode.java | 2 +- .../react/views/text/ReactTextView.java | 2 +- .../views/text/ReactTextViewManager.java | 2 +- .../react/views/text/TextAttributeProps.java | 2 +- .../react/views/text/TextInlineImageSpan.java | 2 +- .../react/views/text/frescosupport/BUCK | 2 + ...coBasedReactTextInlineImageShadowNode.java | 2 +- .../FrescoBasedReactTextInlineImageSpan.java | 2 +- ...oBasedReactTextInlineImageViewManager.java | 2 +- .../react/views/textinput/ReactEditText.java | 2 +- .../ReactEditTextInputConnectionWrapper.java | 2 +- .../textinput/ReactTextInputManager.java | 2 +- .../textinput/ReactTextInputShadowNode.java | 2 +- .../ReactUnimplementedViewManager.java | 2 +- .../view/ReactViewBackgroundDrawable.java | 2 +- .../view/ReactViewBackgroundManager.java | 2 +- .../react/views/view/ReactViewGroup.java | 2 +- .../viewpager/ReactViewPagerManager.java | 2 +- .../java/com/facebook/common/logging/BUCK | 1 + .../common/logging/FakeLoggingDelegate.java | 2 +- .../react/modules/share/ShareModuleTest.java | 8 +-- .../ReactPropForShadowNodeSetterTest.java | 1 - 253 files changed, 432 insertions(+), 384 deletions(-) diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AssertModule.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AssertModule.java index d5a4f5376fd..981af21c470 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AssertModule.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AssertModule.java @@ -9,9 +9,9 @@ package com.facebook.react.testing; import static junit.framework.Assert.assertFalse; import static junit.framework.Assert.assertTrue; +import androidx.annotation.Nullable; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.ReactMethod; -import javax.annotation.Nullable; /** NativeModule for tests that allows assertions from JS to propagate to Java. */ public class AssertModule extends BaseJavaModule { diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeWebSocketModule.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeWebSocketModule.java index 0800f24b45e..e82a0a54cc7 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeWebSocketModule.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeWebSocketModule.java @@ -6,11 +6,11 @@ */ package com.facebook.react.testing; +import androidx.annotation.Nullable; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; -import javax.annotation.Nullable; /** Dummy implementation of storage module, used for testing */ public final class FakeWebSocketModule extends BaseJavaModule { diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java index 2c3c5866514..e68ee173ea7 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java @@ -11,12 +11,12 @@ import android.graphics.Bitmap; import android.test.ActivityInstrumentationTestCase2; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; import com.facebook.react.testing.idledetection.IdleWaiter; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; /** Base class for instrumentation tests that runs React based react application in UI mode */ public abstract class ReactAppInstrumentationTestCase diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java index 2318f236a7e..4a6eaa160b9 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java @@ -14,6 +14,7 @@ import android.os.Bundle; import android.view.View; import android.view.ViewTreeObserver; import android.widget.FrameLayout; +import androidx.annotation.Nullable; import androidx.fragment.app.FragmentActivity; import com.facebook.infer.annotation.Assertions; import com.facebook.react.ReactInstanceManager; @@ -39,7 +40,6 @@ import java.util.Arrays; import java.util.List; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; public class ReactAppTestActivity extends FragmentActivity implements DefaultHardwareBackBtnHandler, PermissionAwareActivity { diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java index 6b92b88e73c..67ea4ef9773 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java @@ -7,6 +7,7 @@ package com.facebook.react.testing; import android.annotation.SuppressLint; +import androidx.annotation.Nullable; import com.facebook.react.ReactPackage; import com.facebook.react.bridge.JavaScriptExecutorFactory; import com.facebook.react.bridge.JavaScriptModule; @@ -15,7 +16,6 @@ import com.facebook.react.uimanager.ViewManager; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import javax.annotation.Nullable; /** * A spec that allows a test to add additional NativeModules/JS modules to the ReactInstance. This diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java index 9e3e489c959..8fcdd8df585 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java @@ -10,11 +10,11 @@ import android.content.Intent; import android.test.ActivityInstrumentationTestCase2; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptExecutorFactory; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.bridge.ReactContext; import com.facebook.react.testing.idledetection.IdleWaiter; -import javax.annotation.Nullable; /** * Base class for instrumentation tests that runs React based application. diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactIntegrationTestCase.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactIntegrationTestCase.java index c4caeaa79af..4bc4a1716f9 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactIntegrationTestCase.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactIntegrationTestCase.java @@ -11,6 +11,7 @@ import static org.mockito.Mockito.mock; import android.test.AndroidTestCase; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.CatalystInstance; @@ -29,7 +30,6 @@ import com.facebook.soloader.SoLoader; import java.util.concurrent.CountDownLatch; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; /** * Use this class for writing integration tests of catalyst. This class will run all JNI call within diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestHelper.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestHelper.java index a737f543c04..16d186421ea 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestHelper.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestHelper.java @@ -9,6 +9,7 @@ package com.facebook.react.testing; import android.content.Context; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import com.android.internal.util.Predicate; import com.facebook.infer.annotation.Assertions; import com.facebook.react.NativeModuleRegistryBuilder; @@ -30,7 +31,6 @@ import com.facebook.react.uimanager.ViewManager; import java.util.Arrays; import java.util.Collections; import java.util.List; -import javax.annotation.Nullable; public class ReactTestHelper { private static class DefaultReactTestFactory implements ReactTestFactory { diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ScreenshotingFrameLayout.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ScreenshotingFrameLayout.java index ce1f6e86916..c95a0e85ec5 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ScreenshotingFrameLayout.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ScreenshotingFrameLayout.java @@ -11,7 +11,7 @@ import android.graphics.Bitmap; import android.graphics.Canvas; import android.os.Looper; import android.widget.FrameLayout; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * A FrameLayout that allows you to access the result of the last time its hierarchy was drawn. It diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/NetworkRecordingModuleMock.java b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/NetworkRecordingModuleMock.java index 09babeee703..894bd2e6e87 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/NetworkRecordingModuleMock.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/NetworkRecordingModuleMock.java @@ -6,6 +6,7 @@ */ package com.facebook.react.testing.network; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; @@ -17,7 +18,6 @@ import com.facebook.react.bridge.WritableArray; import com.facebook.react.bridge.WritableMap; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.modules.core.DeviceEventManagerModule; -import javax.annotation.Nullable; /** * Mock Networking module that records last request received by {@link #sendRequest} method and diff --git a/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystSubviewsClippingTestCase.java b/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystSubviewsClippingTestCase.java index 1fb9a2ea6c1..82dc136900d 100644 --- a/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystSubviewsClippingTestCase.java +++ b/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystSubviewsClippingTestCase.java @@ -8,6 +8,7 @@ package com.facebook.react.tests; import android.content.Context; import android.widget.ScrollView; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.testing.ReactAppInstrumentationTestCase; import com.facebook.react.testing.ReactInstanceSpecForTest; @@ -18,7 +19,6 @@ import com.facebook.react.views.view.ReactViewGroup; import com.facebook.react.views.view.ReactViewManager; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; import org.junit.Assert; /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java b/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java index f033aed7e82..52f4969f1f1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java +++ b/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java @@ -6,6 +6,7 @@ */ package com.facebook.react; +import androidx.annotation.Nullable; import com.facebook.react.bridge.NativeModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.module.model.ReactModuleInfo; @@ -19,7 +20,6 @@ import java.util.List; import java.util.ListIterator; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; /** * {@code CompositeReactPackage} allows to create a single package composed of views and modules diff --git a/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java b/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java index dfe3132b035..00256a49732 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +++ b/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java @@ -12,6 +12,7 @@ import static com.facebook.react.bridge.ReactMarkerConstants.CREATE_UI_MANAGER_M import static com.facebook.react.bridge.ReactMarkerConstants.PROCESS_CORE_REACT_PACKAGE_END; import static com.facebook.react.bridge.ReactMarkerConstants.PROCESS_CORE_REACT_PACKAGE_START; +import androidx.annotation.Nullable; import com.facebook.react.bridge.NativeModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactMarker; @@ -35,7 +36,6 @@ import com.facebook.systrace.Systrace; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** * This is the basic module to support React Native. The debug modules are now in DebugCorePackage. diff --git a/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java b/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java index 0405edd868e..8b661c14612 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java +++ b/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java @@ -13,6 +13,7 @@ import android.content.Context; import android.content.Intent; import android.os.IBinder; import android.os.PowerManager; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.UiThreadUtil; @@ -21,7 +22,6 @@ import com.facebook.react.jstasks.HeadlessJsTaskContext; import com.facebook.react.jstasks.HeadlessJsTaskEventListener; import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; -import javax.annotation.Nullable; /** * Base class for running JS without a UI. Generally, you only need to override {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java b/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java index b5b0024f863..f4565b4d376 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java @@ -9,11 +9,11 @@ package com.facebook.react; import android.content.Intent; import android.os.Bundle; import android.view.KeyEvent; +import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; import com.facebook.react.modules.core.PermissionAwareActivity; import com.facebook.react.modules.core.PermissionListener; -import javax.annotation.Nullable; /** Base Activity for React Native applications. */ public abstract class ReactActivity extends AppCompatActivity diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java index 199d9bf6a41..1fa606be8d2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java @@ -12,10 +12,10 @@ import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.view.KeyEvent; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Callback; import com.facebook.react.modules.core.PermissionListener; -import javax.annotation.Nullable; /** * Delegate class for {@link ReactActivity} and {@link ReactFragmentActivity}. You can subclass this diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java index 99aef296725..72013128388 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java @@ -10,10 +10,10 @@ import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.KeyEvent; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.devsupport.DoubleTapReloadRecognizer; import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; -import javax.annotation.Nullable; /** * A delegate for handling React Application support. This delegate is unaware whether it is used in diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java b/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java index 34ed7aa3452..4f76241cc99 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java @@ -15,10 +15,10 @@ import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import com.facebook.react.modules.core.PermissionAwareActivity; import com.facebook.react.modules.core.PermissionListener; -import javax.annotation.Nullable; /** * Fragment for creating a React View. This allows the developer to "embed" a React Application diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java index 4c7dde79712..6b8370c8895 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java @@ -39,6 +39,7 @@ import android.os.Bundle; import android.os.Process; import android.util.Log; import android.view.View; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.common.logging.FLog; import com.facebook.debug.holder.PrinterHolder; @@ -102,7 +103,6 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; /** * This class is managing instances of {@link CatalystInstance}. It exposes a way to configure diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java index 9d0a82c30f9..0c4b2b83146 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java @@ -9,6 +9,7 @@ import static com.facebook.react.modules.systeminfo.AndroidInfoHelpers.getFriend import android.app.Activity; import android.app.Application; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JSBundleLoader; import com.facebook.react.bridge.JSIModulePackage; @@ -26,7 +27,6 @@ import com.facebook.react.uimanager.UIImplementationProvider; import java.util.ArrayList; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** Builder class for {@link ReactInstanceManager} */ public class ReactInstanceManagerBuilder { diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java b/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java index fe0ec8b4192..89a28693b1b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java @@ -7,6 +7,7 @@ package com.facebook.react; import android.app.Application; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JSIModulePackage; import com.facebook.react.bridge.JavaScriptExecutorFactory; @@ -16,7 +17,6 @@ import com.facebook.react.common.LifecycleState; import com.facebook.react.devsupport.RedBoxHandler; import com.facebook.react.uimanager.UIImplementationProvider; import java.util.List; -import javax.annotation.Nullable; /** * Simple class that holds an instance of {@link ReactInstanceManager}. This can be used in your diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java b/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java index 2dc678fc3a3..fa0e8958429 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java @@ -6,12 +6,12 @@ */ package com.facebook.react; +import androidx.annotation.NonNull; import com.facebook.react.bridge.NativeModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewManager; import java.util.List; -import javax.annotation.Nonnull; /** * Main interface for providing additional capabilities to the catalyst framework by couple of @@ -35,10 +35,10 @@ public interface ReactPackage { * @param reactContext react application context that can be used to create modules * @return list of native modules to register with the newly created catalyst instance */ - @Nonnull - List createNativeModules(@Nonnull ReactApplicationContext reactContext); + @NonNull + List createNativeModules(@NonNull ReactApplicationContext reactContext); /** @return a list of view managers that should be registered with {@link UIManagerModule} */ - @Nonnull - List createViewManagers(@Nonnull ReactApplicationContext reactContext); + @NonNull + List createViewManagers(@NonNull ReactApplicationContext reactContext); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java b/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java index 50703ed524e..2b9b9a754de 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java @@ -25,6 +25,7 @@ import android.view.ViewGroup; import android.view.ViewTreeObserver; import android.view.WindowManager; import android.widget.FrameLayout; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Arguments; @@ -52,7 +53,6 @@ import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.common.UIManagerType; import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.systrace.Systrace; -import javax.annotation.Nullable; /** * Default root view for catalyst apps. Provides the ability to listen for size changes so that a UI diff --git a/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java b/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java index bdb1d2cff76..7f5b1d6fcc0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java @@ -6,10 +6,10 @@ */ package com.facebook.react; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.uimanager.ViewManager; import java.util.List; -import javax.annotation.Nullable; public interface ViewManagerOnDemandReactPackage { /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.java b/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.java index 956c7695018..5b44f1df571 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.java @@ -6,10 +6,10 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; /** Base class for all Animated.js library node types that can be created on the "native" side. */ /*package*/ abstract class AnimatedNode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK b/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK index 0b1fc31a9ae..c949ede2d4d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK @@ -5,6 +5,7 @@ rn_android_library( srcs = glob([ "*.java", ]), + is_androidx = True, provided_deps = [ react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/android/androidx:core"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java b/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java index 169808e04c6..4fe0e2543dd 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java @@ -6,12 +6,12 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.WritableArray; import com.facebook.react.bridge.WritableMap; import com.facebook.react.uimanager.events.RCTEventEmitter; import java.util.List; -import javax.annotation.Nullable; /** Handles updating a {@link ValueAnimatedNode} when an event gets dispatched. */ /* package */ class EventAnimationDriver implements RCTEventEmitter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java b/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java index a1ce30cff29..71f347f846c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java @@ -6,6 +6,7 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; @@ -13,7 +14,6 @@ import com.facebook.react.bridge.ReadableType; import java.util.ArrayList; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.annotation.Nullable; /** * Animated node that corresponds to {@code AnimatedInterpolation} from AnimatedImplementation.js. diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java b/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java index 5870cf432cd..71dbd6e47a2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java @@ -6,6 +6,7 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; @@ -25,7 +26,6 @@ import com.facebook.react.uimanager.UIBlock; import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.UIManagerModuleListener; import java.util.ArrayList; -import javax.annotation.Nullable; /** * Module that exposes interface for creating and managing animated nodes on the "native" side. diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java b/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java index 2e45456e0b9..fecb46dec70 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java @@ -7,6 +7,7 @@ package com.facebook.react.animated; import android.util.SparseArray; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; @@ -28,7 +29,6 @@ import java.util.List; import java.util.ListIterator; import java.util.Map; import java.util.Queue; -import javax.annotation.Nullable; /** * This is the main class that coordinates how native animated JS implementation drives UI changes. diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java b/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java index 0a56eb96e3b..251a1d9f8ff 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java @@ -6,6 +6,7 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.JavaOnlyMap; import com.facebook.react.bridge.ReadableMap; @@ -13,7 +14,6 @@ import com.facebook.react.bridge.ReadableMapKeySetIterator; import com.facebook.react.bridge.UIManager; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** * Animated node that represents view properties. There is a special handling logic implemented for diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java b/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java index 94cff86c001..9ca5444304b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java @@ -6,12 +6,12 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaOnlyMap; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableMapKeySetIterator; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** * Native counterpart of style animated node (see AnimatedStyle class in AnimatedImplementation.js) diff --git a/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java b/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java index 5ecec926f8b..063ce603396 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java @@ -6,8 +6,8 @@ */ package com.facebook.react.animated; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableMap; -import javax.annotation.Nullable; /** * Basic type of animated node that maps directly from {@code Animated.Value(x)} of Animated.js diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java index 2fee9d3b1c0..e17e3c1aca1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java @@ -7,12 +7,12 @@ package com.facebook.react.bridge; import android.os.Bundle; +import androidx.annotation.Nullable; import java.lang.reflect.Array; import java.util.AbstractList; import java.util.ArrayList; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; public class Arguments { private static Object makeNativeObject(Object object) { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java index f17c45331ab..6baff1cb00c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import java.util.Map; -import javax.annotation.Nullable; /** * Base class for Catalyst native modules whose implementations are written in Java. Default diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java index 703386ff0a3..761eae8ff0c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java @@ -6,13 +6,13 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.bridge.queue.ReactQueueConfiguration; import com.facebook.react.common.annotations.VisibleForTesting; import com.facebook.react.turbomodule.core.interfaces.JSCallInvokerHolder; import java.util.Collection; import java.util.List; -import javax.annotation.Nullable; /** * A higher level API on top of the asynchronous JSC bridge. This provides an environment allowing diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java index d4867de3425..e96d24270e5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java @@ -11,6 +11,7 @@ import static com.facebook.systrace.Systrace.TRACE_TAG_REACT_JAVA_BRIDGE; import android.content.res.AssetManager; import android.os.AsyncTask; import android.util.Log; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.jni.HybridData; @@ -34,7 +35,6 @@ import java.util.Collection; import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.Nullable; /** * This provides an implementation of the public CatalystInstance instance. It is public because it diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java index 39e310d278c..c81a25ecf31 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import androidx.core.util.Pools; -import javax.annotation.Nullable; /** Implementation of Dynamic wrapping a ReadableArray. */ public class DynamicFromArray implements Dynamic { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java index 360b22934e7..4c151f5f768 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import androidx.core.util.Pools.SimplePool; -import javax.annotation.Nullable; /** Implementation of Dynamic wrapping a ReadableMap. */ public class DynamicFromMap implements Dynamic { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java index e9104db1901..3a2dbba9aa2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java @@ -6,9 +6,9 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.common.ReactConstants; -import javax.annotation.Nullable; /** Implementation of Dynamic wrapping a ReadableArray. */ public class DynamicFromObject implements Dynamic { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationCausedNativeException.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationCausedNativeException.java index 2f4d83b98fc..40540049288 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationCausedNativeException.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationCausedNativeException.java @@ -6,7 +6,7 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * A special RuntimeException that should be thrown by native code if it has reached an exceptional diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java index edf5cfbf96d..8e648dc234a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java @@ -9,13 +9,13 @@ package com.facebook.react.bridge; import static com.facebook.infer.annotation.Assertions.assertNotNull; import static com.facebook.systrace.Systrace.TRACE_TAG_REACT_JAVA_BRIDGE; +import androidx.annotation.Nullable; import com.facebook.debug.holder.PrinterHolder; import com.facebook.debug.tags.ReactDebugOverlayTags; import com.facebook.infer.annotation.Assertions; import com.facebook.systrace.SystraceMessage; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -import javax.annotation.Nullable; public class JavaMethodWrapper implements NativeModule.NativeMethod { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java index 77105a5d5ca..0dd6a45d2a4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java @@ -12,6 +12,7 @@ import static com.facebook.react.bridge.ReactMarkerConstants.GET_CONSTANTS_END; import static com.facebook.react.bridge.ReactMarkerConstants.GET_CONSTANTS_START; import static com.facebook.systrace.Systrace.TRACE_TAG_REACT_JAVA_BRIDGE; +import androidx.annotation.Nullable; import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.systrace.Systrace; import com.facebook.systrace.SystraceMessage; @@ -21,7 +22,6 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; /** * This is part of the glue which wraps a java BaseJavaModule in a C++ NativeModule. This could all diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java index aa858cc2e29..071887938e7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java @@ -6,11 +6,11 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Java {@link ArrayList} backed implementation of {@link ReadableArray} and {@link WritableArray} @@ -116,12 +116,12 @@ public class JavaOnlyArray implements ReadableArray, WritableArray { } @Override - public @Nonnull Dynamic getDynamic(int index) { + public @NonNull Dynamic getDynamic(int index) { return DynamicFromArray.create(this, index); } @Override - public @Nonnull ReadableType getType(int index) { + public @NonNull ReadableType getType(int index) { Object object = mBackingList.get(index); if (object == null) { @@ -176,7 +176,7 @@ public class JavaOnlyArray implements ReadableArray, WritableArray { } @Override - public @Nonnull ArrayList toArrayList() { + public @NonNull ArrayList toArrayList() { return new ArrayList(mBackingList); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java index c4e16b204c2..0ed5a53bd3c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java @@ -6,11 +6,11 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import java.util.HashMap; import java.util.Iterator; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Java {@link HashMap} backed implementation of {@link ReadableMap} and {@link WritableMap} @@ -81,52 +81,52 @@ public class JavaOnlyMap implements ReadableMap, WritableMap { } @Override - public boolean hasKey(@Nonnull String name) { + public boolean hasKey(@NonNull String name) { return mBackingMap.containsKey(name); } @Override - public boolean isNull(@Nonnull String name) { + public boolean isNull(@NonNull String name) { return mBackingMap.get(name) == null; } @Override - public boolean getBoolean(@Nonnull String name) { + public boolean getBoolean(@NonNull String name) { return (Boolean) mBackingMap.get(name); } @Override - public double getDouble(@Nonnull String name) { + public double getDouble(@NonNull String name) { return ((Number) mBackingMap.get(name)).doubleValue(); } @Override - public int getInt(@Nonnull String name) { + public int getInt(@NonNull String name) { return ((Number) mBackingMap.get(name)).intValue(); } @Override - public String getString(@Nonnull String name) { + public String getString(@NonNull String name) { return (String) mBackingMap.get(name); } @Override - public ReadableMap getMap(@Nonnull String name) { + public ReadableMap getMap(@NonNull String name) { return (ReadableMap) mBackingMap.get(name); } @Override - public ReadableArray getArray(@Nonnull String name) { + public ReadableArray getArray(@NonNull String name) { return (ReadableArray) mBackingMap.get(name); } @Override - public @Nonnull Dynamic getDynamic(@Nonnull String name) { + public @NonNull Dynamic getDynamic(@NonNull String name) { return DynamicFromMap.create(this, name); } @Override - public @Nonnull ReadableType getType(@Nonnull String name) { + public @NonNull ReadableType getType(@NonNull String name) { Object value = mBackingMap.get(name); if (value == null) { return ReadableType.Null; @@ -149,12 +149,12 @@ public class JavaOnlyMap implements ReadableMap, WritableMap { } @Override - public @Nonnull Iterator> getEntryIterator() { + public @NonNull Iterator> getEntryIterator() { return mBackingMap.entrySet().iterator(); } @Override - public @Nonnull ReadableMapKeySetIterator keySetIterator() { + public @NonNull ReadableMapKeySetIterator keySetIterator() { return new ReadableMapKeySetIterator() { Iterator> mIterator = mBackingMap.entrySet().iterator(); @@ -171,37 +171,37 @@ public class JavaOnlyMap implements ReadableMap, WritableMap { } @Override - public void putBoolean(@Nonnull String key, boolean value) { + public void putBoolean(@NonNull String key, boolean value) { mBackingMap.put(key, value); } @Override - public void putDouble(@Nonnull String key, double value) { + public void putDouble(@NonNull String key, double value) { mBackingMap.put(key, value); } @Override - public void putInt(@Nonnull String key, int value) { + public void putInt(@NonNull String key, int value) { mBackingMap.put(key, new Double(value)); } @Override - public void putString(@Nonnull String key, @Nullable String value) { + public void putString(@NonNull String key, @Nullable String value) { mBackingMap.put(key, value); } @Override - public void putNull(@Nonnull String key) { + public void putNull(@NonNull String key) { mBackingMap.put(key, null); } @Override - public void putMap(@Nonnull String key, @Nullable ReadableMap value) { + public void putMap(@NonNull String key, @Nullable ReadableMap value) { mBackingMap.put(key, value); } @Override - public void merge(@Nonnull ReadableMap source) { + public void merge(@NonNull ReadableMap source) { mBackingMap.putAll(((JavaOnlyMap) source).mBackingMap); } @@ -213,12 +213,12 @@ public class JavaOnlyMap implements ReadableMap, WritableMap { } @Override - public void putArray(@Nonnull String key, @Nullable ReadableArray value) { + public void putArray(@NonNull String key, @Nullable ReadableArray value) { mBackingMap.put(key, value); } @Override - public @Nonnull HashMap toHashMap() { + public @NonNull HashMap toHashMap() { return new HashMap(mBackingMap); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java index 4d03060cf51..1dbb6f54d7b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java @@ -6,6 +6,7 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.react.common.build.ReactBuildConfig; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; @@ -13,7 +14,6 @@ import java.lang.reflect.Proxy; import java.util.HashMap; import java.util.HashSet; import java.util.Set; -import javax.annotation.Nullable; /** * Class responsible for holding all the {@link JavaScriptModule}s. Uses Java proxy objects to diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java index f36bf258fe0..01a94485fb5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java @@ -10,6 +10,7 @@ import static com.facebook.react.bridge.ReactMarkerConstants.CREATE_MODULE_END; import static com.facebook.react.bridge.ReactMarkerConstants.CREATE_MODULE_START; import static com.facebook.systrace.Systrace.TRACE_TAG_REACT_JAVA_BRIDGE; +import androidx.annotation.Nullable; import com.facebook.debug.holder.PrinterHolder; import com.facebook.debug.tags.ReactDebugOverlayTags; import com.facebook.infer.annotation.Assertions; @@ -18,7 +19,6 @@ import com.facebook.react.module.model.ReactModuleInfo; import com.facebook.react.turbomodule.core.interfaces.TurboModule; import com.facebook.systrace.SystraceMessage; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.Nullable; import javax.annotation.concurrent.GuardedBy; import javax.inject.Provider; diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java index 64766f16f17..3742b2ab927 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java @@ -6,9 +6,9 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.module.annotations.ReactModule; -import javax.annotation.Nullable; import javax.inject.Provider; /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.java index b292b669de6..e6966686694 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.java @@ -6,7 +6,7 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** Exception thrown when a native module method call receives unexpected arguments from JS. */ public class NativeArgumentsParseException extends JSApplicationCausedNativeException { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java index 8d0b6251a0d..2aa39cb0ee5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; import com.facebook.proguard.annotations.DoNotStrip; -import javax.annotation.Nonnull; /** * A native module whose API can be provided to JS catalyst instances. {@link NativeModule}s whose @@ -28,7 +28,7 @@ public interface NativeModule { * @return the name of this module. This will be the name used to {@code require()} this module * from javascript. */ - @Nonnull + @NonNull String getName(); /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.java index 4678c788480..e757c89a5e0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; /* * Interface that represents a JavaScript Promise which can be passed to the native module as a @@ -77,7 +77,7 @@ public interface Promise { * @param code String * @param userInfo WritableMap */ - void reject(String code, @Nonnull WritableMap userInfo); + void reject(String code, @NonNull WritableMap userInfo); /** * Report an exception with a custom code and userInfo. @@ -96,7 +96,7 @@ public interface Promise { * @param message String * @param userInfo WritableMap */ - void reject(String code, String message, @Nonnull WritableMap userInfo); + void reject(String code, String message, @NonNull WritableMap userInfo); /** * Report an exception with a custom code, error message and userInfo. diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java index ccc1204bc27..4e05e5e0c56 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java @@ -6,8 +6,8 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; /* * Implementation of {@link Promise} that represents a JavaScript Promise which can be passed to the @@ -126,7 +126,7 @@ public class PromiseImpl implements Promise { * @param userInfo WritableMap */ @Override - public void reject(String code, @Nonnull WritableMap userInfo) { + public void reject(String code, @NonNull WritableMap userInfo) { reject(code, /*Message*/ null, /*Throwable*/ null, userInfo); } @@ -151,7 +151,7 @@ public class PromiseImpl implements Promise { * @param userInfo WritableMap */ @Override - public void reject(String code, String message, @Nonnull WritableMap userInfo) { + public void reject(String code, String message, @NonNull WritableMap userInfo) { reject(code, message, /*Throwable*/ null, userInfo); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ProxyJavaScriptExecutor.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ProxyJavaScriptExecutor.java index 7a556096937..154bf756a78 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ProxyJavaScriptExecutor.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ProxyJavaScriptExecutor.java @@ -6,9 +6,9 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; -import javax.annotation.Nullable; /** * JavaScript executor that delegates JS calls processed by native code back to a java version of diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java index eaed58cdb3c..ef295ac7e81 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java @@ -12,13 +12,13 @@ import android.content.ContextWrapper; import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.queue.MessageQueueThread; import com.facebook.react.bridge.queue.ReactQueueConfiguration; import com.facebook.react.common.LifecycleState; import java.lang.ref.WeakReference; import java.util.concurrent.CopyOnWriteArraySet; -import javax.annotation.Nullable; /** * Abstract ContextWrapper for Android application or activity {@link Context} and {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java index b9ef6122991..0cea1c7a2e7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java @@ -7,8 +7,8 @@ package com.facebook.react.bridge; import android.app.Activity; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; /** * Base class for Catalyst native modules that require access to the {@link ReactContext} instance. @@ -17,7 +17,7 @@ public abstract class ReactContextBaseJavaModule extends BaseJavaModule { private final ReactApplicationContext mReactApplicationContext; - public ReactContextBaseJavaModule(@Nonnull ReactApplicationContext reactContext) { + public ReactContextBaseJavaModule(@NonNull ReactApplicationContext reactContext) { mReactApplicationContext = reactContext; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java index 9e444140e75..27ec9cdb30c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java @@ -5,10 +5,10 @@ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.proguard.annotations.DoNotStrip; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; /** * Static class that allows markers to be placed in React code and responded to in a configurable diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.java index 042121349b3..121f287bbcf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.java @@ -6,9 +6,9 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import java.util.ArrayList; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Interface for an array that allows typed access to its members. Used to pass parameters from JS @@ -35,12 +35,12 @@ public interface ReadableArray { @Nullable ReadableMap getMap(int index); - @Nonnull + @NonNull Dynamic getDynamic(int index); - @Nonnull + @NonNull ReadableType getType(int index); - @Nonnull + @NonNull ArrayList toArrayList(); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.java index 291b9e8f718..ea9157b3c9c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.java @@ -6,11 +6,11 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import java.util.HashMap; import java.util.Iterator; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Interface for a map that allows typed access to its members. Used to pass parameters from JS to @@ -18,37 +18,37 @@ import javax.annotation.Nullable; */ public interface ReadableMap { - boolean hasKey(@Nonnull String name); + boolean hasKey(@NonNull String name); - boolean isNull(@Nonnull String name); + boolean isNull(@NonNull String name); - boolean getBoolean(@Nonnull String name); + boolean getBoolean(@NonNull String name); - double getDouble(@Nonnull String name); + double getDouble(@NonNull String name); - int getInt(@Nonnull String name); + int getInt(@NonNull String name); @Nullable - String getString(@Nonnull String name); + String getString(@NonNull String name); @Nullable - ReadableArray getArray(@Nonnull String name); + ReadableArray getArray(@NonNull String name); @Nullable - ReadableMap getMap(@Nonnull String name); + ReadableMap getMap(@NonNull String name); - @Nonnull - Dynamic getDynamic(@Nonnull String name); + @NonNull + Dynamic getDynamic(@NonNull String name); - @Nonnull - ReadableType getType(@Nonnull String name); + @NonNull + ReadableType getType(@NonNull String name); - @Nonnull + @NonNull Iterator> getEntryIterator(); - @Nonnull + @NonNull ReadableMapKeySetIterator keySetIterator(); - @Nonnull + @NonNull HashMap toHashMap(); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java index d251e9b2a1b..39b1cce5ab3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java @@ -6,13 +6,13 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; import java.util.ArrayList; import java.util.Arrays; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Implementation of a NativeArray that allows read-only access to its members. This will generally @@ -112,12 +112,12 @@ public class ReadableNativeArray extends NativeArray implements ReadableArray { } @Override - public @Nonnull ReadableType getType(int index) { + public @NonNull ReadableType getType(int index) { return getLocalTypeArray()[index]; } @Override - public @Nonnull Dynamic getDynamic(int index) { + public @NonNull Dynamic getDynamic(int index) { return DynamicFromArray.create(this, index); } @@ -136,7 +136,7 @@ public class ReadableNativeArray extends NativeArray implements ReadableArray { } @Override - public @Nonnull ArrayList toArrayList() { + public @NonNull ArrayList toArrayList() { ArrayList arrayList = new ArrayList<>(); for (int i = 0; i < this.size(); i++) { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java index be4691f08e1..831b27952eb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java @@ -6,14 +6,14 @@ */ package com.facebook.react.bridge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; import java.util.HashMap; import java.util.Iterator; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Implementation of a read-only map in native memory. This will generally be constructed and filled @@ -64,7 +64,7 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap { private native Object[] importValues(); - private @Nonnull HashMap getLocalTypeMap() { + private @NonNull HashMap getLocalTypeMap() { if (mLocalTypeMap != null) { return mLocalTypeMap; } @@ -90,19 +90,19 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap { private native Object[] importTypes(); @Override - public boolean hasKey(@Nonnull String name) { + public boolean hasKey(@NonNull String name) { return getLocalMap().containsKey(name); } @Override - public boolean isNull(@Nonnull String name) { + public boolean isNull(@NonNull String name) { if (getLocalMap().containsKey(name)) { return getLocalMap().get(name) == null; } throw new NoSuchKeyException(name); } - private @Nonnull Object getValue(@Nonnull String name) { + private @NonNull Object getValue(@NonNull String name) { if (hasKey(name) && !(isNull(name))) { return Assertions.assertNotNull(getLocalMap().get(name)); } @@ -141,38 +141,38 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap { } @Override - public boolean getBoolean(@Nonnull String name) { + public boolean getBoolean(@NonNull String name) { return getValue(name, Boolean.class).booleanValue(); } @Override - public double getDouble(@Nonnull String name) { + public double getDouble(@NonNull String name) { return getValue(name, Double.class).doubleValue(); } @Override - public int getInt(@Nonnull String name) { + public int getInt(@NonNull String name) { // All numbers coming out of native are doubles, so cast here then truncate return getValue(name, Double.class).intValue(); } @Override - public @Nullable String getString(@Nonnull String name) { + public @Nullable String getString(@NonNull String name) { return getNullableValue(name, String.class); } @Override - public @Nullable ReadableArray getArray(@Nonnull String name) { + public @Nullable ReadableArray getArray(@NonNull String name) { return getNullableValue(name, ReadableArray.class); } @Override - public @Nullable ReadableNativeMap getMap(@Nonnull String name) { + public @Nullable ReadableNativeMap getMap(@NonNull String name) { return getNullableValue(name, ReadableNativeMap.class); } @Override - public @Nonnull ReadableType getType(@Nonnull String name) { + public @NonNull ReadableType getType(@NonNull String name) { if (getLocalTypeMap().containsKey(name)) { return Assertions.assertNotNull(getLocalTypeMap().get(name)); } @@ -180,17 +180,17 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap { } @Override - public @Nonnull Dynamic getDynamic(@Nonnull String name) { + public @NonNull Dynamic getDynamic(@NonNull String name) { return DynamicFromMap.create(this, name); } @Override - public @Nonnull Iterator> getEntryIterator() { + public @NonNull Iterator> getEntryIterator() { return getLocalMap().entrySet().iterator(); } @Override - public @Nonnull ReadableMapKeySetIterator keySetIterator() { + public @NonNull ReadableMapKeySetIterator keySetIterator() { return new ReadableNativeMapKeySetIterator(this); } @@ -209,7 +209,7 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap { } @Override - public @Nonnull HashMap toHashMap() { + public @NonNull HashMap toHashMap() { // we can almost just return getLocalMap(), but we need to convert nested arrays and maps to the // correct types first HashMap hashMap = new HashMap<>(getLocalMap()); diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java index 4df3d3fa2cc..602d9f7f7b5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java @@ -6,7 +6,7 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * Utility class to make assertions that should not hard-crash the app but instead be handled by the diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java index d7e42ae69fc..66a62addaf7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java @@ -7,7 +7,7 @@ package com.facebook.react.bridge; import android.view.View; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; public interface UIManager extends JSIModule, PerformanceCounter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java index 38bf74fb2fc..d05bfa57bf0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java @@ -8,7 +8,7 @@ package com.facebook.react.bridge; import android.os.Handler; import android.os.Looper; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** Utility for interacting with the UI thread. */ public class UiThreadUtil { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.java index 23b9e4ea173..3c1b015f770 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.java @@ -6,7 +6,7 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** Interface for a mutable array. Used to pass arguments from Java to JS. */ public interface WritableArray extends ReadableArray { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.java index ae52b9043c4..add7a5fca6a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.java @@ -6,27 +6,27 @@ */ package com.facebook.react.bridge; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; /** Interface for a mutable map. Used to pass arguments from Java to JS. */ public interface WritableMap extends ReadableMap { - void putNull(@Nonnull String key); + void putNull(@NonNull String key); - void putBoolean(@Nonnull String key, boolean value); + void putBoolean(@NonNull String key, boolean value); - void putDouble(@Nonnull String key, double value); + void putDouble(@NonNull String key, double value); - void putInt(@Nonnull String key, int value); + void putInt(@NonNull String key, int value); - void putString(@Nonnull String key, @Nullable String value); + void putString(@NonNull String key, @Nullable String value); - void putArray(@Nonnull String key, @Nullable ReadableArray value); + void putArray(@NonNull String key, @Nullable ReadableArray value); - void putMap(@Nonnull String key, @Nullable ReadableMap value); + void putMap(@NonNull String key, @Nullable ReadableMap value); - void merge(@Nonnull ReadableMap source); + void merge(@NonNull ReadableMap source); WritableMap copy(); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java index 3e0751ece41..dc09c3866d0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java @@ -6,10 +6,10 @@ */ package com.facebook.react.bridge; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; -import javax.annotation.Nullable; /** * Implementation of a write-only array stored in native memory. Use {@link Arguments#createArray()} diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.java index 87d6916f88f..50d8834f17c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.java @@ -7,11 +7,10 @@ package com.facebook.react.bridge; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Implementation of a write-only map stored in native memory. Use {@link Arguments#createMap()} if @@ -24,23 +23,22 @@ public class WritableNativeMap extends ReadableNativeMap implements WritableMap } @Override - public native void putBoolean(@Nonnull String key, boolean value); + public native void putBoolean(@NonNull String key, boolean value); @Override - public native void putDouble(@Nonnull String key, double value); + public native void putDouble(@NonNull String key, double value); @Override - public native void putInt(@Nonnull String key, int value); - - @Override - public native void putString(@Nonnull String key, @Nullable String value); + public native void putInt(@NonNull String key, int value); @Override public native void putNull(@NonNull String key); - // Note: this consumes the map so do not reuse it. @Override - public void putMap(@Nonnull String key, @Nullable ReadableMap value) { + public native void putString(@NonNull String key, @Nullable String value); + + @Override + public void putMap(@NonNull String key, @Nullable ReadableMap value) { Assertions.assertCondition( value == null || value instanceof WritableNativeMap, "Illegal type provided"); putNativeMap(key, (WritableNativeMap) value); @@ -48,7 +46,7 @@ public class WritableNativeMap extends ReadableNativeMap implements WritableMap // Note: this consumes the map so do not reuse it. @Override - public void putArray(@Nonnull String key, @Nullable ReadableArray value) { + public void putArray(@NonNull String key, @Nullable ReadableArray value) { Assertions.assertCondition( value == null || value instanceof WritableNativeArray, "Illegal type provided"); putNativeArray(key, (WritableNativeArray) value); @@ -56,7 +54,7 @@ public class WritableNativeMap extends ReadableNativeMap implements WritableMap // Note: this **DOES NOT** consume the source map @Override - public void merge(@Nonnull ReadableMap source) { + public void merge(@NonNull ReadableMap source) { Assertions.assertCondition(source instanceof ReadableNativeMap, "Illegal type provided"); mergeNativeMap((ReadableNativeMap) source); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java index e00b217db96..167f7f6a0d2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java @@ -7,8 +7,8 @@ package com.facebook.react.bridge.queue; import android.os.Build; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; -import javax.annotation.Nullable; /** * Spec for creating a ReactQueueConfiguration. This exists so that CatalystInstance is able to set diff --git a/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.java b/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.java index 9e19c9042fc..4a3187b0faf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.java +++ b/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.java @@ -8,8 +8,8 @@ package com.facebook.react.common; import android.net.Uri; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; -import javax.annotation.Nullable; import org.json.JSONException; import org.json.JSONObject; diff --git a/ReactAndroid/src/main/java/com/facebook/react/common/ShakeDetector.java b/ReactAndroid/src/main/java/com/facebook/react/common/ShakeDetector.java index cbb32cbbab0..43c4c0ac42a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/common/ShakeDetector.java +++ b/ReactAndroid/src/main/java/com/facebook/react/common/ShakeDetector.java @@ -10,9 +10,9 @@ import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; /** Listens for the user shaking their phone. Allocation-less once it starts listening. */ public class ShakeDetector implements SensorEventListener { diff --git a/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.java b/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.java index 16e96ae9c51..ee8371a0ee6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.java @@ -6,8 +6,8 @@ */ package com.facebook.react.common; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; -import javax.annotation.Nullable; /** Simple class for asserting that operations only run on a single thread. */ public class SingleThreadAsserter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.java b/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.java index 2e86489fc58..4cb7f603119 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.java +++ b/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.java @@ -6,12 +6,12 @@ */ package com.facebook.react.common.futures; +import androidx.annotation.Nullable; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; -import javax.annotation.Nullable; /** * A super simple Future-like class that can safely notify another Thread when a value is ready. diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK index 3e81898d223..2395f4309db 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK @@ -6,7 +6,6 @@ rn_android_library( is_androidx = True, manifest = "AndroidManifest.xml", provided_deps = [ - react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/android/androidx:core"), react_native_dep("third-party/android/androidx:fragment"), react_native_dep("third-party/android/androidx:legacy-support-core-ui"), @@ -16,6 +15,7 @@ rn_android_library( "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), @@ -46,6 +46,7 @@ rn_android_library( "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), react_native_target("java/com/facebook/react/modules/debug:interfaces"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDeltaClient.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDeltaClient.java index be3baa037b8..5dceb37de0e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDeltaClient.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDeltaClient.java @@ -8,13 +8,13 @@ package com.facebook.react.devsupport; import android.util.JsonReader; import android.util.Pair; +import androidx.annotation.Nullable; import com.facebook.react.bridge.NativeDeltaClient; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.TreeMap; -import javax.annotation.Nullable; import okhttp3.Headers; import okio.BufferedSource; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java index dbc1678c9ab..6478591c588 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java @@ -8,6 +8,7 @@ package com.facebook.react.devsupport; import android.util.Log; import android.util.Pair; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.NativeDeltaClient; @@ -19,7 +20,6 @@ import java.io.IOException; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.annotation.Nullable; import okhttp3.Call; import okhttp3.Callback; import okhttp3.Headers; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java index 653a2fb8736..7f4f6e0e8cd 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java @@ -17,11 +17,11 @@ import android.os.Build; import android.provider.Settings; import android.view.WindowManager; import android.widget.FrameLayout; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.UiThreadUtil; import com.facebook.react.common.ReactConstants; -import javax.annotation.Nullable; /** * Helper class for controlling overlay view with FPS and JS FPS info that gets added directly diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java index 06a09d49516..80d327592b6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java @@ -16,6 +16,7 @@ import android.view.Gravity; import android.view.LayoutInflater; import android.widget.PopupWindow; import android.widget.TextView; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.R; import com.facebook.react.bridge.UiThreadUtil; @@ -23,7 +24,6 @@ import com.facebook.react.common.ReactConstants; import java.net.MalformedURLException; import java.net.URL; import java.util.Locale; -import javax.annotation.Nullable; /** Controller to display loading messages on top of the screen. All methods are thread safe. */ public class DevLoadingViewController { diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java index d35dead80c2..09681da38cf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java @@ -11,6 +11,7 @@ import android.os.AsyncTask; import android.os.Handler; import android.os.Looper; import android.widget.Toast; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.R; @@ -35,7 +36,6 @@ import java.util.HashMap; import java.util.Locale; import java.util.Map; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.Call; import okhttp3.Callback; import okhttp3.ConnectionPool; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java index c0d40285bec..05a5e123db0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java @@ -7,12 +7,12 @@ package com.facebook.react.devsupport; import android.content.Context; +import androidx.annotation.Nullable; import com.facebook.react.devsupport.interfaces.DevBundleDownloadListener; import com.facebook.react.devsupport.interfaces.DevSupportManager; import com.facebook.react.packagerconnection.RequestHandler; import java.lang.reflect.Constructor; import java.util.Map; -import javax.annotation.Nullable; /** * A simple factory that creates instances of {@link DevSupportManager} implementations. Uses diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java index 363cf2a9d07..09de892ecdf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java @@ -6,6 +6,7 @@ */ package com.facebook.react.devsupport; +import androidx.annotation.Nullable; import com.facebook.react.bridge.DefaultNativeModuleCallExceptionHandler; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.ReadableArray; @@ -16,7 +17,6 @@ import com.facebook.react.devsupport.interfaces.PackagerStatusCallback; import com.facebook.react.devsupport.interfaces.StackFrame; import com.facebook.react.modules.debug.interfaces.DeveloperSettings; import java.io.File; -import javax.annotation.Nullable; /** * A dummy implementation of {@link DevSupportManager} to be used in production mode where diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java index 82b357313c2..228b4177239 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java @@ -8,6 +8,7 @@ package com.facebook.react.devsupport; import android.os.AsyncTask; import android.os.Handler; import android.os.Looper; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Inspector; import java.io.IOException; @@ -15,7 +16,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java index e5e46d62d53..350acef7769 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java @@ -6,13 +6,13 @@ */ package com.facebook.react.devsupport; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.module.annotations.ReactModule; import java.io.File; -import javax.annotation.Nullable; // This module is being called only by Java via the static method "captureHeap" that // requires it to alreay be initialized, thus we eagerly initialize this module diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java index f2bae2f1ec8..69358462e3e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java @@ -9,6 +9,7 @@ package com.facebook.react.devsupport; import android.util.JsonReader; import android.util.JsonToken; import android.util.JsonWriter; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.common.JavascriptException; @@ -19,7 +20,6 @@ import java.util.HashMap; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.Nullable; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java index dcd9b5ed166..16c38e0a38d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java @@ -7,6 +7,7 @@ package com.facebook.react.devsupport; import android.util.Pair; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; @@ -14,7 +15,6 @@ import com.facebook.react.bridge.ReactMethod; import com.facebook.react.module.annotations.ReactModule; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; @ReactModule(name = JSDevSupport.MODULE_NAME) public class JSDevSupport extends ReactContextBaseJavaModule { diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceManagerDevHelper.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceManagerDevHelper.java index bac19a8919f..f9ce6a706ea 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceManagerDevHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceManagerDevHelper.java @@ -7,9 +7,9 @@ package com.facebook.react.devsupport; import android.app.Activity; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaJSExecutor; import com.facebook.react.bridge.NativeDeltaClient; -import javax.annotation.Nullable; /** * Interface used by {@link DevSupportManager} for accessing some fields and methods of {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialog.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialog.java index e4d82f47311..bf509d33455 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialog.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialog.java @@ -24,6 +24,7 @@ import android.widget.Button; import android.widget.ListView; import android.widget.ProgressBar; import android.widget.TextView; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.R; @@ -32,7 +33,6 @@ import com.facebook.react.common.ReactConstants; import com.facebook.react.devsupport.RedBoxHandler.ReportCompletedListener; import com.facebook.react.devsupport.interfaces.DevSupportManager; import com.facebook.react.devsupport.interfaces.StackFrame; -import javax.annotation.Nullable; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java index b6bf202cd20..4d8bff01233 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java @@ -6,6 +6,7 @@ */ package com.facebook.react.devsupport; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableType; @@ -14,7 +15,6 @@ import com.facebook.react.devsupport.interfaces.StackFrame; import java.io.File; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.annotation.Nullable; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/WebsocketJavaScriptExecutor.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/WebsocketJavaScriptExecutor.java index 041c4143a3b..ea7c7586106 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/WebsocketJavaScriptExecutor.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/WebsocketJavaScriptExecutor.java @@ -8,12 +8,12 @@ package com.facebook.react.devsupport; import android.os.Handler; import android.os.Looper; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JavaJSExecutor; import java.util.HashMap; import java.util.concurrent.Semaphore; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.Nullable; /** Executes JS remotely via the react nodejs server as a proxy to a browser on the host machine. */ public class WebsocketJavaScriptExecutor implements JavaJSExecutor { diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.java index 3338975cca7..8ddd20af41c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.java @@ -6,8 +6,8 @@ */ package com.facebook.react.devsupport.interfaces; +import androidx.annotation.Nullable; import com.facebook.react.bridge.NativeDeltaClient; -import javax.annotation.Nullable; public interface DevBundleDownloadListener { void onSuccess(@Nullable NativeDeltaClient nativeDeltaClient); diff --git a/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java b/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java index c30c9939558..360b76c04e7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java @@ -6,12 +6,12 @@ */ package com.facebook.react.devsupport.interfaces; +import androidx.annotation.Nullable; import com.facebook.react.bridge.NativeModuleCallExceptionHandler; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.modules.debug.interfaces.DeveloperSettings; import java.io.File; -import javax.annotation.Nullable; /** * Interface for accessing and interacting with development features. In dev mode, use the diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java index f9fa3de0fa8..f5ee0838368 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java @@ -13,6 +13,7 @@ import static com.facebook.react.uimanager.events.TouchesHelper.TOP_TOUCH_END_KE import static com.facebook.react.uimanager.events.TouchesHelper.TOUCHES_KEY; import android.util.Pair; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.WritableArray; @@ -24,7 +25,6 @@ import com.facebook.react.uimanager.events.RCTEventEmitter; import com.facebook.systrace.Systrace; import java.util.HashSet; import java.util.Set; -import javax.annotation.Nullable; public class FabricEventEmitter implements RCTEventEmitter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewFactory.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewFactory.java index 073e7cd9db5..3fe6a13b4ea 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewFactory.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewFactory.java @@ -7,10 +7,10 @@ package com.facebook.react.fabric.mounting; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.react.uimanager.ReactStylesDiffMap; import com.facebook.react.uimanager.StateWrapper; import com.facebook.react.uimanager.ThemedReactContext; -import javax.annotation.Nullable; public interface ViewFactory { diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewManagerFactory.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewManagerFactory.java index 78766965b72..9d01df98d1d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewManagerFactory.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/ViewManagerFactory.java @@ -7,12 +7,12 @@ package com.facebook.react.fabric.mounting; import android.view.View; +import androidx.annotation.Nullable; import androidx.annotation.UiThread; import com.facebook.react.uimanager.ReactStylesDiffMap; import com.facebook.react.uimanager.StateWrapper; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.ViewManagerRegistry; -import javax.annotation.Nullable; public class ViewManagerFactory implements ViewFactory { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java index 90058e1a5bf..4e257bc3c67 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java @@ -16,6 +16,7 @@ import android.os.Looper; import android.provider.Settings; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityManager; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.bridge.ReactApplicationContext; @@ -23,7 +24,6 @@ import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.modules.core.DeviceEventManagerModule; -import javax.annotation.Nullable; /** * Module that monitors and provides information about the state of Touch Exploration service on the diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK index be524187663..cd5151c836e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "accessibilityinfo", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK index 75929307c49..cdbfb8b48cd 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "camera", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java index 2d5826bdc6a..b07abea1067 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java @@ -19,6 +19,7 @@ import android.os.Environment; import android.provider.MediaStore; import android.provider.MediaStore.Images; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.GuardedAsyncTask; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; @@ -47,7 +48,6 @@ import java.nio.channels.FileChannel; import java.nio.channels.ReadableByteChannel; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; // TODO #6015104: rename to something less iOSish /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageEditingManager.java b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageEditingManager.java index bbf7f9e0a44..5d0ef6e77a9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageEditingManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageEditingManager.java @@ -19,6 +19,7 @@ import android.net.Uri; import android.os.AsyncTask; import android.provider.MediaStore; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Callback; @@ -43,7 +44,6 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** Native module that provides image cropping functionality. */ @ReactModule(name = ImageEditingManager.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK index 57580c41a7f..dea0d2cdbf3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "core", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java index e7935399b98..6a9ae95c62f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java @@ -7,6 +7,8 @@ package com.facebook.react.modules.core; import android.net.Uri; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.bridge.ReactApplicationContext; @@ -15,8 +17,6 @@ import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.UiThreadUtil; import com.facebook.react.bridge.WritableMap; import com.facebook.react.module.annotations.ReactModule; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** Native module that handles device hardware events like hardware back presses. */ @ReactModule(name = DeviceEventManagerModule.NAME) @@ -24,7 +24,7 @@ public class DeviceEventManagerModule extends ReactContextBaseJavaModule { public static final String NAME = "DeviceEventManager"; public interface RCTDeviceEventEmitter extends JavaScriptModule { - void emit(@Nonnull String eventName, @Nullable Object data); + void emit(@NonNull String eventName, @Nullable Object data); } private final Runnable mInvokeDefaultBackPressRunnable; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/core/RCTNativeAppEventEmitter.java b/ReactAndroid/src/main/java/com/facebook/react/modules/core/RCTNativeAppEventEmitter.java index 7ecd4cd7ff7..00d0eff9dec 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/core/RCTNativeAppEventEmitter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/core/RCTNativeAppEventEmitter.java @@ -6,8 +6,8 @@ */ package com.facebook.react.modules.core; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptModule; -import javax.annotation.Nullable; /** Module that handles global application events. */ public interface RCTNativeAppEventEmitter extends JavaScriptModule { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java b/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java index 16d5bab29c5..550a375f709 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java @@ -6,12 +6,12 @@ */ package com.facebook.react.modules.core; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.UiThreadUtil; import com.facebook.react.common.ReactConstants; import java.util.ArrayDeque; -import javax.annotation.Nullable; import javax.annotation.concurrent.GuardedBy; /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/core/Timing.java b/ReactAndroid/src/main/java/com/facebook/react/modules/core/Timing.java index 58f2fd31795..38be3109244 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/core/Timing.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/core/Timing.java @@ -7,6 +7,7 @@ package com.facebook.react.modules.core; import android.util.SparseArray; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.bridge.ReactApplicationContext; @@ -22,7 +23,6 @@ import com.facebook.react.module.annotations.ReactModule; import java.util.Comparator; import java.util.PriorityQueue; import java.util.concurrent.atomic.AtomicBoolean; -import javax.annotation.Nullable; /** Native module for JS timer execution. Timers fire on frame boundaries. */ @ReactModule(name = Timing.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java index 35677067b3d..4bbbe05b777 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java @@ -17,10 +17,10 @@ import android.graphics.drawable.ColorDrawable; import android.os.Build; import android.os.Bundle; import android.widget.DatePicker; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import java.util.Calendar; import java.util.Locale; -import javax.annotation.Nullable; @SuppressLint("ValidFragment") public class DatePickerDialogFragment extends DialogFragment { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java index 535ca4178cc..331c107356f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java @@ -11,14 +11,14 @@ import android.content.DialogInterface; import android.content.DialogInterface.OnDismissListener; import android.os.Bundle; import android.widget.DatePicker; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import com.facebook.react.bridge.*; import com.facebook.react.common.annotations.VisibleForTesting; import com.facebook.react.module.annotations.ReactModule; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * {@link NativeModule} that allows JS to show a native date picker dialog and get called back when @@ -44,7 +44,7 @@ public class DatePickerDialogModule extends ReactContextBaseJavaModule { } @Override - public @Nonnull String getName() { + public @NonNull String getName() { return DatePickerDialogModule.FRAGMENT_TAG; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java index 65398f7c745..85b3abb9567 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java @@ -12,9 +12,9 @@ import android.content.res.TypedArray; import android.os.Build; import android.util.AttributeSet; import android.widget.DatePicker; +import androidx.annotation.Nullable; import java.lang.reflect.Field; import java.lang.reflect.Method; -import javax.annotation.Nullable; /** * Certain versions of Android (Jellybean-KitKat) have a bug where when dismissed, the {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java index be7e2c20378..6c5d7f2273c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java @@ -7,6 +7,7 @@ package com.facebook.react.modules.debug; import android.widget.Toast; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.JSApplicationCausedNativeException; import com.facebook.react.bridge.ReactApplicationContext; @@ -16,7 +17,6 @@ import com.facebook.react.common.ReactConstants; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.modules.debug.interfaces.DeveloperSettings; import java.util.Locale; -import javax.annotation.Nullable; /** * Module that records debug information during transitions (animated navigation events such as diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK index 36fde2d1993..a4fc63b6ad7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "debug", srcs = glob(["*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.java b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.java index 00ae7549eb7..1366a6fe694 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.java @@ -6,6 +6,7 @@ */ package com.facebook.react.modules.debug; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.UiThreadUtil; @@ -13,7 +14,6 @@ import com.facebook.react.modules.core.ChoreographerCompat; import com.facebook.react.uimanager.UIManagerModule; import java.util.Map; import java.util.TreeMap; -import javax.annotation.Nullable; /** * Each time a frame is drawn, records whether it should have expected any more callbacks since the diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java index 03ffb7de026..d3ac8526999 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java @@ -6,13 +6,13 @@ */ package com.facebook.react.modules.debug; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.ReactContext; import com.facebook.react.module.annotations.ReactModule; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** * Module that exposes the URL to the source code map (used for exception stack trace parsing) to JS diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK index e44249ce319..2a22a0b8aaf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "deviceinfo", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), react_native_target("java/com/facebook/react/common:common"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java index ab7c80c4397..d86062afd7d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java @@ -7,6 +7,7 @@ package com.facebook.react.modules.deviceinfo; import android.content.Context; +import androidx.annotation.Nullable; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.bridge.ReactApplicationContext; @@ -16,7 +17,6 @@ import com.facebook.react.turbomodule.core.interfaces.TurboModule; import com.facebook.react.uimanager.DisplayMetricsHolder; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** Module that exposes Android Constants to JS. */ @ReactModule(name = DeviceInfoModule.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java index 96ab234555f..3047cf7ed0c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java @@ -12,8 +12,8 @@ import android.app.Dialog; import android.content.Context; import android.content.DialogInterface; import android.os.Bundle; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; -import javax.annotation.Nullable; /** A fragment used to display the dialog. */ public class AlertFragment extends DialogFragment implements DialogInterface.OnClickListener { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java index 4621f493669..e8fee2f295b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java @@ -11,6 +11,8 @@ import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.DialogInterface.OnDismissListener; import android.os.Bundle; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import com.facebook.common.logging.FLog; @@ -26,8 +28,6 @@ import com.facebook.react.bridge.UiThreadUtil; import com.facebook.react.common.MapBuilder; import com.facebook.react.module.annotations.ReactModule; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; @ReactModule(name = DialogModule.NAME) public class DialogModule extends ReactContextBaseJavaModule implements LifecycleEventListener { @@ -62,16 +62,16 @@ public class DialogModule extends ReactContextBaseJavaModule implements Lifecycl } @Override - public @Nonnull String getName() { + public @NonNull String getName() { return NAME; } private class FragmentManagerHelper { - private final @Nonnull FragmentManager mFragmentManager; + private final @NonNull FragmentManager mFragmentManager; private @Nullable Object mFragmentToShow; - public FragmentManagerHelper(@Nonnull FragmentManager fragmentManager) { + public FragmentManagerHelper(@NonNull FragmentManager fragmentManager) { mFragmentManager = fragmentManager; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK index e7bda3dfae8..95014055aaf 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "image", srcs = glob(["*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fresco/fresco-react-native:fbcore"), react_native_dep("libraries/fresco/fresco-react-native:fresco-drawee"), react_native_dep("libraries/fresco/fresco-react-native:fresco-react-native"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java index 1818baa271b..888bd086669 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java @@ -8,6 +8,7 @@ package com.facebook.react.modules.image; import android.net.Uri; import android.util.SparseArray; +import androidx.annotation.Nullable; import com.facebook.common.executors.CallerThreadExecutor; import com.facebook.common.references.CloseableReference; import com.facebook.datasource.BaseDataSubscriber; @@ -31,7 +32,6 @@ import com.facebook.react.bridge.WritableMap; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.modules.fresco.ReactNetworkImageRequest; import com.facebook.react.views.imagehelper.ImageSource; -import javax.annotation.Nullable; @ReactModule(name = ImageLoaderModule.NAME) public class ImageLoaderModule extends ReactContextBaseJavaModule diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK index da676d6876a..99e3d164618 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "intent", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java index fc5dc82ea11..4bf5f5448de 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java @@ -13,6 +13,7 @@ import android.content.pm.PackageManager; import android.net.Uri; import android.nfc.NfcAdapter; import android.provider.Settings; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.Promise; import com.facebook.react.bridge.ReactApplicationContext; @@ -22,7 +23,6 @@ import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableType; import com.facebook.react.module.annotations.ReactModule; -import javax.annotation.Nullable; /** Intent module. Launch other activities or open URLs. */ @ReactModule(name = IntentModule.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK index 9e0f1a24874..c9c10b190f0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK @@ -3,6 +3,7 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "network", srcs = glob(["**/*.java"]), + is_androidx = True, provided_deps = [ react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/android/androidx:core"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java index dc7d4a457c2..e4d801a789b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java @@ -15,6 +15,7 @@ import android.text.TextUtils; import android.webkit.CookieManager; import android.webkit.CookieSyncManager; import android.webkit.ValueCallback; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.GuardedAsyncTask; import com.facebook.react.bridge.GuardedResultAsyncTask; @@ -25,7 +26,6 @@ import java.net.URI; import java.util.Collections; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** * Cookie handler that forwards all cookies to the WebView CookieManager. diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java index 22b1e5daf52..444c893989d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java @@ -8,6 +8,7 @@ package com.facebook.react.modules.network; import android.net.Uri; import android.util.Base64; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.GuardedAsyncTask; @@ -29,7 +30,6 @@ import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.Call; import okhttp3.Callback; import okhttp3.CookieJar; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java index eb495c48368..c2691af61d4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java @@ -8,6 +8,7 @@ package com.facebook.react.modules.network; import android.content.Context; import android.os.Build; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import java.io.File; import java.security.Provider; @@ -15,7 +16,6 @@ import java.security.Security; import java.util.ArrayList; import java.util.List; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.Cache; import okhttp3.ConnectionSpec; import okhttp3.OkHttpClient; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java index 6e219cfaa3f..f3ef4f9a28a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java @@ -5,8 +5,8 @@ package com.facebook.react.modules.network; +import androidx.annotation.Nullable; import java.io.IOException; -import javax.annotation.Nullable; import okhttp3.MediaType; import okhttp3.ResponseBody; import okio.Buffer; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java index ffca72e91d4..8818f0618bb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java @@ -6,10 +6,10 @@ */ package com.facebook.react.modules.network; +import androidx.annotation.Nullable; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import javax.annotation.Nullable; import okhttp3.Cookie; import okhttp3.CookieJar; import okhttp3.Headers; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java index 26b409bc41b..612f7768563 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java @@ -8,6 +8,7 @@ package com.facebook.react.modules.network; import android.content.Context; import android.net.Uri; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.common.ReactConstants; import java.io.ByteArrayOutputStream; @@ -21,7 +22,6 @@ import java.net.URL; import java.nio.channels.Channels; import java.nio.channels.ReadableByteChannel; import java.util.zip.GZIPOutputStream; -import javax.annotation.Nullable; import okhttp3.MediaType; import okhttp3.RequestBody; import okhttp3.internal.Util; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java index 046db432185..bd0762b25af 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java @@ -15,6 +15,7 @@ import android.os.Build; import android.view.View; import android.view.WindowInsets; import android.view.WindowManager; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.GuardedRunnable; @@ -28,7 +29,6 @@ import com.facebook.react.common.ReactConstants; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.PixelUtil; import java.util.Map; -import javax.annotation.Nullable; /** {@link NativeModule} that allows changing the appearance of the status bar. */ @ReactModule(name = StatusBarModule.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java index 5c150eb902e..122ab0ac97e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java @@ -14,10 +14,10 @@ import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; import java.util.Arrays; import java.util.Iterator; -import javax.annotation.Nullable; import org.json.JSONException; import org.json.JSONObject; diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java index a979f8a0b62..7d2317439fb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java @@ -6,9 +6,9 @@ */ package com.facebook.react.modules.storage; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.WritableMap; -import javax.annotation.Nullable; /** Helper class for database errors. */ public class AsyncStorageErrorUtil { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK index 237ba8a039e..518b61d7323 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "storage", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java index 1f539bbc411..fbb26589ded 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java @@ -10,9 +10,9 @@ import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.common.ReactConstants; -import javax.annotation.Nullable; /** * Database supplier of the database used by react native. This creates, opens and deletes the diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java index 1d53f6987b5..ef2ae931d9f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java @@ -14,6 +14,7 @@ import android.content.res.Configuration; import android.content.res.Resources; import android.os.Build; import android.provider.Settings.Secure; +import androidx.annotation.Nullable; import com.facebook.react.R; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; @@ -23,7 +24,6 @@ import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.turbomodule.core.interfaces.TurboModule; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** Module that exposes Android Constants to JS. */ @ReactModule(name = AndroidInfoModule.NAME) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK index 934de8ce659..2611bb14bf5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK @@ -6,11 +6,13 @@ rn_android_library( "AndroidInfoModule.java", "ReactNativeVersion.java", ], + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ react_native_dep("third-party/java/jsr-305:jsr-305"), + react_native_dep("third-party/android/androidx:annotation"), react_native_target("java/com/facebook/react/bridge:bridge"), react_native_target("java/com/facebook/react/common:common"), react_native_target("java/com/facebook/react/module/annotations:annotations"), @@ -27,6 +29,7 @@ rn_android_library( srcs = [ "AndroidInfoHelpers.java", ], + is_androidx = True, visibility = [ "PUBLIC", ], diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/DismissableTimePickerDialog.java b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/DismissableTimePickerDialog.java index f1216965730..56c261a7199 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/DismissableTimePickerDialog.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/DismissableTimePickerDialog.java @@ -9,7 +9,7 @@ package com.facebook.react.modules.timepicker; import android.app.TimePickerDialog; import android.content.Context; import android.os.Build; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * Certain versions of Android (Jellybean-KitKat) have a bug where when dismissed, the {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogFragment.java b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogFragment.java index 5e7e1b18823..ed408241e6d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogFragment.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogFragment.java @@ -14,10 +14,10 @@ import android.content.DialogInterface.OnDismissListener; import android.os.Build; import android.os.Bundle; import android.text.format.DateFormat; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import java.util.Calendar; import java.util.Locale; -import javax.annotation.Nullable; @SuppressWarnings("ValidFragment") public class TimePickerDialogFragment extends DialogFragment { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogModule.java index 52ae9ddddbd..5d3e8c5eea2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/timepicker/TimePickerDialogModule.java @@ -11,6 +11,7 @@ import android.content.DialogInterface; import android.content.DialogInterface.OnDismissListener; import android.os.Bundle; import android.widget.TimePicker; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; @@ -24,7 +25,6 @@ import com.facebook.react.bridge.WritableMap; import com.facebook.react.bridge.WritableNativeMap; import com.facebook.react.common.annotations.VisibleForTesting; import com.facebook.react.module.annotations.ReactModule; -import javax.annotation.Nullable; /** * {@link NativeModule} that allows JS to show a native time picker dialog and get called back when diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK index 22b82d1099c..aff006132f7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "react_native_tar rn_android_library( name = "websocket", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java index ed263573069..bfc83f6aff7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java @@ -6,6 +6,7 @@ */ package com.facebook.react.modules.websocket; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.ReactApplicationContext; @@ -29,7 +30,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK index 50ffba0ad27..00c073456a8 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK @@ -5,10 +5,12 @@ rn_android_library( srcs = glob( ["**/*.java"], ), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("java/com/facebook/jni:jni"), react_native_dep("java/com/facebook/proguard/annotations:annotations"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java index 4f7b6defa06..a416f27b355 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java @@ -9,6 +9,7 @@ package com.facebook.react.packagerconnection; import android.os.Handler; import android.os.Looper; import android.util.Base64; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import java.io.FileInputStream; import java.io.FileNotFoundException; @@ -16,7 +17,6 @@ import java.io.IOException; import java.util.HashMap; import java.util.Iterator; import java.util.Map; -import javax.annotation.Nullable; import org.json.JSONObject; public class FileIoHandler implements Runnable { diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java index 7b2cd502885..d4dfbef2989 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java @@ -7,10 +7,10 @@ package com.facebook.react.packagerconnection; import android.net.Uri; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.modules.systeminfo.AndroidInfoHelpers; import java.util.Map; -import javax.annotation.Nullable; import okio.ByteString; import org.json.JSONObject; diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.java index 0a89532116b..6342111d644 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.java @@ -6,8 +6,8 @@ */ package com.facebook.react.packagerconnection; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; -import javax.annotation.Nullable; public abstract class NotificationOnlyHandler implements RequestHandler { private static final String TAG = JSPackagerClient.class.getSimpleName(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.java index 6e0c81f6819..79be6b59542 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.java @@ -10,10 +10,10 @@ import android.content.Context; import android.content.SharedPreferences; import android.preference.PreferenceManager; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.modules.systeminfo.AndroidInfoHelpers; -import javax.annotation.Nullable; public class PackagerConnectionSettings { private static final String TAG = PackagerConnectionSettings.class.getSimpleName(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java index 79781ea0784..cd22fb1355f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java @@ -8,11 +8,11 @@ package com.facebook.react.packagerconnection; import android.os.Handler; import android.os.Looper; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import java.io.IOException; import java.nio.channels.ClosedChannelException; import java.util.concurrent.TimeUnit; -import javax.annotation.Nullable; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestHandler.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestHandler.java index bd6012f6b53..b5cb283db1a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestHandler.java @@ -6,7 +6,7 @@ */ package com.facebook.react.packagerconnection; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; public interface RequestHandler { void onRequest(@Nullable Object params, Responder responder); diff --git a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.java b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.java index 7e7ef505fe3..29949acec1e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.java @@ -6,8 +6,8 @@ */ package com.facebook.react.packagerconnection; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; -import javax.annotation.Nullable; public abstract class RequestOnlyHandler implements RequestHandler { private static final String TAG = JSPackagerClient.class.getSimpleName(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK b/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK index f88f4fe679b..208499085a4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK @@ -15,9 +15,11 @@ rn_java_annotation_processor( rn_java_library( name = "processing-lib", srcs = glob(["*.java"]), + is_androidx = True, source = "7", target = "7", deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/javapoet:javapoet"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java b/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java index 4ebe07c820f..f3f71f3a7a6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +++ b/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java @@ -11,6 +11,7 @@ import static javax.lang.model.element.Modifier.PUBLIC; import static javax.tools.Diagnostic.Kind.ERROR; import static javax.tools.Diagnostic.Kind.WARNING; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.SuppressFieldNotInitialized; import com.facebook.react.bridge.Dynamic; import com.facebook.react.bridge.DynamicFromObject; @@ -36,7 +37,6 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.Filer; import javax.annotation.processing.Messager; diff --git a/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java b/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java index 00761508e39..61ebefd96f5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +++ b/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java @@ -6,6 +6,7 @@ */ package com.facebook.react.shell; +import androidx.annotation.Nullable; import com.facebook.react.TurboReactPackage; import com.facebook.react.animated.NativeAnimatedModule; import com.facebook.react.bridge.NativeModule; @@ -64,7 +65,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** Package defining basic modules and view managers. */ @ReactModuleList( diff --git a/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK b/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK index 865b37c0592..bcd493aaf74 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK @@ -3,10 +3,12 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "rn_android_libra rn_android_library( name = "touch", srcs = glob(["**/*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), ], diff --git a/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.java b/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.java index e051d46816f..5c6be140658 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.java +++ b/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.java @@ -9,7 +9,7 @@ package com.facebook.react.touch; import android.view.MotionEvent; import android.view.ViewGroup; import android.view.ViewParent; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * This class coordinates JSResponder commands for {@link UIManagerModule}. It should be set as diff --git a/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.java b/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.java index 4c3cb688e8c..8366cca1ebb 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.java @@ -7,7 +7,7 @@ package com.facebook.react.touch; import android.graphics.Rect; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * This interface should be implemented by all {@link View} subclasses that want to use the hitSlop diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK index 43e4ba813d5..8709f438e48 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK @@ -13,6 +13,7 @@ rn_android_library( "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("java/com/facebook/proguard/annotations:annotations"), react_native_dep("java/com/facebook/systrace:systrace"), react_native_dep("libraries/soloader/java/com/facebook/soloader:soloader"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/ReactPackageTurboModuleManagerDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/ReactPackageTurboModuleManagerDelegate.java index e80ee6e169c..fb307764db8 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/ReactPackageTurboModuleManagerDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/ReactPackageTurboModuleManagerDelegate.java @@ -2,6 +2,7 @@ package com.facebook.react.turbomodule.core; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.ReactPackage; @@ -14,7 +15,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; public abstract class ReactPackageTurboModuleManagerDelegate extends TurboModuleManagerDelegate { private final List mPackages = new ArrayList<>(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java index 5a8b64cb89f..455050736c9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java @@ -6,6 +6,7 @@ */ package com.facebook.react.turbomodule.core; +import androidx.annotation.Nullable; import com.facebook.jni.HybridData; import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.bridge.JSIModule; @@ -16,7 +17,6 @@ import com.facebook.react.turbomodule.core.interfaces.TurboModule; import com.facebook.react.turbomodule.core.interfaces.TurboModuleRegistry; import com.facebook.soloader.SoLoader; import java.util.*; -import javax.annotation.Nullable; /** * This is the main class and entry point for TurboModules. Note that this is a hybrid class, and diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java index a28710a2888..f5b8875749a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java @@ -6,11 +6,11 @@ */ package com.facebook.react.turbomodule.core; +import androidx.annotation.Nullable; import com.facebook.jni.HybridData; import com.facebook.react.bridge.CxxModuleWrapper; import com.facebook.react.turbomodule.core.interfaces.TurboModule; import com.facebook.soloader.SoLoader; -import javax.annotation.Nullable; public abstract class TurboModuleManagerDelegate { static { diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK index fac8ba723f9..e48328e0729 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK @@ -5,11 +5,13 @@ rn_android_library( srcs = glob( ["*.java"], ), + is_androidx = True, required_for_source_only_abi = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), ], ) diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModuleRegistry.java b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModuleRegistry.java index 4a4507e4d43..d0e8d7c1058 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModuleRegistry.java +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModuleRegistry.java @@ -6,8 +6,8 @@ */ package com.facebook.react.turbomodule.core.interfaces; +import androidx.annotation.Nullable; import java.util.Collection; -import javax.annotation.Nullable; /** Interface to allow for creating and retrieving TurboModuels. */ public interface TurboModuleRegistry { diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK index 17870c5aa5f..33eeffd0434 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK @@ -47,6 +47,7 @@ rn_android_library( ], exported_deps = [ ":DisplayMetrics", + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/uimanager/common:common"), ], @@ -58,12 +59,16 @@ rn_android_library( "DisplayMetricsHolder.java", ], is_androidx = True, + provided_deps = [ + react_native_dep("third-party/android/androidx:annotation"), + ], required_for_source_only_abi = True, visibility = [ "PUBLIC", ], deps = [ react_native_dep("third-party/java/infer-annotations:infer-annotations"), + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), ], diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java index a74994f6fac..d613f2fd3df 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java @@ -9,6 +9,8 @@ import android.graphics.Color; import android.text.TextUtils; import android.view.View; import android.view.ViewParent; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.react.R; import com.facebook.react.bridge.Dynamic; @@ -24,8 +26,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Base class that should be suitable for the majority of subclasses of {@link ViewManager}. It @@ -85,12 +85,12 @@ public abstract class BaseViewManager diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java index d42e47e8c9c..5ee73c48894 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java @@ -8,6 +8,8 @@ package com.facebook.react.uimanager; import android.content.Context; import android.view.View; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.react.bridge.BaseJavaModule; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReadableArray; @@ -19,8 +21,6 @@ import com.facebook.react.uimanager.annotations.ReactPropGroup; import com.facebook.react.uimanager.annotations.ReactPropertyHolder; import com.facebook.yoga.YogaMeasureMode; import java.util.Map; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * Class responsible for knowing how to create and update catalyst Views of a given type. It is also @@ -39,20 +39,20 @@ public abstract class ViewManager * @param props * @param stateWrapper */ - public void updateProperties(@Nonnull T viewToUpdate, ReactStylesDiffMap props) { + public void updateProperties(@NonNull T viewToUpdate, ReactStylesDiffMap props) { ViewManagerPropertyUpdater.updateProps(this, viewToUpdate, props); onAfterUpdateTransaction(viewToUpdate); } /** Creates a view and installs event emitters on it. */ - private final @Nonnull T createView( - @Nonnull ThemedReactContext reactContext, JSResponderHandler jsResponderHandler) { + private final @NonNull T createView( + @NonNull ThemedReactContext reactContext, JSResponderHandler jsResponderHandler) { return createView(reactContext, null, null, jsResponderHandler); } /** Creates a view with knowledge of props. */ - public @Nonnull T createView( - @Nonnull ThemedReactContext reactContext, + public @NonNull T createView( + @NonNull ThemedReactContext reactContext, @Nullable ReactStylesDiffMap props, @Nullable StateWrapper stateWrapper, JSResponderHandler jsResponderHandler) { @@ -68,7 +68,7 @@ public abstract class ViewManager * @return the name of this view manager. This will be the name used to reference this view * manager from JavaScript in createReactNativeComponentClass. */ - public abstract @Nonnull String getName(); + public abstract @NonNull String getName(); /** * This method should return a subclass of {@link ReactShadowNode} which will be then used for @@ -79,7 +79,7 @@ public abstract class ViewManager throw new RuntimeException("ViewManager subclasses must implement createShadowNodeInstance()"); } - public @Nonnull C createShadowNodeInstance(@Nonnull ReactApplicationContext context) { + public @NonNull C createShadowNodeInstance(@NonNull ReactApplicationContext context) { return createShadowNodeInstance(); } @@ -100,7 +100,7 @@ public abstract class ViewManager * * @param reactContext */ - protected abstract @Nonnull T createViewInstance(@Nonnull ThemedReactContext reactContext); + protected abstract @NonNull T createViewInstance(@NonNull ThemedReactContext reactContext); /** * Subclasses should return a new View instance of the proper type. This is an optional method @@ -109,8 +109,8 @@ public abstract class ViewManager * * @param reactContext */ - protected @Nonnull T createViewInstance( - @Nonnull ThemedReactContext reactContext, + protected @NonNull T createViewInstance( + @NonNull ThemedReactContext reactContext, @Nullable ReactStylesDiffMap initialProps, @Nullable StateWrapper stateWrapper) { T view = createViewInstance(reactContext); @@ -124,14 +124,14 @@ public abstract class ViewManager * Called when view is detached from view hierarchy and allows for some additional cleanup by the * {@link ViewManager} subclass. */ - public void onDropViewInstance(@Nonnull T view) {} + public void onDropViewInstance(@NonNull T view) {} /** * Subclasses can override this method to install custom event emitters on the given View. You * might want to override this method if your view needs to emit events besides basic touch events * to JS (e.g. scroll events). */ - protected void addEventEmitters(@Nonnull ThemedReactContext reactContext, @Nonnull T view) {} + protected void addEventEmitters(@NonNull ThemedReactContext reactContext, @NonNull T view) {} /** * Callback that will be triggered after all properties are updated in current update transaction @@ -139,7 +139,7 @@ public abstract class ViewManager * you want to override this method you should call super.onAfterUpdateTransaction from it as the * parent class of the ViewManager may rely on callback being executed. */ - protected void onAfterUpdateTransaction(@Nonnull T view) {} + protected void onAfterUpdateTransaction(@NonNull T view) {} /** * Subclasses can implement this method to receive an optional extra data enqueued from the @@ -152,7 +152,7 @@ public abstract class ViewManager * *

TODO(7247021): Replace updateExtraData with generic update props mechanism after D2086999 */ - public abstract void updateExtraData(@Nonnull T root, Object extraData); + public abstract void updateExtraData(@NonNull T root, Object extraData); /** * Subclasses may use this method to receive events/commands directly from JS through the {@link @@ -166,7 +166,7 @@ public abstract class ViewManager * @param args optional arguments for the command */ @Deprecated - public void receiveCommand(@Nonnull T root, int commandId, @Nullable ReadableArray args) {} + public void receiveCommand(@NonNull T root, int commandId, @Nullable ReadableArray args) {} /** * Subclasses may use this method to receive events/commands directly from JS through the {@link @@ -177,7 +177,7 @@ public abstract class ViewManager * @param commandId code of the command * @param args optional arguments for the command */ - public void receiveCommand(@Nonnull T root, String commandId, @Nullable ReadableArray args) {} + public void receiveCommand(@NonNull T root, String commandId, @Nullable ReadableArray args) {} /** * Subclasses of {@link ViewManager} that expect to receive commands through {@link @@ -244,7 +244,7 @@ public abstract class ViewManager } public @Nullable Object updateLocalData( - @Nonnull T view, ReactStylesDiffMap props, ReactStylesDiffMap localData) { + @NonNull T view, ReactStylesDiffMap props, ReactStylesDiffMap localData) { return null; } @@ -253,7 +253,7 @@ public abstract class ViewManager * this component type. */ public @Nullable Object updateState( - @Nonnull T view, ReactStylesDiffMap props, StateWrapper stateWrapper) { + @NonNull T view, ReactStylesDiffMap props, StateWrapper stateWrapper) { return null; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java index fb202d48e7b..1927973096d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java @@ -6,10 +6,10 @@ */ package com.facebook.react.uimanager; +import androidx.annotation.Nullable; import com.facebook.react.common.MapBuilder; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** * Class that stores the mapping between native view name used in JS and the corresponding instance diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java index f4fe8a45ee4..aeb0a41e1ba 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java @@ -6,6 +6,7 @@ package com.facebook.react.uimanager; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Dynamic; import com.facebook.react.bridge.DynamicFromObject; @@ -18,7 +19,6 @@ import java.lang.reflect.Method; import java.util.Arrays; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; /** * This class is responsible for holding view manager property setters and is used in a process of diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK index 79fad4e0ffe..3ecec7beea0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK @@ -3,11 +3,13 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "rn_android_libra rn_android_library( name = "annotations", srcs = glob(["*.java"]), + is_androidx = True, required_for_source_only_abi = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), ], ) diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java index 0685c2412d2..6a32693bae9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java @@ -7,10 +7,10 @@ package com.facebook.react.uimanager.annotations; import static java.lang.annotation.RetentionPolicy.RUNTIME; +import androidx.annotation.Nullable; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.Target; -import javax.annotation.Nullable; /** * Use this annotation to annotate properties of native views that should be exposed to JS. This diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java index 55c64dccfaf..9b6840262b9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java @@ -7,10 +7,10 @@ package com.facebook.react.uimanager.annotations; import static java.lang.annotation.RetentionPolicy.RUNTIME; +import androidx.annotation.Nullable; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.Target; -import javax.annotation.Nullable; /** * Use this annotation to annotate group of properties of native views that should be exposed to JS. diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java index 8102b36da3b..f622373558e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java @@ -6,10 +6,10 @@ */ package com.facebook.react.uimanager.events; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JavaScriptModule; import com.facebook.react.bridge.WritableArray; import com.facebook.react.bridge.WritableMap; -import javax.annotation.Nullable; public interface RCTEventEmitter extends JavaScriptModule { void receiveEvent(int targetTag, String eventName, @Nullable WritableMap event); diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java index 5e73266613f..377bb05387c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java @@ -9,13 +9,13 @@ package com.facebook.react.uimanager.events; import static com.facebook.react.uimanager.events.TouchesHelper.TARGET_KEY; import android.util.SparseArray; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.WritableArray; import com.facebook.react.bridge.WritableMap; import com.facebook.react.uimanager.common.UIManagerType; import com.facebook.react.uimanager.common.ViewUtil; -import javax.annotation.Nullable; public class ReactEventEmitter implements RCTEventEmitter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java index cd0166cfff3..19a27482bc1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java @@ -7,10 +7,10 @@ package com.facebook.react.uimanager.events; import android.view.MotionEvent; +import androidx.annotation.Nullable; import androidx.core.util.Pools; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.SoftAssertions; -import javax.annotation.Nullable; /** * An event representing the start, end or movement of a touch. Corresponds to a single {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java index 8f6eb5ab6b0..cf5fe61acad 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java @@ -13,11 +13,11 @@ import android.view.animation.BaseInterpolator; import android.view.animation.DecelerateInterpolator; import android.view.animation.Interpolator; import android.view.animation.LinearInterpolator; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.common.MapBuilder; import com.facebook.react.uimanager.IllegalViewOperationException; import java.util.Map; -import javax.annotation.Nullable; /** * Class responsible for parsing and converting layout animation data into native {@link Animation} diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java index 092db347283..55c3bea2ca9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java @@ -11,10 +11,10 @@ import android.util.SparseArray; import android.view.View; import android.view.ViewGroup; import android.view.animation.Animation; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.UiThreadUtil; -import javax.annotation.Nullable; import javax.annotation.concurrent.NotThreadSafe; /** diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.java index 549281daa16..fbc657e9348 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.java @@ -8,7 +8,7 @@ package com.facebook.react.uimanager.layoutanimation; import android.view.View; import android.view.animation.Animation; import android.view.animation.TranslateAnimation; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * Class responsible for handling layout update animation, applied to view whenever a valid config diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTGroupShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTGroupShadowNode.java index 29b98be36c8..6de587ca942 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTGroupShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTGroupShadowNode.java @@ -10,10 +10,10 @@ import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.RectF; import android.graphics.Region; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** Shadow node for virtual ARTGroup view */ public class ARTGroupShadowNode extends ARTVirtualNode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTShapeShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTShapeShadowNode.java index 2f3111c88d9..91c6a5b2441 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTShapeShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTShapeShadowNode.java @@ -14,12 +14,12 @@ import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; import android.graphics.Shader; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.common.ReactConstants; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** Shadow node for virtual ARTShape view */ public class ARTShapeShadowNode extends ARTVirtualNode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTSurfaceViewShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTSurfaceViewShadowNode.java index 576dd05facd..4d23fad0581 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTSurfaceViewShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTSurfaceViewShadowNode.java @@ -14,6 +14,7 @@ import android.graphics.SurfaceTexture; import android.os.Build; import android.view.Surface; import android.view.TextureView; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.common.ReactConstants; @@ -23,7 +24,6 @@ import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.UIViewOperationQueue; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** Shadow node for ART virtual tree root - ARTSurfaceView */ public class ARTSurfaceViewShadowNode extends LayoutShadowNode diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTTextShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTTextShadowNode.java index 139ab5f6c69..2d15236ab0e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTTextShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTTextShadowNode.java @@ -10,10 +10,10 @@ import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Typeface; import android.text.TextUtils; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** Shadow node for virtual ARTText view */ public class ARTTextShadowNode extends ARTShapeShadowNode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTVirtualNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTVirtualNode.java index 403cf21c5a8..82850161acc 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTVirtualNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/ARTVirtualNode.java @@ -9,12 +9,12 @@ package com.facebook.react.views.art; import android.graphics.Canvas; import android.graphics.Matrix; import android.graphics.Paint; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.uimanager.DisplayMetricsHolder; import com.facebook.react.uimanager.ReactShadowNodeImpl; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** * Base class for ARTView virtual nodes: {@link ARTGroupShadowNode}, {@link ARTShapeShadowNode} and diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/art/BUCK index 23b3b7ce773..b5eae199917 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/BUCK @@ -3,11 +3,13 @@ load("//tools/build_defs/oss:rn_defs.bzl", "YOGA_TARGET", "react_native_dep", "r rn_android_library( name = "art", srcs = glob(["*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ YOGA_TARGET, + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/art/PropHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/art/PropHelper.java index f883211f005..4adb76cb3ba 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/art/PropHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/art/PropHelper.java @@ -6,8 +6,8 @@ */ package com.facebook.react.views.art; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; -import javax.annotation.Nullable; /** Contains static helper methods for accessing props. */ /* package */ class PropHelper { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java index bc9a8d3455c..7634e5160e6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java @@ -10,6 +10,7 @@ import android.content.Context; import android.content.res.ColorStateList; import android.util.TypedValue; import android.widget.CompoundButton; +import androidx.annotation.Nullable; import androidx.appcompat.widget.TintContextWrapper; import androidx.core.widget.CompoundButtonCompat; import com.facebook.react.bridge.ReactContext; @@ -19,7 +20,6 @@ import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** View manager for {@link ReactCheckBox} components. */ public class ReactCheckBoxManager extends SimpleViewManager { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK index a9d47513c2d..b6a8fbdbde9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK @@ -3,6 +3,7 @@ load("//tools/build_defs/oss:rn_defs.bzl", "react_native_dep", "rn_android_libra rn_android_library( name = "common", srcs = glob(["*.java"]), + is_androidx = True, provided_deps = [ react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_dep("third-party/android/androidx:annotation"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.java b/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.java index 682b92395fb..f7272aefd20 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.java @@ -8,7 +8,7 @@ package com.facebook.react.views.common; import android.content.Context; import android.content.ContextWrapper; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * Class containing static methods involving manipulations of Contexts and their related subclasses. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java index 003bfca0842..99c8f259d39 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java @@ -9,6 +9,7 @@ package com.facebook.react.views.drawer; import android.os.Build; import android.view.Gravity; import android.view.View; +import androidx.annotation.Nullable; import androidx.drawerlayout.widget.DrawerLayout; import com.facebook.common.logging.FLog; import com.facebook.react.bridge.Dynamic; @@ -30,7 +31,6 @@ import com.facebook.react.views.drawer.events.DrawerSlideEvent; import com.facebook.react.views.drawer.events.DrawerStateChangedEvent; import java.lang.reflect.Method; import java.util.Map; -import javax.annotation.Nullable; /** View Manager for {@link ReactDrawerLayout} components. */ @ReactModule(name = ReactDrawerLayoutManager.REACT_CLASS) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java b/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java index fc19da7291b..6a9e0b38d1c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java @@ -7,13 +7,13 @@ package com.facebook.react.views.image; import androidx.annotation.IntDef; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.WritableMap; import com.facebook.react.uimanager.events.Event; import com.facebook.react.uimanager.events.RCTEventEmitter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -import javax.annotation.Nullable; public class ImageLoadEvent extends Event { @IntDef({ON_ERROR, ON_LOAD, ON_LOAD_END, ON_LOAD_START, ON_PROGRESS}) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java b/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java index 77dc796274c..b239454f1a9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java @@ -7,9 +7,9 @@ package com.facebook.react.views.image; import android.graphics.Shader; +import androidx.annotation.Nullable; import com.facebook.drawee.drawable.ScalingUtils; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; -import javax.annotation.Nullable; /** Converts JS resize modes into Android-specific scale type. */ public class ImageResizeMode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java index f6dd953518a..86e3c806c33 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java @@ -8,6 +8,7 @@ package com.facebook.react.views.image; import android.graphics.Color; import android.graphics.PorterDuff.Mode; +import androidx.annotation.Nullable; import com.facebook.drawee.backends.pipeline.Fresco; import com.facebook.drawee.controller.AbstractDraweeControllerBuilder; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; @@ -23,7 +24,6 @@ import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.annotations.ReactPropGroup; import com.facebook.yoga.YogaConstants; import java.util.Map; -import javax.annotation.Nullable; @ReactModule(name = ReactImageManager.REACT_CLASS) public class ReactImageManager extends SimpleViewManager { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java index 38a53e20966..c8a44a5a28e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java @@ -21,6 +21,7 @@ import android.graphics.drawable.Animatable; import android.graphics.drawable.Drawable; import android.net.Uri; import android.widget.Toast; +import androidx.annotation.Nullable; import com.facebook.common.references.CloseableReference; import com.facebook.common.util.UriUtil; import com.facebook.drawee.controller.AbstractDraweeControllerBuilder; @@ -59,7 +60,6 @@ import com.facebook.yoga.YogaConstants; import java.util.Arrays; import java.util.LinkedList; import java.util.List; -import javax.annotation.Nullable; /** * Wrapper class around Fresco's GenericDraweeView, enabling persisting props across multiple view diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK index ab328b40c0f..b870bef0195 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK @@ -6,10 +6,12 @@ rn_android_library( ["*.java"], exclude = ["MultiSourceHelper.java"], ), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), ], @@ -18,10 +20,12 @@ rn_android_library( rn_android_library( name = "withmultisource", srcs = ["MultiSourceHelper.java"], + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fresco/fresco-react-native:imagepipeline"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java index d79b7a54ced..ddad186fe2f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java @@ -8,8 +8,8 @@ package com.facebook.react.views.imagehelper; import android.content.Context; import android.net.Uri; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; -import javax.annotation.Nullable; /** Class describing an image source (network URI or resource) and size. */ public class ImageSource { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.java index 8355956d975..f1ecd049f01 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.java @@ -6,10 +6,10 @@ */ package com.facebook.react.views.imagehelper; +import androidx.annotation.Nullable; import com.facebook.imagepipeline.core.ImagePipeline; import com.facebook.imagepipeline.core.ImagePipelineFactory; import java.util.List; -import javax.annotation.Nullable; /** Helper class for dealing with multisource images. */ public class MultiSourceHelper { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java index 6c64e23eb15..73c6ae584e1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java @@ -9,9 +9,9 @@ package com.facebook.react.views.imagehelper; import android.content.Context; import android.graphics.drawable.Drawable; import android.net.Uri; +import androidx.annotation.Nullable; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; import javax.annotation.concurrent.ThreadSafe; /** Helper class for obtaining information about local images. */ diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java index ba6d0594554..2bfe9b71c7f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java @@ -19,6 +19,7 @@ import android.view.ViewStructure; import android.view.WindowManager; import android.view.accessibility.AccessibilityEvent; import android.widget.FrameLayout; +import androidx.annotation.Nullable; import androidx.annotation.UiThread; import com.facebook.infer.annotation.Assertions; import com.facebook.react.R; @@ -37,7 +38,6 @@ import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.react.views.common.ContextUtils; import com.facebook.react.views.view.ReactViewGroup; import java.util.ArrayList; -import javax.annotation.Nullable; /** * ReactModalHostView is a view that sits in the view hierarchy representing a Modal view. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java index 4e75e504a2b..6da5b6e9b2b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java @@ -11,10 +11,10 @@ import android.util.AttributeSet; import android.view.View; import android.widget.AdapterView; import android.widget.Spinner; +import androidx.annotation.Nullable; import androidx.appcompat.widget.AppCompatSpinner; import com.facebook.react.common.annotations.VisibleForTesting; import java.util.List; -import javax.annotation.Nullable; public class ReactPicker extends AppCompatSpinner { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java index 5dea24204ee..16e502f58d9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java @@ -6,9 +6,9 @@ import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.TextView; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import java.util.List; -import javax.annotation.Nullable; /* package */ class ReactPickerAdapter extends ArrayAdapter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java index 5b102150701..b50c56fad59 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java @@ -1,10 +1,10 @@ package com.facebook.react.views.picker; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; /* package */ class ReactPickerItem { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java index e3f42a92c4a..daea3abeb28 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java @@ -7,6 +7,7 @@ package com.facebook.react.views.picker; import android.widget.Spinner; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; @@ -16,7 +17,6 @@ import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.react.views.picker.events.PickerItemSelectEvent; import java.util.List; -import javax.annotation.Nullable; /** * {@link ViewManager} for the {@link ReactPicker} view. This is abstract because the {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK index 54afb8816c9..70bf5aea089 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK @@ -3,11 +3,13 @@ load("//tools/build_defs/oss:rn_defs.bzl", "YOGA_TARGET", "react_native_dep", "r rn_android_library( name = "progressbar", srcs = glob(["*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ YOGA_TARGET, + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/infer-annotations:infer-annotations"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.java b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.java index a4b4a85f5fb..d1be247f0e5 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.java @@ -12,8 +12,8 @@ import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; import android.widget.ProgressBar; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; -import javax.annotation.Nullable; /** * Controls an enclosing ProgressBar. Exists so that the ProgressBar can be recreated if the style diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.java index c176549b884..2277e40e477 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.java @@ -10,6 +10,7 @@ import android.util.SparseIntArray; import android.view.View; import android.view.ViewGroup; import android.widget.ProgressBar; +import androidx.annotation.Nullable; import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.yoga.YogaMeasureFunction; @@ -18,7 +19,6 @@ import com.facebook.yoga.YogaMeasureOutput; import com.facebook.yoga.YogaNode; import java.util.HashSet; import java.util.Set; -import javax.annotation.Nullable; /** * Node responsible for holding the style of the ProgressBar, see under {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java index 54e3fd604e4..2da1e426409 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java @@ -8,13 +8,13 @@ package com.facebook.react.views.progressbar; import android.content.Context; import android.widget.ProgressBar; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.BaseViewManager; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** * Manages instances of ProgressBar. ProgressBar is wrapped in a ProgressBarContainerView because diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java index 407b1a87d8a..b0c12831a01 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java @@ -19,6 +19,7 @@ import android.view.MotionEvent; import android.view.View; import android.widget.HorizontalScrollView; import android.widget.OverScroller; +import androidx.annotation.Nullable; import androidx.core.text.TextUtilsCompat; import androidx.core.view.ViewCompat; import com.facebook.infer.annotation.Assertions; @@ -33,7 +34,6 @@ import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; import java.util.Locale; -import javax.annotation.Nullable; /** Similar to {@link ReactScrollView} but only supports horizontal scrolling. */ public class ReactHorizontalScrollView extends HorizontalScrollView diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java index 14796cd48a3..a8c9898e10d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java @@ -8,6 +8,7 @@ package com.facebook.react.views.scroll; import android.graphics.Color; import android.util.DisplayMetrics; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.module.annotations.ReactModule; @@ -23,7 +24,6 @@ import com.facebook.react.uimanager.annotations.ReactPropGroup; import com.facebook.yoga.YogaConstants; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; /** * View manager for {@link ReactHorizontalScrollView} components. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java index 433583ee200..db071fbb49d 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java @@ -18,6 +18,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.OverScroller; import android.widget.ScrollView; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; @@ -30,7 +31,6 @@ import com.facebook.react.uimanager.events.NativeGestureUtil; import com.facebook.react.views.view.ReactViewBackgroundManager; import java.lang.reflect.Field; import java.util.List; -import javax.annotation.Nullable; /** * A simple subclass of ScrollView that doesn't dispatch measure and layout to its children and has diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java index f7a579e800e..2b1f83becd6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java @@ -6,12 +6,12 @@ */ package com.facebook.react.views.scroll; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.common.MapBuilder; import com.facebook.react.uimanager.PixelUtil; import java.util.Map; -import javax.annotation.Nullable; /** * Helper for view managers to handle commands like 'scrollTo'. Shared by {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java index c19262a1847..cb8befaca24 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java @@ -8,6 +8,7 @@ package com.facebook.react.views.scroll; import android.graphics.Color; import android.util.DisplayMetrics; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.common.MapBuilder; @@ -25,7 +26,6 @@ import com.facebook.yoga.YogaConstants; import java.util.ArrayList; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** * View manager for {@link ReactScrollView} components. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java index 9db4cb20ba3..1dcc8580d6b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java @@ -6,6 +6,7 @@ */ package com.facebook.react.views.scroll; +import androidx.annotation.Nullable; import androidx.core.util.Pools; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Arguments; @@ -13,7 +14,6 @@ import com.facebook.react.bridge.WritableMap; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.events.Event; import com.facebook.react.uimanager.events.RCTEventEmitter; -import javax.annotation.Nullable; /** A event dispatched from a ScrollView scrolling. */ public class ScrollEvent extends Event { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VelocityHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VelocityHelper.java index 010f3a9d572..1662cdc3cf8 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VelocityHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VelocityHelper.java @@ -8,7 +8,7 @@ package com.facebook.react.views.scroll; import android.view.MotionEvent; import android.view.VelocityTracker; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** * This Class helps to calculate the velocity for all ScrollView. The x and y velocity will later on diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java index 7b0bc28e90f..94227a4ed1a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java @@ -9,8 +9,8 @@ package com.facebook.react.views.slider; import android.content.Context; import android.os.Build; import android.util.AttributeSet; +import androidx.annotation.Nullable; import androidx.appcompat.widget.AppCompatSeekBar; -import javax.annotation.Nullable; /** * Slider that behaves more like the iOS one, for consistency. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java index 2e3742eecc3..539f2e721af 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java @@ -9,6 +9,7 @@ package com.facebook.react.views.swiperefresh; import static com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager.REACT_CLASS; import android.graphics.Color; +import androidx.annotation.Nullable; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener; import com.facebook.react.bridge.Dynamic; @@ -22,7 +23,6 @@ import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; import java.util.Map; -import javax.annotation.Nullable; /** * ViewManager for {@link ReactSwipeRefreshLayout} which allows the user to "pull to refresh" a diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK index f70906c8ef4..207413635a4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK @@ -5,7 +5,6 @@ rn_android_library( srcs = glob(["*.java"]), is_androidx = True, provided_deps = [ - react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/android/androidx:appcompat"), react_native_dep("third-party/android/androidx:core"), react_native_dep("third-party/android/androidx:fragment"), @@ -17,6 +16,7 @@ rn_android_library( ], deps = [ YOGA_TARGET, + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), react_native_target("java/com/facebook/react/bridge:bridge"), react_native_target("java/com/facebook/react/common:common"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java index 4ae5930a1ba..4a49aa4e8b2 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java @@ -9,8 +9,8 @@ package com.facebook.react.views.switchview; import android.content.Context; import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; +import androidx.annotation.Nullable; import androidx.appcompat.widget.SwitchCompat; -import javax.annotation.Nullable; /** * Switch that has its value controlled by JS. Whenever the value of the switch changes, we do not diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java index 03dfc9e34a1..819a9c8e4c1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java @@ -10,6 +10,7 @@ package com.facebook.react.views.switchview; import android.view.View; import android.widget.CompoundButton; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReactContext; import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.SimpleViewManager; @@ -21,7 +22,6 @@ import com.facebook.yoga.YogaMeasureFunction; import com.facebook.yoga.YogaMeasureMode; import com.facebook.yoga.YogaMeasureOutput; import com.facebook.yoga.YogaNode; -import javax.annotation.Nullable; /** View manager for {@link ReactSwitch} components. */ public class ReactSwitchManager extends SimpleViewManager { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java index 8b9c541ae04..308cedb2af4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java @@ -14,6 +14,7 @@ import android.text.Layout; import android.text.Spannable; import android.text.SpannableStringBuilder; import android.view.Gravity; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableMap; @@ -31,7 +32,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; /** * {@link ReactShadowNode} abstract class for spannable text nodes. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java index 2b3ccf79059..8814d55215a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java @@ -6,11 +6,11 @@ */ package com.facebook.react.views.text; +import androidx.annotation.Nullable; import com.facebook.react.common.annotations.VisibleForTesting; import com.facebook.react.uimanager.ReactShadowNode; import com.facebook.react.uimanager.ReactShadowNodeImpl; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** * {@link ReactShadowNode} class for pure raw text node (aka {@code textContent} in terms of DOM). diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java index f0fd027d478..4d80b3edf34 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java @@ -11,6 +11,7 @@ import android.text.TextUtils; import android.text.util.Linkify; import android.view.Gravity; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.uimanager.BaseViewManager; import com.facebook.react.uimanager.PixelUtil; @@ -20,7 +21,6 @@ import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.annotations.ReactPropGroup; import com.facebook.yoga.YogaConstants; -import javax.annotation.Nullable; /** * Abstract class for anchor {@code }-ish spannable views, such as {@link TextView} or {@link diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java index 3467aebdc0c..7dd10534978 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java @@ -16,6 +16,7 @@ import android.text.StaticLayout; import android.text.TextPaint; import android.view.Gravity; import android.widget.TextView; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.WritableArray; @@ -33,7 +34,6 @@ import com.facebook.yoga.YogaMeasureMode; import com.facebook.yoga.YogaMeasureOutput; import com.facebook.yoga.YogaNode; import java.util.ArrayList; -import javax.annotation.Nullable; /** * {@link ReactBaseTextShadowNode} concrete class for anchor {@code Text} node. diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java index 428f05b0b46..9087ba2bb04 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java @@ -18,6 +18,7 @@ import android.text.util.Linkify; import android.view.Gravity; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.Nullable; import androidx.appcompat.widget.AppCompatTextView; import androidx.appcompat.widget.TintContextWrapper; import com.facebook.common.logging.FLog; @@ -35,7 +36,6 @@ import com.facebook.react.views.view.ReactViewBackgroundManager; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; -import javax.annotation.Nullable; public class ReactTextView extends AppCompatTextView implements ReactCompoundView { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java index cab6796da5c..7bd93bf1a5a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java @@ -9,6 +9,7 @@ package com.facebook.react.views.text; import android.content.Context; import android.text.Layout; import android.text.Spannable; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.common.MapBuilder; import com.facebook.react.common.annotations.VisibleForTesting; @@ -19,7 +20,6 @@ import com.facebook.react.uimanager.StateWrapper; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.yoga.YogaMeasureMode; import java.util.Map; -import javax.annotation.Nullable; /** * Concrete class for {@link ReactTextAnchorViewManager} which represents view managers of anchor diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java index f3478e14aaa..be5b74ff95e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java @@ -10,13 +10,13 @@ import android.graphics.Typeface; import android.os.Build; import android.text.Layout; import android.view.Gravity; +import androidx.annotation.Nullable; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.ReactStylesDiffMap; import com.facebook.react.uimanager.ViewProps; import com.facebook.yoga.YogaDirection; -import javax.annotation.Nullable; public class TextAttributeProps { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/TextInlineImageSpan.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/TextInlineImageSpan.java index fa85c69e121..da63d823e5b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/TextInlineImageSpan.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/TextInlineImageSpan.java @@ -11,7 +11,7 @@ import android.text.Spannable; import android.text.style.ReplacementSpan; import android.view.View; import android.widget.TextView; -import javax.annotation.Nullable; +import androidx.annotation.Nullable; /** Base class for inline image spans. */ public abstract class TextInlineImageSpan extends ReplacementSpan implements ReactSpan { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK index 17b9ed51457..b7d46593804 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK @@ -3,11 +3,13 @@ load("//tools/build_defs/oss:rn_defs.bzl", "YOGA_TARGET", "react_native_dep", "r rn_android_library( name = "frescosupport", srcs = glob(["*.java"]), + is_androidx = True, visibility = [ "PUBLIC", ], deps = [ YOGA_TARGET, + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("libraries/fresco/fresco-react-native:fbcore"), react_native_dep("libraries/fresco/fresco-react-native:fresco-drawee"), react_native_dep("libraries/fresco/fresco-react-native:fresco-react-native"), diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java index 1b168d21361..8e6e9b009d6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java @@ -9,6 +9,7 @@ package com.facebook.react.views.text.frescosupport; import android.content.Context; import android.content.res.Resources; import android.net.Uri; +import androidx.annotation.Nullable; import com.facebook.common.util.UriUtil; import com.facebook.drawee.controller.AbstractDraweeControllerBuilder; import com.facebook.react.bridge.Dynamic; @@ -21,7 +22,6 @@ import com.facebook.react.views.text.ReactTextInlineImageShadowNode; import com.facebook.react.views.text.TextInlineImageSpan; import com.facebook.yoga.YogaConstants; import java.util.Locale; -import javax.annotation.Nullable; /** Shadow node that represents an inline image. Loading is done using Fresco. */ public class FrescoBasedReactTextInlineImageShadowNode extends ReactTextInlineImageShadowNode { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java index 428d22f9358..6521143d4e7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java @@ -13,6 +13,7 @@ import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; import android.net.Uri; import android.widget.TextView; +import androidx.annotation.Nullable; import com.facebook.drawee.controller.AbstractDraweeControllerBuilder; import com.facebook.drawee.generic.GenericDraweeHierarchy; import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder; @@ -24,7 +25,6 @@ import com.facebook.react.bridge.ReadableMap; import com.facebook.react.modules.fresco.ReactNetworkImageRequest; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.views.text.TextInlineImageSpan; -import javax.annotation.Nullable; /** * FrescoBasedTextInlineImageSpan is a span for Images that are inside . It computes its size diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java index 429350ccf95..97f5d1d0860 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java @@ -7,12 +7,12 @@ package com.facebook.react.views.text.frescosupport; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.drawee.backends.pipeline.Fresco; import com.facebook.drawee.controller.AbstractDraweeControllerBuilder; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.ViewManager; -import javax.annotation.Nullable; /** * Manages Images embedded in Text nodes using Fresco. Since they are used only as a virtual nodes diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java index abc92b4b14b..542b5ee0391 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java @@ -30,6 +30,7 @@ import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputConnection; import android.view.inputmethod.InputMethodManager; import android.widget.EditText; +import androidx.annotation.Nullable; import androidx.core.view.AccessibilityDelegateCompat; import androidx.core.view.ViewCompat; import com.facebook.infer.annotation.Assertions; @@ -41,7 +42,6 @@ import com.facebook.react.views.text.TextAttributes; import com.facebook.react.views.text.TextInlineImageSpan; import com.facebook.react.views.view.ReactViewBackgroundManager; import java.util.ArrayList; -import javax.annotation.Nullable; /** * A wrapper around the EditText that lets us better control what happens when an EditText gets diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java index 260c82f695c..e3d99a5c820 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java @@ -10,10 +10,10 @@ import android.view.KeyEvent; import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputConnection; import android.view.inputmethod.InputConnectionWrapper; +import androidx.annotation.Nullable; import com.facebook.react.bridge.ReactContext; import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.events.EventDispatcher; -import javax.annotation.Nullable; /** * A class to implement the TextInput 'onKeyPress' API on android for soft keyboards. It is diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java index d3ce4db4dc3..4d124ee4fce 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java @@ -21,6 +21,7 @@ import android.view.KeyEvent; import android.view.View; import android.view.inputmethod.EditorInfo; import android.widget.TextView; +import androidx.annotation.Nullable; import androidx.core.content.ContextCompat; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; @@ -53,7 +54,6 @@ import com.facebook.yoga.YogaConstants; import java.lang.reflect.Field; import java.util.LinkedList; import java.util.Map; -import javax.annotation.Nullable; /** Manages instances of TextInput. */ @ReactModule(name = ReactTextInputManager.REACT_CLASS) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java index 069e8081bdf..262687e6bfc 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java @@ -12,6 +12,7 @@ import android.text.Layout; import android.util.TypedValue; import android.view.ViewGroup; import android.widget.EditText; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; @@ -28,7 +29,6 @@ import com.facebook.yoga.YogaMeasureFunction; import com.facebook.yoga.YogaMeasureMode; import com.facebook.yoga.YogaMeasureOutput; import com.facebook.yoga.YogaNode; -import javax.annotation.Nullable; @VisibleForTesting @TargetApi(Build.VERSION_CODES.M) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.java index fab14cc30a0..ff21baf1514 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.java @@ -8,11 +8,11 @@ package com.facebook.react.views.unimplementedview; import static com.facebook.react.views.unimplementedview.ReactUnimplementedViewManager.REACT_CLASS; +import androidx.annotation.Nullable; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.annotations.ReactProp; -import javax.annotation.Nullable; /** * ViewManager for {@link ReactUnimplementedView} to represent a component that is not yet diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java index 31e932825a0..ed998e60801 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java @@ -22,6 +22,7 @@ import android.graphics.Region; import android.graphics.drawable.Drawable; import android.os.Build; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.react.common.annotations.VisibleForTesting; import com.facebook.react.modules.i18nmanager.I18nUtil; import com.facebook.react.uimanager.FloatUtil; @@ -29,7 +30,6 @@ import com.facebook.react.uimanager.Spacing; import com.facebook.yoga.YogaConstants; import java.util.Arrays; import java.util.Locale; -import javax.annotation.Nullable; /** * A subclass of {@link Drawable} used for background of {@link ReactViewGroup}. It supports drawing diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java index be360accee3..99ec6bdea01 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java @@ -9,8 +9,8 @@ import android.graphics.Color; import android.graphics.drawable.Drawable; import android.graphics.drawable.LayerDrawable; import android.view.View; +import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; -import javax.annotation.Nullable; /** Class that manages the background for views and borders. */ public class ReactViewBackgroundManager { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java index aafe2a692c2..4cb0e95643e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java @@ -24,6 +24,7 @@ import android.view.View; import android.view.ViewGroup; import android.view.ViewStructure; import android.view.animation.Animation; +import androidx.annotation.Nullable; import com.facebook.common.logging.FLog; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; @@ -44,7 +45,6 @@ import com.facebook.react.uimanager.RootViewUtil; import com.facebook.react.uimanager.ViewGroupDrawingOrderHelper; import com.facebook.react.uimanager.ViewProps; import com.facebook.yoga.YogaConstants; -import javax.annotation.Nullable; /** * Backing for a React View. Has support for borders, but since borders aren't common, lazy diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPagerManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPagerManager.java index f14cecf575d..bf061939494 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPagerManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPagerManager.java @@ -7,6 +7,7 @@ package com.facebook.react.views.viewpager; import android.view.View; +import androidx.annotation.Nullable; import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.common.MapBuilder; @@ -16,7 +17,6 @@ import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.annotations.ReactProp; import java.util.Map; -import javax.annotation.Nullable; /** Instance of {@link ViewManager} that provides native {@link ViewPager} view. */ @ReactModule(name = ReactViewPagerManager.REACT_CLASS) diff --git a/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK b/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK index eec98c1de71..b315429ee1a 100644 --- a/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK +++ b/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK @@ -7,6 +7,7 @@ rn_android_library( "PUBLIC", ], deps = [ + react_native_dep("third-party/android/androidx:annotation"), react_native_dep("third-party/java/jsr-305:jsr-305"), ], exported_deps = [ diff --git a/ReactAndroid/src/test/java/com/facebook/common/logging/FakeLoggingDelegate.java b/ReactAndroid/src/test/java/com/facebook/common/logging/FakeLoggingDelegate.java index 1a2cc03c0bf..dfe951888fb 100644 --- a/ReactAndroid/src/test/java/com/facebook/common/logging/FakeLoggingDelegate.java +++ b/ReactAndroid/src/test/java/com/facebook/common/logging/FakeLoggingDelegate.java @@ -6,10 +6,10 @@ */ package com.facebook.common.logging; +import androidx.annotation.Nullable; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; -import javax.annotation.Nullable; public final class FakeLoggingDelegate implements LoggingDelegate { diff --git a/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.java b/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.java index 2870847d31b..5243f8bd20e 100644 --- a/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.java +++ b/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.java @@ -11,13 +11,13 @@ import static org.junit.Assert.assertNotNull; import android.app.Activity; import android.content.Intent; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.JavaOnlyMap; import com.facebook.react.bridge.Promise; import com.facebook.react.bridge.ReactTestHelper; import com.facebook.react.bridge.WritableMap; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import org.junit.After; import org.junit.Before; import org.junit.Rule; @@ -170,7 +170,7 @@ public class ShareModuleTest { } @Override - public void reject(String code, @Nonnull WritableMap userInfo) { + public void reject(String code, @NonNull WritableMap userInfo) { reject(code, /*Message*/ null, /*Throwable*/ null, userInfo); } @@ -180,7 +180,7 @@ public class ShareModuleTest { } @Override - public void reject(String code, String message, @Nonnull WritableMap userInfo) { + public void reject(String code, String message, @NonNull WritableMap userInfo) { reject(code, message, /*Throwable*/ null, userInfo); } diff --git a/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.java b/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.java index c1a289e0b4c..612ce3b584c 100644 --- a/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.java +++ b/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.java @@ -16,7 +16,6 @@ import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.annotations.ReactPropGroup; -import javax.annotation.Nullable; import org.junit.Before; import org.junit.Rule; import org.junit.Test;