Commit Graph

107 Commits

Author SHA1 Message Date
Brandy Carney
4dc53a2d9d refactor(tabs): change the material design tabs to act as bottom navigation
Update tabs to reflect the material design bottom navigation spec:
https://material.google.com/components/bottom-navigation.html#bottom-nav
igation-usage

BREAKING CHANGES:

Material design mode defaults have changed to the following:

```
tabsHighlight: false,
tabsPlacement: 'bottom',
tabsHideOnSubPages: false
```

`tabsHighlight` can now be passed as an attribute on the `ion-tabs`
element, this allows for tabs to be added in multiple places inside of
an app and enable the highlight on some of them.

references #7455
2016-07-28 21:57:35 -05:00
Brandy Carney
087e2f2480 revert(tabs): undo commit that removes tab sub pages
Fix advanced tabs test

This reverts
https://github.com/driftyco/ionic/commit/743de19ae898e83375b51ef9c376225
c8e63f0ef
2016-07-28 15:28:55 -05:00
Manu Mtz.-Almeida
ac8e4dce06 style(all): tslinter warnings 2016-07-19 13:31:46 -07:00
perry
4f52135c13 Revert "Revert "Merge branch 'master' of https://github.com/driftyco/ionic""
This reverts commit 4a6086c1f8.
2016-07-18 19:40:03 -05:00
perry
4a6086c1f8 Revert "Merge branch 'master' of https://github.com/driftyco/ionic"
This reverts commit 8945bf906d, reversing
changes made to f4fac225fa.
2016-07-18 19:24:56 -05:00
Brandy Carney
99efa3687f fix(tabs): add sass variable for inactive opacity and pass it to the colors loop 2016-07-15 17:43:02 -04:00
Adam Bradley
0386476879 test(nav): clean up NavController tests 2016-07-15 15:55:49 -05:00
Adam Bradley
0a7d865975 refactor(nav): create NavControllerBase and public abstract class
Use NavController as the public API, and NavControllerBase as the
internal API. Refactored all app/nav/tabs unit tests and created
centralized mocking functions.
2016-07-15 15:54:56 -05:00
Adam Bradley
1ae6619367 Merge pull request #7212 from manucorporat/gesture-controller
New Gesture controller
2016-07-13 15:24:12 -05:00
Manu Mtz.-Almeida
9f19023cb9 feat(gesture): Introducing new gesture controller 2016-07-13 22:11:38 +02:00
Adam Bradley
743de19ae8 refactor(tabs): remove tabSubPages UI
The Material Design spec has added “Bottom Navigation”, which is what
Ionic calls “Tabs”. Ionic’s MD mode now follows the updated Material
Design spec with the tabbar placed on the bottom. Additionally, any tab
sub pages do not automatically cover up the tabbar. Covering up the
tabbar is still possible by using a modal, however, it is no longer a
default feature for MD mode.
2016-07-12 20:28:40 -05:00
Adam Bradley
cca3309f4c chore(nav): create nav-interfaces file 2016-07-11 23:24:25 -05:00
Brandy Carney
dd969a2958 fix(tabs): make the text color opaque instead of the entire button
this affects `md` and `wp` mode.

fixes #6638
2016-07-08 17:20:18 -04:00
Brandy Carney
d3be0af46d test(tabs): clean up tabs badges e2e test so it works 2016-07-08 17:14:41 -04:00
Brandy Carney
6c6254c213 chore(tslint): fix linter errors 2016-07-07 13:11:41 -04:00
Brandy Carney
41064bf2be refactor(tabs): rename tab input/config options to be more clear/consistent
BREAKING CHANGES:

Tab input/config options have been renamed. The following options were
renamed:

- `tabbarHighlight` -> `tabsHighlight`
- `tabbarLayout` -> `tabsLayout`
- `tabSubPages` -> `tabsHideOnSubPages`
- `tabbarPlacement` -> `tabsPlacement`

The previous names have been deprecated. They will still work in the
current release but will be removed in the future so please update to
the new names.

references #7143
2016-07-07 13:09:00 -04:00
Adam Bradley
f02b6eae9a style(tab): fix scss lint errors 2016-07-01 20:11:41 -05:00
Mike Hartington
997d54eca9 fix(tabs): center tabbar content 2016-07-01 20:09:19 -05:00
Adam Bradley
656426672c chore(templates): import required directives for ionic templates 2016-07-01 00:59:37 -05:00
Adam Bradley
55a5e83020 fix(nav): fix menuCtrl reference in swipe back 2016-06-29 21:12:22 -05:00
Manu Mtz.-Almeida
08f22fb82b docs(reorder): adds docs and demo for reorder directive 2016-06-29 17:35:33 +02:00
Adam Bradley
3cd31c3d17 fix(menu): fix content going under header
Closes #7084
2016-06-28 16:22:39 -05:00
Adam Bradley
4980659bd6 test(overlay): use injectable overlay controllers 2016-06-28 15:20:42 -05:00
Adam Bradley
215c6d846c refactor(overlays): inject overlay providers
BREAKING CHANGES:

