enesozturk / react-native-hold-menu

📱 A performant, easy to use hold to open context menu for React Native powered by Reanimated 🚀
https://enesozturk.github.io/react-native-hold-menu/
MIT License
1.4k stars 91 forks source link

[android] Fixed menu list remained tappable after dismiss on android #115

Open kesha-antonov opened 9 months ago

kesha-antonov commented 9 months ago

Hi

Fixes https://github.com/enesozturk/react-native-hold-menu/issues/76

Nasseratic commented 8 months ago

@kesha-antonov An idea could be to use animatedProps with pointerEvents :) I believe it can make the fix simpler

kesha-antonov commented 8 months ago

@kesha-antonov An idea could be to use animatedProps with pointerEvents :) I believe it can make the fix simpler

Why to keep rendered views underneath and waste device's resources?

fukemy commented 7 months ago

Hi, I saw the lib render {children} 2 times like this:


<GestureHandler>
        <Animated.View ref={containerRef} style={containerStyle}>
          {children} => * HERE
        </Animated.View>
      </GestureHandler>

      <Portal key={key} name={key}>
        <Animated.View
          key={key}
          style={portalContainerStyle}
          animatedProps={animatedPortalProps}
        >
          <PortalOverlay />
          {children} => * HERE
        </Animated.View>
      </Portal>

So I think that make performance down to hell from here

kesha-antonov commented 7 months ago

Hi, I saw the lib render {children} 2 times like this:


<GestureHandler>

        <Animated.View ref={containerRef} style={containerStyle}>

          {children} => * HERE

        </Animated.View>

      </GestureHandler>

      <Portal key={key} name={key}>

        <Animated.View

          key={key}

          style={portalContainerStyle}

          animatedProps={animatedPortalProps}

        >

          <PortalOverlay />

          {children} => * HERE

        </Animated.View>

      </Portal>

So I think that make performance down to hell from here

You need to address it to main code base, not my PR) I didn't add this logic