react-native-navigation 7.24.3 → 7.25.0-snapshot.543
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/lib/android/app/build.gradle +12 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/NavigationActivity.java +7 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/BottomTabOptions.java +4 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/Options.java +2 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/OverlayOptions.java +3 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/OverlayOptions.kt +31 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutInsets.kt +44 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutOptions.kt +71 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/parsers/JSONParser.java +0 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/utils/PrimitiveExt.kt +9 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenter.java +2 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsController.java +31 -4
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/child/ChildController.java +6 -13
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewController.java +32 -10
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/modal/ModalStack.java +4 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/navigator/Navigator.java +25 -6
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManager.kt +104 -33
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/parent/ParentController.java +86 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuController.java +12 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/StackController.java +18 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenter.java +51 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/topbar/button/ButtonController.kt +7 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/Presenter.java +23 -7
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/RootPresenter.java +0 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +24 -3
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabs.java +29 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainer.kt +1 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabsLayout.java +10 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/component/ComponentLayout.java +10 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/overlay/AttachedOverlayContainer.kt +69 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/overlay/ViewTooltip.java +921 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/sidemenu/SideMenuRoot.java +9 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/stack/StackLayout.java +14 -4
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/stack/topbar/TopBar.java +0 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/toptabs/TopTabsStyleHelper.java +0 -1
- package/lib/dist/src/interfaces/Options.d.ts +34 -0
- package/lib/ios/RNNBasePresenter.m +17 -0
- package/lib/ios/RNNBottomTabsController.m +1 -0
- package/lib/ios/RNNComponentViewController.m +5 -0
- package/lib/ios/RNNLayoutOptions.h +2 -1
- package/lib/ios/RNNLayoutOptions.m +4 -0
- package/lib/ios/RNNStackPresenter.m +1 -0
- package/lib/src/interfaces/Options.ts +38 -0
- package/package.json +3 -1
- package/.buildkite/pipeline.yml +0 -59
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/LayoutOptions.java +0 -48
- package/lib/android/app/src/test/java/com/reactnativenavigation/BaseTest.java +0 -178
- package/lib/android/app/src/test/java/com/reactnativenavigation/EnvironmentTest.java +0 -43
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestActivity.java +0 -23
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestApplication.java +0 -35
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestUtils.java +0 -62
- package/lib/android/app/src/test/java/com/reactnativenavigation/fakes/IconResolverFake.kt +0 -8
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/BackDrawable.java +0 -30
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/ImageLoaderMock.kt +0 -49
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/Mocks.kt +0 -18
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleComponentViewController.java +0 -15
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleOverlay.java +0 -54
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleViewController.java +0 -113
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentLayout.java +0 -79
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentViewCreator.java +0 -18
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestReactView.java +0 -71
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarButtonCreatorMock.java +0 -34
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarReactViewCreatorMock.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TopBarBackgroundViewCreatorMock.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TypefaceLoaderMock.kt +0 -21
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/LayoutNodeParserTest.java +0 -51
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/OptionsTest.java +0 -315
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/OrientationOptionsTest.java +0 -81
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/TopBarButtonsTest.kt +0 -95
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/TransitionAnimationOptionsTest.kt +0 -122
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/BoolParserTest.java +0 -28
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/ColorParseTest.java +0 -50
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/JSONParserTest.java +0 -64
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/PresenterTest.java +0 -56
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/RenderCheckerTest.java +0 -59
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/SideMenuPresenterTest.java +0 -35
- package/lib/android/app/src/test/java/com/reactnativenavigation/react/NavigationModuleTest.java +0 -102
- package/lib/android/app/src/test/java/com/reactnativenavigation/react/ReloadListenerTest.java +0 -24
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/AnimationHelper.kt +0 -33
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonPresenterTest.java +0 -241
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonSpanTest.java +0 -57
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/CompatUtilsTest.java +0 -17
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/LayoutFactoryTest.java +0 -78
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/MotionEventTest.kt +0 -47
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/NativeCommandListenerTest.java +0 -60
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/OptionHelper.java +0 -16
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ReflectionUtilsTest.java +0 -26
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/StringUtilsTest.java +0 -19
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/SystemUiUtilsTest.kt +0 -27
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleAndButtonsMeasurerTest.kt +0 -357
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleBarHelper.java +0 -54
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiThreadTest.java +0 -29
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiUtilsTest.java +0 -22
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ViewHelper.java +0 -9
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/OptionsApplyingTest.java +0 -149
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenterTest.java +0 -206
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsAttacherTest.java +0 -62
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsControllerTest.kt +0 -589
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsPresenterTest.kt +0 -173
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AfterInitialTabTest.java +0 -38
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AttachModeTest.java +0 -86
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/OnSwitchToTabTest.java +0 -31
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/TogetherTest.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/button/NavigationIconResolverTest.java +0 -78
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllerTest.java +0 -80
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllersRegistryTest.java +0 -56
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewControllerTest.java +0 -216
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/ExternalComponentViewControllerTest.java +0 -97
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/FragmentCreatorMock.java +0 -34
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/SomeFragment.java +0 -8
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/fakes/FakeParentController.kt +0 -33
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorMock.java +0 -40
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorTest.kt +0 -213
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalPresenterTest.java +0 -319
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalStackTest.java +0 -367
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/NavigatorTest.java +0 -898
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/RootPresenterTest.kt +0 -254
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManagerTest.java +0 -108
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/parent/ParentControllerTest.java +0 -299
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuControllerTest.java +0 -446
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/BackButtonHelperTest.java +0 -77
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/FloatingActionButtonTest.java +0 -154
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/IdStackTest.java +0 -114
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackAnimatorTest.kt +0 -241
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackControllerTest.kt +0 -1165
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenterTest.kt +0 -1081
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarButtonControllerTest.java +0 -61
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarReactViewControllerTest.java +0 -43
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarButtonControllerTest.java +0 -120
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarControllerTest.kt +0 -432
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/toptabs/TopTabsViewControllerTest.java +0 -249
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewControllerTest.java +0 -337
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/YellowBoxDelegateTest.java +0 -68
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/OverlayTouchDelegateTest.java +0 -60
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/TitleAndButtonsContainerTest.kt +0 -477
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/TopBarTest.java +0 -82
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/BaseViewAnimatorTest.kt +0 -109
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/DefaultViewAnimatorCreatorFake.kt +0 -36
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainerTest.kt +0 -101
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsTest.kt +0 -40
- package/lib/android/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker +0 -1
package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabs.java
CHANGED
|
@@ -12,7 +12,9 @@ import com.reactnativenavigation.R;
|
|
|
12
12
|
import com.reactnativenavigation.options.LayoutDirection;
|
|
13
13
|
|
|
14
14
|
import java.util.ArrayList;
|
|
15
|
+
import java.util.HashMap;
|
|
15
16
|
import java.util.List;
|
|
17
|
+
import java.util.Map;
|
|
16
18
|
|
|
17
19
|
import androidx.annotation.IntRange;
|
|
18
20
|
|
|
@@ -21,10 +23,11 @@ import static com.reactnativenavigation.utils.ViewUtils.findChildByClass;
|
|
|
21
23
|
|
|
22
24
|
@SuppressLint("ViewConstructor")
|
|
23
25
|
public class BottomTabs extends AHBottomNavigation {
|
|
26
|
+
public final static int TAB_NOT_FOUND = -1;
|
|
24
27
|
private boolean itemsCreationEnabled = true;
|
|
25
28
|
private boolean shouldCreateItems = true;
|
|
26
29
|
private List<Runnable> onItemCreationEnabled = new ArrayList<>();
|
|
27
|
-
|
|
30
|
+
private final Map<String,Integer> idPositionMapping = new HashMap<>();
|
|
28
31
|
public BottomTabs(Context context) {
|
|
29
32
|
super(context);
|
|
30
33
|
setId(R.id.bottomTabs);
|
|
@@ -132,4 +135,29 @@ public class BottomTabs extends AHBottomNavigation {
|
|
|
132
135
|
private boolean hasItemsAndIsMeasured(int w, int h, int oldw, int oldh) {
|
|
133
136
|
return w != 0 && h != 0 && (w != oldw || h != oldh) && getItemsCount() > 0;
|
|
134
137
|
}
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
public void setTagForTabIndex(int index, String tag) {
|
|
141
|
+
if(tag==null){
|
|
142
|
+
String oldTag = null;
|
|
143
|
+
for(Map.Entry<String,Integer> e: idPositionMapping.entrySet()){
|
|
144
|
+
if(e.getValue() == index){
|
|
145
|
+
oldTag = e.getKey();
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if(oldTag!=null){
|
|
150
|
+
idPositionMapping.remove(oldTag);
|
|
151
|
+
}
|
|
152
|
+
}else{
|
|
153
|
+
idPositionMapping.put(tag,index);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
public int getTabIndexByTag(String tag) {
|
|
158
|
+
if(tag!=null && idPositionMapping.containsKey(tag)){
|
|
159
|
+
return idPositionMapping.get(tag);
|
|
160
|
+
}
|
|
161
|
+
return TAB_NOT_FOUND;
|
|
162
|
+
}
|
|
135
163
|
}
|
|
@@ -10,12 +10,21 @@ import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
|
|
10
10
|
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
|
11
11
|
import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
|
|
12
12
|
|
|
13
|
+
import com.reactnativenavigation.views.overlay.AttachedOverlayContainer;
|
|
14
|
+
|
|
13
15
|
public class BottomTabsLayout extends CoordinatorLayout {
|
|
14
16
|
|
|
15
17
|
private BottomTabsContainer bottomTabsContainer;
|
|
18
|
+
final private AttachedOverlayContainer attachedOverlayContainer ;
|
|
16
19
|
|
|
17
20
|
public BottomTabsLayout(Context context) {
|
|
18
21
|
super(context);
|
|
22
|
+
attachedOverlayContainer=new AttachedOverlayContainer(context);
|
|
23
|
+
this.addView(attachedOverlayContainer, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
public AttachedOverlayContainer getAttachedOverlayContainer() {
|
|
27
|
+
return attachedOverlayContainer;
|
|
19
28
|
}
|
|
20
29
|
|
|
21
30
|
@Override
|
|
@@ -33,4 +42,4 @@ public class BottomTabsLayout extends CoordinatorLayout {
|
|
|
33
42
|
addView(bottomTabsContainer, lp);
|
|
34
43
|
this.bottomTabsContainer = bottomTabsContainer;
|
|
35
44
|
}
|
|
36
|
-
}
|
|
45
|
+
}
|
package/lib/android/app/src/main/java/com/reactnativenavigation/views/component/ComponentLayout.java
CHANGED
|
@@ -4,15 +4,16 @@ import android.annotation.SuppressLint;
|
|
|
4
4
|
import android.content.Context;
|
|
5
5
|
import android.view.MotionEvent;
|
|
6
6
|
import android.view.ViewGroup;
|
|
7
|
-
import android.view.WindowInsets;
|
|
8
7
|
|
|
9
8
|
import com.reactnativenavigation.options.ButtonOptions;
|
|
9
|
+
import com.reactnativenavigation.utils.CoordinatorLayoutUtils;
|
|
10
10
|
import com.reactnativenavigation.viewcontrollers.viewcontroller.ScrollEventListener;
|
|
11
11
|
import com.reactnativenavigation.options.Options;
|
|
12
12
|
import com.reactnativenavigation.options.params.Bool;
|
|
13
13
|
import com.reactnativenavigation.react.ReactView;
|
|
14
14
|
import com.reactnativenavigation.react.events.ComponentType;
|
|
15
15
|
import com.reactnativenavigation.viewcontrollers.stack.topbar.button.ButtonController;
|
|
16
|
+
import com.reactnativenavigation.views.overlay.AttachedOverlayContainer;
|
|
16
17
|
import com.reactnativenavigation.views.touch.OverlayTouchDelegate;
|
|
17
18
|
|
|
18
19
|
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
|
@@ -25,14 +26,21 @@ public class ComponentLayout extends CoordinatorLayout implements ReactComponent
|
|
|
25
26
|
private boolean willAppearSent = false;
|
|
26
27
|
private ReactView reactView;
|
|
27
28
|
private final OverlayTouchDelegate touchDelegate;
|
|
29
|
+
final private AttachedOverlayContainer attachedOverlayContainer ;
|
|
28
30
|
|
|
29
31
|
public ComponentLayout(Context context, ReactView reactView) {
|
|
30
32
|
super(context);
|
|
31
33
|
this.reactView = reactView;
|
|
34
|
+
attachedOverlayContainer = new AttachedOverlayContainer(context);
|
|
32
35
|
addView(reactView.asView(), matchParentLP());
|
|
36
|
+
addView(attachedOverlayContainer, CoordinatorLayoutUtils.matchParentLP());
|
|
33
37
|
touchDelegate = new OverlayTouchDelegate(this, reactView);
|
|
34
38
|
}
|
|
35
39
|
|
|
40
|
+
public AttachedOverlayContainer getAttachedOverlayContainer() {
|
|
41
|
+
return attachedOverlayContainer;
|
|
42
|
+
}
|
|
43
|
+
|
|
36
44
|
@Override
|
|
37
45
|
public boolean isReady() {
|
|
38
46
|
return reactView.isReady();
|
|
@@ -109,4 +117,4 @@ public class ComponentLayout extends CoordinatorLayout implements ReactComponent
|
|
|
109
117
|
public boolean superOnInterceptTouchEvent(MotionEvent event) {
|
|
110
118
|
return super.onInterceptTouchEvent(event);
|
|
111
119
|
}
|
|
112
|
-
}
|
|
120
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
package com.reactnativenavigation.views.overlay
|
|
2
|
+
|
|
3
|
+
import android.app.Activity
|
|
4
|
+
import android.content.Context
|
|
5
|
+
import android.graphics.Color
|
|
6
|
+
import android.view.View
|
|
7
|
+
import android.widget.FrameLayout
|
|
8
|
+
|
|
9
|
+
class AttachedOverlayContainer(context: Context) : FrameLayout(context) {
|
|
10
|
+
|
|
11
|
+
init {
|
|
12
|
+
z = Float.MAX_VALUE
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
fun addOverlay(overlayView: View) {
|
|
16
|
+
addView(overlayView)
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
fun addAnchoredView(anchorView: View, overlayView: View, gravity: String): ViewTooltip.TooltipView? {
|
|
20
|
+
return when (gravity) {
|
|
21
|
+
"top" -> {
|
|
22
|
+
showTooltip(overlayView, anchorView, ViewTooltip.Position.TOP)
|
|
23
|
+
}
|
|
24
|
+
"bottom" -> {
|
|
25
|
+
showTooltip(overlayView, anchorView, ViewTooltip.Position.BOTTOM)
|
|
26
|
+
}
|
|
27
|
+
"left" -> {
|
|
28
|
+
showTooltip(overlayView, anchorView, ViewTooltip.Position.LEFT)
|
|
29
|
+
}
|
|
30
|
+
"right" -> {
|
|
31
|
+
showTooltip(overlayView, anchorView, ViewTooltip.Position.RIGHT)
|
|
32
|
+
}
|
|
33
|
+
else -> {
|
|
34
|
+
showTooltip(overlayView, anchorView, ViewTooltip.Position.TOP)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
private fun showTooltip(
|
|
42
|
+
tooltipView: View,
|
|
43
|
+
tooltipAnchorView: View,
|
|
44
|
+
pos: ViewTooltip.Position
|
|
45
|
+
): ViewTooltip.TooltipView {
|
|
46
|
+
val tooltipViewContainer = ViewTooltip
|
|
47
|
+
.on(context as Activity, this, tooltipAnchorView)
|
|
48
|
+
.autoHide(false, 5000)
|
|
49
|
+
.clickToHide(false)
|
|
50
|
+
.align(ViewTooltip.ALIGN.CENTER)
|
|
51
|
+
.padding(0, 0, 0, 0)
|
|
52
|
+
.customView(tooltipView)
|
|
53
|
+
.distanceWithView(0)
|
|
54
|
+
.color(Color.WHITE)
|
|
55
|
+
.bubble(false)
|
|
56
|
+
.arrowHeight(0)
|
|
57
|
+
.arrowWidth(0)
|
|
58
|
+
.position(pos)
|
|
59
|
+
|
|
60
|
+
.onDisplay {
|
|
61
|
+
}
|
|
62
|
+
.onHide {
|
|
63
|
+
|
|
64
|
+
}
|
|
65
|
+
.show()
|
|
66
|
+
return tooltipViewContainer
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
}
|