Bluesky app fork with some witchin' additions 💫

Explicitly mark lightbox worklets (#6038)

authored by danabra.mov and committed by

GitHub d85dcc3d 41452de1

+11
+9
src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.android.tsx
··· 142 142 143 143 const pinch = Gesture.Pinch() 144 144 .onStart(e => { 145 + 'worklet' 145 146 pinchOrigin.value = { 146 147 x: e.focalX - SCREEN.width / 2, 147 148 y: e.focalY - SCREEN.height / 2, 148 149 } 149 150 }) 150 151 .onChange(e => { 152 + 'worklet' 151 153 if (!imageDimensions) { 152 154 return 153 155 } ··· 179 181 } 180 182 }) 181 183 .onEnd(() => { 184 + 'worklet' 182 185 // Commit just the pinch. 183 186 let t = createTransform() 184 187 prependPinch( ··· 202 205 // Unlike .enabled(isScaled), this ensures that an initial pinch can turn into a pan midway: 203 206 .minPointers(isScaled ? 1 : 2) 204 207 .onChange(e => { 208 + 'worklet' 205 209 if (!imageDimensions) { 206 210 return 207 211 } ··· 223 227 panTranslation.value = nextPanTranslation 224 228 }) 225 229 .onEnd(() => { 230 + 'worklet' 226 231 // Commit just the pan. 227 232 let t = createTransform() 228 233 prependPan(t, panTranslation.value) ··· 235 240 }) 236 241 237 242 const singleTap = Gesture.Tap().onEnd(() => { 243 + 'worklet' 238 244 runOnJS(onTap)() 239 245 }) 240 246 241 247 const doubleTap = Gesture.Tap() 242 248 .numberOfTaps(2) 243 249 .onEnd(e => { 250 + 'worklet' 244 251 if (!imageDimensions) { 245 252 return 246 253 } ··· 287 294 .failOffsetX([-10, 10]) 288 295 .maxPointers(1) 289 296 .onUpdate(e => { 297 + 'worklet' 290 298 dismissSwipeTranslateY.value = e.translationY 291 299 }) 292 300 .onEnd(e => { 301 + 'worklet' 293 302 if (Math.abs(e.velocityY) > 1000) { 294 303 dismissSwipeTranslateY.value = withDecay({velocity: e.velocityY}) 295 304 runOnJS(onRequestClose)()
+2
src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.ios.tsx
··· 113 113 } 114 114 115 115 const singleTap = Gesture.Tap().onEnd(() => { 116 + 'worklet' 116 117 runOnJS(onTap)() 117 118 }) 118 119 119 120 const doubleTap = Gesture.Tap() 120 121 .numberOfTaps(2) 121 122 .onEnd(e => { 123 + 'worklet' 122 124 const {absoluteX, absoluteY} = e 123 125 runOnJS(handleDoubleTap)(absoluteX, absoluteY) 124 126 })