jasongaare / react-native-walkthrough-tooltip

An inline wrapper for calling out React Native components via tooltip
MIT License
610 stars 182 forks source link

Fix for incorrect value of tooltipDuplicate for original children #186

Open SyedTayyabUlMazhar opened 1 year ago

SyedTayyabUlMazhar commented 1 year ago

Hi! 👋

Firstly, thanks for your work on this project! 🙂

In situations where you have nested Tooltip whose isVisible is false, while the parent's is true. The nested context consumer will get tooltipDuplicate true. A fix for this problem is to also wrap the original children in Context.

Here is the diff that solved my problem:

diff --git a/node_modules/react-native-walkthrough-tooltip/src/tooltip.js b/node_modules/react-native-walkthrough-tooltip/src/tooltip.js
index 3098692..326f949 100644
--- a/node_modules/react-native-walkthrough-tooltip/src/tooltip.js
+++ b/node_modules/react-native-walkthrough-tooltip/src/tooltip.js
@@ -486,7 +486,9 @@ class Tooltip extends Component {
             onLayout={this.measureChildRect}
             style={this.props.parentWrapperStyle}
           >
-            {children}
+            <TooltipChildrenContext.Provider value={{ tooltipDuplicate: false }}>
+              {children}
+            </TooltipChildrenContext.Provider>
           </View>
         ) : null}