- Overlay components, such as Alert or Modals, should now be created
using its injected provider.
- Overlays now have the `present()` method on the overlay’s instance,
rather than using `nav.present(overlayInstance)`.
- All overlays now present on top of all app content, to include menus.
- Below is an example of the change to `Alert`, but the pattern is the
same for all overlays: ActionSheet, Loading, Modal, Picker, Popover,
Toast

WAS:

```
import { NavController, Alert } from ‘ionic-angular’;

constructor(private nav: NavController) {
}

doAlert() {
  let alert = Alert.create({
    title: 'Alert',
  });
  this.nav.present(alert);
}
```

NOW:

```
import { AlertController } from ‘ionic-angular’;

constructor(private alertCtrl: AlertController) {
}

doAlert() {
  let alert = this.alertCtrl.create({
    title: 'Alert'
  });
  alert.present();
}
```
2016-06-28 15:18:09 -05:00
Adam Bradley
c7fa9490bf style(imports): add spaces in imports 2016-06-22 14:29:27 -05:00
Adam Bradley
ae40edf810 fix(tabs): fix tabs rootNav 2016-06-21 14:37:57 -05:00
Brandy Carney
ed6d0fa13b fix(tabs): reference parent instead of parentTabs 2016-06-21 14:11:38 -04:00
Adam Bradley
060d064325 Merge branch '2.0' into layout-refactor
# Conflicts:
#	src/components/tabs/test/advanced/index.ts
2016-06-21 11:37:47 -05:00
Adam Bradley
f20c7e42a2 feat(fullscreen): add fullscreen property to ion-content 2016-06-21 11:22:01 -05:00
Manu Mtz.-Almeida
2bff535e7b fix(tabs): swipeBackEnabled works with tabs as expected 2016-06-21 10:56:30 -05:00
Adam Bradley
7842991c1a fix(nav): auto set iOS black transition bg via css 2016-06-20 14:12:13 -05:00
Adam Bradley
3a7addf7b0 feat(toolbar): control toolbar borders on top/bottom
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.
2016-06-20 12:01:21 -05:00
Adam Bradley
2d680896e7 fix(tabs): hide tab's navbar when a page comes without a navbar
Closes #5556
2016-06-18 00:20:08 -05:00
Brandy Carney
1b882800f7 test(all): fix the tests that don't have ion-nav 2016-06-17 22:05:24 -04:00
Brandy Carney
927edfffcd refactor(tabs): remove all uses of ion-navbar-section 2016-06-17 13:51:30 -04:00
Adam Bradley
1a8f6d745d test(header): update header markup 2016-06-17 11:43:30 -05:00
Brandy Carney
af2228757f fix(tabs): don't add outline to the class name if it is a logo icon
fixes #6899
2016-06-17 11:42:18 -04:00
Adam Bradley
d13fa4e2cf refactor(structure): allow content to scroll under headers/footers 2016-06-16 11:28:02 -05:00
Manu Mtz.-Almeida
64af0c8ba0 fix(item): item-options width calculated correctly 2016-06-16 11:10:25 -05:00
Dan Bucholtz
a655cd78ac Feature/child nav fixes (#6907)
* fix(navigation): fixes bug where navigating to page with child-nav immediately re-enables app

fixes bug where navigating to page with child-nav immediately re-enables app

closes #6752

* test(navigation): added some additional tests

added some additional tests

* test(tabs): added multiple nested children test

added multiple nested children test
2016-06-14 15:52:24 -05:00
Adam Bradley
a93636332f chore(router-deprecated): remove router-deprecated references 2016-06-10 16:13:34 -05:00
Adam Bradley
c1d09dd6b2 refactor(nav): replace DynamicComponentLoader w/ ComponentFactory 2016-06-08 16:42:23 -05:00
Brandy Carney
fd9cdc7490 fix(tabs): reduce padding on tabs for ios
fixes #6679
2016-06-08 12:32:45 -04:00
Brandy Carney
bc306c6ce8 style(tabs): fix linter errors, change log to debug 2016-06-08 12:08:57 -04:00
Adam Bradley
9f293e8549 feat(navPop): add nav pop method on the app instance 2016-06-08 10:42:19 -05:00
Adam Bradley
d98f3c9bd7 feat(tabs): track tab selecting history, create previousTab() method 2016-06-08 10:42:19 -05:00
Brandy Carney
7def98c620 fix(config): set the properties for each mode and add defaults
closes #6132
2016-06-01 18:16:12 -04:00
Adam Bradley
2eb88fa687 test(lifecycle): update lifecycle events 2016-06-01 12:19:08 -05:00
Adam Bradley
c18335e946 refactor(lifecycle): lifecycle methods prefixed w/ ionView
BREAKING CHANGES:

- Lifecycle method prefixes have changed to `ionView`
- `onPageLoaded` renamed to `ionViewLoaded`
- `onPageWillEnter` renamed to `ionViewWillEnter`
- `onPageDidEnter` renamed to `ionViewDidEnter`
- `onPageWillLeave` renamed to `ionViewWillLeave`
- `onPageDidLeave` renamed to `ionViewDidLeave`
- `onPageWillUnload` renamed to `ionViewWillUnload`
- `onPageDidUnload` renamed to `ionViewDidUnload`
2016-06-01 12:06:15 -05:00
Adam Bradley
11448dcd0c chore(tslint): fix noImplicitAny errors 2016-05-31 21:07:17 -05:00