* feat(split-panel): split panel support for ion-nav and ion-menu
Revert some changes
adds support split-panel support for tabs
Removes .orig
removes e2e.ts
Removes unneeded changes in menu.ts
improves stuff
* fix(split-panel): resize is called when menu wraps a ion-nav
* test(split-panel): improves split-panel/basic test
* feat(split-panel): ionChange is an ng2 @Output()
* fix(split-panel): fix tabs as side content
* fix(menu): forzedClose works as expected
* feat(split-panel): split-panel works with several menus
* chore(split-panel): renames to split-pane
* refactor(split-pane): splitPane can be injected
* fix(split-pane): it is a directive
* fix(slides): integration with split-panel
* Make gulp validate happy
Internal refactor completed in order to improve tree shaking and dead
code removal. The public API, with an exception to ion-slides, has
stayed the same. However, internally many changes were required so
bundlers could better exclude modules which should not be bundled.
Ultimately most changes resorted to removing references to `window` or
`document`, or a module that referenced one of those.
BREAKING CHANGES
ion-slides was refactored to remove the external dependencies, and
rewritten in TypeScript/ES6 modules to again improve tree shaking
abilities.
- progress() is the function where more time is spent during any swipe gesture
- replace iterating over the _fx properties, using an array instead
- optimize pointerCoord(), profiler showed it’s one of the most called functions
- smoother by debouncing touch events (reduces bank)
- dynamic animation duration
- intelligent behavior based in the position, speed and direccion of the swipe (sharing logic with sliding item)
fixes#8919fixes#8958fixes#7934
NavControllerBase is the core of ionic 2 navigation. It handles all the transitions and it is complicated code to follow.
I am refactoring it to allow future developers and contributors to follow it better.
!node.parent now becomes node.isRoot()
ViewController does not remove itself from the stack, but two new auxiliar function in nav controller: _insertView() and _removeView() are used to add a view to the stack.
And so on...
All e2e and unit tests passing...
Toolbars can be stacked up vertically in `<ion-header>`,
`<ion-content>`, and `<ion-footer>` elements. However, toolbars also
come with borders on both the top and bottom of the toolbar. To give
developers full control of the design, Ionic also includes the
`no-border-bottom` and `no-border-top` attributes. For example,
sometimes two vertically stacked toolbars may have different background
colors, in this case it might be best to leave a border between them.
However, if they have the same background color, the app may look best
without a border between them. The main point here is, it's entirely up
to the app's design to decide when and when not to show borders between
toolbars, and to do so then each toolbar can individually set
`no-border-bottom` and `no-border-top` attributes.