[v2][ios11, ios12] Add searchBar option for topBar (#3303)
* [ios11+] Add searchBar option for topBar
* Fix formatting and linter issues
* Add docs about topBar.searchBar
* Fix missing semicolons
* Revert prettier changes
* Add js tests for onSearchBarUpdated to achieve 100% coverage
* Mark searchBar test as :ios: specific
This option allows to control when tab titles are displayed
* showWhenActive: when a tab is focused
* alwaysShow: show regardless of which tab is in
* alwaysHide: never show tab titles
This commit also changes the way TopTabs options are handled. As the TabLayout
is part of the TopBar, it's the StackControllers responsibility to set TopTabs options.
* V2: Peek and pop
* Add event when preview is dismissed in non commit mode
* tslint
* Refactor playground. Document preview api
* Added width prop
* Implement hybrid push/preview button
* Fixing small linting errors
* Work in progress
* Arbitary changes
* Improvements on API
* Cleanup RNNSplitViewController, allow mergeOptions
* Added documentation and better playground example
* Adding tests for coverage
* Find out why this test is failing.
* Only show split view on iOS
* Add test back in
* setRoot({root:{}})
* support setRoot with root, modals, overlays
* Update setRoot calls in playground app to new api
* Update setRoot on Android to new api
currently only supporting root node
* Update setRoot on iOS to new api
* fix unit tests
This commit removes NavigationOptionsListener as it was not needed anymore.
As a result, it uncovered a few issues which this commit also aims to fix.
* Set SideMenuController as parent of left, right and centre controllers
* Select tab by id with tabSelector interface
* mergeOptions now also applies options after merge - in ViewController base class
* Pull presentation logic from ComponentLayout to ComponentViewController
* Refactor TopBar options, introduce title options
* Update background to new api
* Refactored topBar options on iOS
* Initial react component in TitleBar android
* set height to react view in TitleBar
* fix tests and lint
* ios unit tests fix
* Make detox android test suit pass
Disabled emulator animations due to limitation of espresso/detox which can't wait until
a push/pop animation ends
* Fix orientation parsing and enable detox orientation tests
* remove only
* Fix BottomTabs testId
* Support user orientation
* Fix rightButtons testId
* Add Modals tests
* e2e fix ios
* Rename TopBar.animateHide to animate
also fix some options in playground app
* Consolidate topBar visibility in childWillDisappear
* Rename BottomTabs.animateHide to animate
* Use AHBottomNavigation for BottomTabs
* Process passed options for all layout types
Static options are still processed only for components
* ios e2e fix
* Update RNNNavigationController.m
Continued work on Android
* Rename TopTabsLayout to TopTabsViewPager
* Pass ScrollEventListener from component
* Change ViewController.view to protected
* Don't keep ref to view in ComponentController
* Pull IReactView and ReactViewCreator to separate classes
* Ensure ToolBar.menu is created before clearing menu items
* Unmount react view before destroy
* Let TopTabsController set mediator in view visibility handling
* Change topBar backgroundColor to Color object
* StackLayout implementation
Unfortunately, this commit also contains a lot of refactoring and a few
bug fixes relating to styles.
* TopBar is not part of Component, instead it's a part of StackLayout
and shared between all components pushed to the stack Similar to iOS.
* Handle ScrollEvent in ReactView instead of passing the listener down
* Implement Fraction and Text null objects for style params
* Converted a few style params to null objects. This fixes some styles
being applied even when they were not specified explicitly.
* Stop sending null promise to commands
* Seperate push and pop into animatePush/push and animatePop/pop
to avoid boolean param
* Adapt TopTabs to new API