react-native 0.76.0-rc.5 → 0.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/React/Base/RCTVersion.m +1 -1
- package/ReactAndroid/build.gradle.kts +0 -1
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +5 -57
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +19 -2
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/package.json +8 -8
- package/sdks/hermesc/osx-bin/hermes +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
- package/ReactAndroid/src/main/res/views/alert/layout/alert_title_layout.xml +0 -22
package/React/Base/RCTVersion.m
CHANGED
|
@@ -12,6 +12,7 @@ import androidx.annotation.AnyThread
|
|
|
12
12
|
import androidx.annotation.UiThread
|
|
13
13
|
import com.facebook.infer.annotation.ThreadConfined
|
|
14
14
|
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
15
|
+
import com.facebook.react.uimanager.events.EventDispatcher
|
|
15
16
|
|
|
16
17
|
@OptIn(UnstableReactNativeAPI::class)
|
|
17
18
|
public interface UIManager : PerformanceCounter {
|
|
@@ -78,7 +79,7 @@ public interface UIManager : PerformanceCounter {
|
|
|
78
79
|
public fun dispatchCommand(reactTag: Int, commandId: String, commandArgs: ReadableArray?)
|
|
79
80
|
|
|
80
81
|
/** @return the [EventDispatcher] object that is used by this class. */
|
|
81
|
-
public
|
|
82
|
+
public val eventDispatcher: EventDispatcher
|
|
82
83
|
|
|
83
84
|
/**
|
|
84
85
|
* Used by native animated module to bypass the process of updating the values through the shadow
|
|
@@ -12,20 +12,11 @@ import android.app.Dialog;
|
|
|
12
12
|
import android.content.Context;
|
|
13
13
|
import android.content.DialogInterface;
|
|
14
14
|
import android.content.res.TypedArray;
|
|
15
|
-
import android.os.Build;
|
|
16
15
|
import android.os.Bundle;
|
|
17
|
-
import android.view.LayoutInflater;
|
|
18
|
-
import android.view.View;
|
|
19
|
-
import android.widget.TextView;
|
|
20
16
|
import androidx.annotation.Nullable;
|
|
21
17
|
import androidx.appcompat.app.AlertDialog;
|
|
22
|
-
import androidx.core.view.AccessibilityDelegateCompat;
|
|
23
|
-
import androidx.core.view.ViewCompat;
|
|
24
|
-
import androidx.core.view.accessibility.AccessibilityNodeInfoCompat;
|
|
25
18
|
import androidx.fragment.app.DialogFragment;
|
|
26
|
-
import com.facebook.infer.annotation.Assertions;
|
|
27
19
|
import com.facebook.infer.annotation.Nullsafe;
|
|
28
|
-
import com.facebook.react.R;
|
|
29
20
|
|
|
30
21
|
/** A fragment used to display the dialog. */
|
|
31
22
|
@Nullsafe(Nullsafe.Mode.LOCAL)
|
|
@@ -75,55 +66,15 @@ public class AlertFragment extends DialogFragment implements DialogInterface.OnC
|
|
|
75
66
|
return isAppCompat;
|
|
76
67
|
}
|
|
77
68
|
|
|
78
|
-
/**
|
|
79
|
-
* Creates a custom dialog title View that has the role of "Heading" and focusable for
|
|
80
|
-
* accessibility purposes.
|
|
81
|
-
*
|
|
82
|
-
* @returns accessible TextView title
|
|
83
|
-
*/
|
|
84
|
-
private static View getAccessibleTitle(Context activityContext, String titleText) {
|
|
85
|
-
LayoutInflater inflater = LayoutInflater.from(activityContext);
|
|
86
|
-
|
|
87
|
-
// This layout matches the sizing and styling of AlertDialog's title_template (minus the icon)
|
|
88
|
-
// since the whole thing gets tossed out when setting a custom title
|
|
89
|
-
View titleContainer = inflater.inflate(R.layout.alert_title_layout, null);
|
|
90
|
-
|
|
91
|
-
TextView accessibleTitle =
|
|
92
|
-
Assertions.assertNotNull(titleContainer.findViewById(R.id.alert_title));
|
|
93
|
-
accessibleTitle.setText(titleText);
|
|
94
|
-
accessibleTitle.setFocusable(true);
|
|
95
|
-
|
|
96
|
-
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
|
97
|
-
accessibleTitle.setAccessibilityHeading(true);
|
|
98
|
-
} else {
|
|
99
|
-
ViewCompat.setAccessibilityDelegate(
|
|
100
|
-
accessibleTitle,
|
|
101
|
-
new AccessibilityDelegateCompat() {
|
|
102
|
-
@Override
|
|
103
|
-
public void onInitializeAccessibilityNodeInfo(
|
|
104
|
-
View view, AccessibilityNodeInfoCompat info) {
|
|
105
|
-
super.onInitializeAccessibilityNodeInfo(accessibleTitle, info);
|
|
106
|
-
info.setHeading(true);
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
return titleContainer;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
69
|
/**
|
|
115
70
|
* Creates a dialog compatible only with AppCompat activities. This function should be kept in
|
|
116
71
|
* sync with {@link createAppDialog}.
|
|
117
72
|
*/
|
|
118
73
|
private static Dialog createAppCompatDialog(
|
|
119
74
|
Context activityContext, Bundle arguments, DialogInterface.OnClickListener fragment) {
|
|
120
|
-
AlertDialog.Builder builder =
|
|
75
|
+
AlertDialog.Builder builder =
|
|
76
|
+
new AlertDialog.Builder(activityContext).setTitle(arguments.getString(ARG_TITLE));
|
|
121
77
|
|
|
122
|
-
if (arguments.containsKey(ARG_TITLE)) {
|
|
123
|
-
String title = Assertions.assertNotNull(arguments.getString(ARG_TITLE));
|
|
124
|
-
View accessibleTitle = getAccessibleTitle(activityContext, title);
|
|
125
|
-
builder.setCustomTitle(accessibleTitle);
|
|
126
|
-
}
|
|
127
78
|
if (arguments.containsKey(ARG_BUTTON_POSITIVE)) {
|
|
128
79
|
builder.setPositiveButton(arguments.getString(ARG_BUTTON_POSITIVE), fragment);
|
|
129
80
|
}
|
|
@@ -154,13 +105,10 @@ public class AlertFragment extends DialogFragment implements DialogInterface.OnC
|
|
|
154
105
|
@Deprecated(since = "0.75.0", forRemoval = true)
|
|
155
106
|
private static Dialog createAppDialog(
|
|
156
107
|
Context activityContext, Bundle arguments, DialogInterface.OnClickListener fragment) {
|
|
157
|
-
android.app.AlertDialog.Builder builder =
|
|
108
|
+
android.app.AlertDialog.Builder builder =
|
|
109
|
+
new android.app.AlertDialog.Builder(activityContext)
|
|
110
|
+
.setTitle(arguments.getString(ARG_TITLE));
|
|
158
111
|
|
|
159
|
-
if (arguments.containsKey(ARG_TITLE)) {
|
|
160
|
-
String title = Assertions.assertNotNull(arguments.getString(ARG_TITLE));
|
|
161
|
-
View accessibleTitle = getAccessibleTitle(activityContext, title);
|
|
162
|
-
builder.setCustomTitle(accessibleTitle);
|
|
163
|
-
}
|
|
164
112
|
if (arguments.containsKey(ARG_BUTTON_POSITIVE)) {
|
|
165
113
|
builder.setPositiveButton(arguments.getString(ARG_BUTTON_POSITIVE), fragment);
|
|
166
114
|
}
|
|
@@ -22,7 +22,7 @@ import com.facebook.yoga.YogaConstants
|
|
|
22
22
|
public abstract class BaseViewManagerDelegate<T : View, U : BaseViewManagerInterface<T>>(
|
|
23
23
|
@Suppress("NoHungarianNotation") @JvmField protected val mViewManager: U
|
|
24
24
|
) : ViewManagerDelegate<T> {
|
|
25
|
-
override public fun setProperty(view: T, propName: String
|
|
25
|
+
override public fun setProperty(view: T, propName: String?, value: Any?) {
|
|
26
26
|
when (propName) {
|
|
27
27
|
ViewProps.ACCESSIBILITY_ACTIONS ->
|
|
28
28
|
mViewManager.setAccessibilityActions(view, value as ReadableArray?)
|
|
@@ -104,6 +104,6 @@ public abstract class BaseViewManagerDelegate<T : View, U : BaseViewManagerInter
|
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
override public fun receiveCommand(view: T, commandName: String
|
|
107
|
+
override public fun receiveCommand(view: T, commandName: String?, args: ReadableArray?): Unit =
|
|
108
108
|
Unit
|
|
109
109
|
}
|
|
@@ -18,7 +18,24 @@ import com.facebook.react.bridge.ReadableArray
|
|
|
18
18
|
* @param <T> the type of the view supported by this delegate </T>
|
|
19
19
|
*/
|
|
20
20
|
public interface ViewManagerDelegate<T : View?> {
|
|
21
|
-
public fun setProperty(view: T, propName: String, value: Any?)
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
/**
|
|
23
|
+
* Sets a property on a view managed by this view manager.
|
|
24
|
+
*
|
|
25
|
+
* @param view the view to set the property on
|
|
26
|
+
* @param propName the name of the property to set (NOTE: should be `String` but is kept as
|
|
27
|
+
* `String?` to avoid breaking changes)
|
|
28
|
+
* @param value the value to set the property to
|
|
29
|
+
*/
|
|
30
|
+
public fun setProperty(view: T, propName: String?, value: Any?)
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Executes a command from JS to the view
|
|
34
|
+
*
|
|
35
|
+
* @param view the view to execute the command on
|
|
36
|
+
* @param commandName the name of the command to execute (NOTE: should be `String` but is kept as
|
|
37
|
+
* `String?` to avoid breaking changes)
|
|
38
|
+
* @param args the arguments to pass to the command
|
|
39
|
+
*/
|
|
40
|
+
public fun receiveCommand(view: T, commandName: String?, args: ReadableArray?)
|
|
24
41
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native",
|
|
3
|
-
"version": "0.76.0
|
|
3
|
+
"version": "0.76.0",
|
|
4
4
|
"description": "A framework for building native apps using React",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -109,13 +109,13 @@
|
|
|
109
109
|
},
|
|
110
110
|
"dependencies": {
|
|
111
111
|
"@jest/create-cache-key-function": "^29.6.3",
|
|
112
|
-
"@react-native/assets-registry": "0.76.0
|
|
113
|
-
"@react-native/codegen": "0.76.0
|
|
114
|
-
"@react-native/community-cli-plugin": "0.76.0
|
|
115
|
-
"@react-native/gradle-plugin": "0.76.0
|
|
116
|
-
"@react-native/js-polyfills": "0.76.0
|
|
117
|
-
"@react-native/normalize-colors": "0.76.0
|
|
118
|
-
"@react-native/virtualized-lists": "0.76.0
|
|
112
|
+
"@react-native/assets-registry": "0.76.0",
|
|
113
|
+
"@react-native/codegen": "0.76.0",
|
|
114
|
+
"@react-native/community-cli-plugin": "0.76.0",
|
|
115
|
+
"@react-native/gradle-plugin": "0.76.0",
|
|
116
|
+
"@react-native/js-polyfills": "0.76.0",
|
|
117
|
+
"@react-native/normalize-colors": "0.76.0",
|
|
118
|
+
"@react-native/virtualized-lists": "0.76.0",
|
|
119
119
|
"abort-controller": "^3.0.0",
|
|
120
120
|
"anser": "^1.4.9",
|
|
121
121
|
"ansi-regex": "^5.0.0",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
3
|
-
android:layout_width="match_parent"
|
|
4
|
-
android:layout_height="wrap_content"
|
|
5
|
-
android:gravity="center_vertical|start"
|
|
6
|
-
android:orientation="horizontal"
|
|
7
|
-
android:paddingStart="?android:attr/dialogPreferredPadding"
|
|
8
|
-
android:paddingTop="18dp"
|
|
9
|
-
android:paddingEnd="?android:attr/dialogPreferredPadding">
|
|
10
|
-
|
|
11
|
-
<TextView
|
|
12
|
-
android:id="@+id/alert_title"
|
|
13
|
-
style="?android:attr/windowTitleStyle"
|
|
14
|
-
android:layout_width="match_parent"
|
|
15
|
-
android:layout_height="wrap_content"
|
|
16
|
-
android:ellipsize="end"
|
|
17
|
-
android:singleLine="true"
|
|
18
|
-
android:textAlignment="viewStart"
|
|
19
|
-
android:textAppearance="?android:attr/textAppearanceMedium"
|
|
20
|
-
android:textSize="18sp" />
|
|
21
|
-
|
|
22
|
-
</LinearLayout>
|