@@ -9,12 +9,14 @@ import { modalSheetContainer, modalWrapper, topSpacer } from './FeedbackWidget.s
9
9
import type { FeedbackWidgetStyles } from './FeedbackWidget.types' ;
10
10
import { getFeedbackOptions } from './integration' ;
11
11
import { lazyLoadAutoInjectFeedbackIntegration } from './lazy' ;
12
- import { isModalSupported } from './utils' ;
12
+ import { isModalSupported , isNativeDriverSupportedForColorAnimations } from './utils' ;
13
13
14
14
const PULL_DOWN_CLOSE_THRESHOLD = 200 ;
15
15
const SLIDE_ANIMATION_DURATION = 200 ;
16
16
const BACKGROUND_ANIMATION_DURATION = 200 ;
17
17
18
+ const useNativeDriverForColorAnimations = isNativeDriverSupportedForColorAnimations ( ) ;
19
+
18
20
class FeedbackWidgetManager {
19
21
private static _isVisible = false ;
20
22
private static _setVisibility : ( visible : boolean ) => void ;
@@ -124,7 +126,7 @@ class FeedbackWidgetProvider extends React.Component<FeedbackWidgetProviderProps
124
126
Animated . timing ( this . state . backgroundOpacity , {
125
127
toValue : 1 ,
126
128
duration : BACKGROUND_ANIMATION_DURATION ,
127
- useNativeDriver : true ,
129
+ useNativeDriver : useNativeDriverForColorAnimations ,
128
130
easing : Easing . in ( Easing . quad ) ,
129
131
} ) ,
130
132
Animated . timing ( this . state . panY , {
@@ -206,7 +208,7 @@ class FeedbackWidgetProvider extends React.Component<FeedbackWidgetProviderProps
206
208
Animated . timing ( this . state . backgroundOpacity , {
207
209
toValue : 0 ,
208
210
duration : BACKGROUND_ANIMATION_DURATION ,
209
- useNativeDriver : true ,
211
+ useNativeDriver : useNativeDriverForColorAnimations ,
210
212
easing : Easing . out ( Easing . quad ) ,
211
213
} )
212
214
] ) . start ( ( ) => {
0 commit comments