Skip to content

feat(tabs): fixed tabs #1356

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 204 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
204 commits
Select commit Hold shift + click to select a range
71dd984
feat(tabs): fixed tabs
dasois Sep 28, 2016
276d07d
fix(aot): fix aot error w/ live announcer (#1355)
jelbourn Sep 28, 2016
3045a05
chore: fix CI flakiness caused by race condition (#1371)
jelbourn Sep 29, 2016
d442798
fix(aot): add constant for a11y providers, use in core module (#1369)
jelbourn Sep 29, 2016
57128a5
(docs): update README.md npm button (#1340)
nkwood Sep 29, 2016
bb61928
fix(aot): export dialog/snackbar containers through index (#1378)
jelbourn Sep 30, 2016
1cd3a3c
chore: update planned work for October (#1414)
jelbourn Oct 3, 2016
580da74
fix(snack-bar): add explicit box-sizing (#1413)
crisbeto Oct 5, 2016
bf44c16
fix(input): asterisk color when not focused (#1404)
devversion Oct 5, 2016
37a8c4d
chore: update snackbar status in README and add docs link (#1420)
fxck Oct 5, 2016
b91e983
docs: update component docs for new packaging (#1375)
ianjoneill Oct 5, 2016
8908366
fix(slide-toggle): disabled theme not working and dragging works if d…
devversion Oct 5, 2016
ec48b34
fix(button): Changed button corner radius from 3px to 2px (#1441)
chouclee Oct 6, 2016
0b5b6f2
fix(slide-toggle): emit change event after drag end (#1405)
devversion Oct 6, 2016
e7b872a
fix(list): ensure multi-line lists expand to fill space (#1466)
kara Oct 11, 2016
e270e50
fix(tabs): set correct min-width on mobile devices (#1351)
dasois Oct 11, 2016
fcc5900
chore: make it more obvious theming setup is required (#1447)
jelbourn Oct 11, 2016
a5b3296
fix(menu): make menu open idempotent (#1478)
kara Oct 11, 2016
e0db8c3
chore: update status of theming in README (#1476)
fxck Oct 11, 2016
601c036
fix(input): remove invalid aria-target attribute (#1513)
devversion Oct 17, 2016
673e7cc
chore(saucelabs): fix microsoft edge version (#1508)
devversion Oct 17, 2016
3f418c3
chore(snackbar): fix typo in readme (#1493)
metanav Oct 17, 2016
6ea49da
docs: document placeholder and floatingPlaceholder for md-input (#1485)
feloy Oct 17, 2016
e4af65a
chore(): update `engines` to match angular (#1504)
crisbeto Oct 17, 2016
3bb667e
docs: document MdInput focus() method (#1486)
feloy Oct 17, 2016
bfee9c3
chore: add autoprefixer to gulp (#1505)
devversion Oct 18, 2016
cbecbce
fix(slide-toggle): remove view encapsulation (#1446)
devversion Oct 18, 2016
3c1e8d2
docs: add guide for theming your own components (#1385)
Oct 18, 2016
6df29dc
feat(snack bar): Add enter and exit animations. (#1320)
josephperrott Oct 18, 2016
80186c1
chore: rename tsconfigs for IDEs (#1524)
jelbourn Oct 19, 2016
b09465c
fix(gestures): don't clobber native drag events (#1458)
taffeldt Oct 19, 2016
5a528aa
fix(list): set flex-shrink for avatar (#1464)
andrewmnlv Oct 19, 2016
ec1e180
feat(core): directive to add extra classes to components for m1 compa…
jelbourn Oct 19, 2016
2954631
chore: close sidenav on nav item click (#1535)
andrewseguin Oct 19, 2016
d2c288d
fix(button-toggle): add exportAs (#1528)
jelbourn Oct 19, 2016
25c7fd5
fix(progress-circle): allow value to be set to 0 (#1536)
andrewseguin Oct 19, 2016
0b54668
feat(overlay): add custom classes for backdrop (#1532)
kara Oct 19, 2016
cfe3e98
fix(menu): properly handle spacebar events (#1533)
kara Oct 19, 2016
8f4fbd4
docs(sidenav): add open/close to example (#1542)
feloy Oct 20, 2016
ad0d522
chore: fix developer doc link in CONTRIBUTING.md (#1546)
andrewseguin Oct 20, 2016
3e02c51
chore: change overlay.scss to be a sass partial (#1544)
fxck Oct 20, 2016
e7f6910
chore: remove dead documentation reference to clang formatter (#1547)
andrewseguin Oct 20, 2016
f9c582a
chore: unsubscribe from rxjs subscriptions (#1549)
fxck Oct 20, 2016
4086b32
fix(list): prevent default black border from applying (#1548)
jhyde Oct 20, 2016
aa250d4
fix(snackbar): don't use template string in metadata (#1550)
jelbourn Oct 20, 2016
196bad7
feature(radio): Add ripple effect for radio buttons (#1551)
tinayuangao Oct 20, 2016
8f0aaea
Revert "feature(radio): Add ripple effect for radio buttons" (#1552)
tinayuangao Oct 20, 2016
99396a4
chore: stop rollup complaint about 'rxjs/add/operator/first' (#1554)
mniya Oct 21, 2016
add0d23
fix(menu): update to use overlay backdrop (#1534)
kara Oct 21, 2016
da2af1e
chore: add gulp-cli as dev dep (#1587)
jelbourn Oct 24, 2016
c9ef34c
docs(dialog): document MdDialog (#1569)
feloy Oct 25, 2016
920c875
fix(radio): only call change callback with user input (#1521)
kara Oct 25, 2016
ffbc295
feat(overlay): set overlay size (#1583)
kara Oct 25, 2016
1ad457b
chore: update sauce connect binary to latest version (#1563)
jelbourn Oct 25, 2016
43786b8
chore(getting-started): make theming section more attention-grabbing.…
jelbourn Oct 25, 2016
35f0044
chore(packages): add http module to package.json (#1579)
DAB0mB Oct 25, 2016
333b11e
feat(checkbox): add color attribute. (#1463)
mathebox Oct 25, 2016
6f322cf
feat(overlay): support all overlay config properties (#1591)
kara Oct 25, 2016
c0e6f83
chore: update @angular/compiler-cli version (#1597)
jelbourn Oct 25, 2016
b56f520
feat(overlay): support rtl in overlays (#1593)
kara Oct 25, 2016
c6b4c22
chore(menu): move common styles into core (#1600)
kara Oct 25, 2016
9422793
chore(select): finish scaffolding (#1601)
kara Oct 25, 2016
2e651e7
test(radio): add e2e test for radio button (#1582)
tinayuangao Oct 25, 2016
95b2a34
feat(a11y): manager for list keyboard events (#1599)
kara Oct 25, 2016
8e16992
chore: fix firebase dev instance (#1606)
jelbourn Oct 25, 2016
2ebb46f
chore(build): fix build to update components (#1604)
kara Oct 25, 2016
65401a3
chore: snackbar tests should clean up afterwards (#1609)
jelbourn Oct 26, 2016
9eaf7e4
chore(checkbox): add e2e tests (#1602)
tinayuangao Oct 26, 2016
c63b9f4
chore: remove BooleanFieldValue (#1290)
jelbourn Oct 26, 2016
f10ac7c
fix(button): set vertical alignment for md-button and md-raised-butto…
tinayuangao Oct 26, 2016
8e7f80d
fix(slider): update thumb position when value changes. Closes #1386 (…
mmalerba Oct 26, 2016
596d994
fix(slide-toggle): update colors to match spec (#1612)
devversion Oct 26, 2016
3c79855
chore(a11y): make disabled property optional (#1613)
kara Oct 26, 2016
ef4c3c9
feat(checkbox): add ripple (#1611)
tinayuangao Oct 26, 2016
9e849cf
chore(snackbar): clean up liveAnnouncer msg in tests (#1615)
jelbourn Oct 26, 2016
572b36e
feat(tab-nav-bar): add initial functionality of tab nav bar (#1589)
andrewseguin Oct 26, 2016
783dbb3
fix(slider): clamp thumb between min and max (#1617)
feloy Oct 26, 2016
8f50c35
fix(overlay): raise z-index for overlay-container (#1614)
jelbourn Oct 26, 2016
ff84842
fix(slider): update thumb pos & ticks when min/max change (#1598)
mmalerba Oct 26, 2016
437ec8e
feat(slider): implement ControlValueAccessor setDisabledState (#1603)
MikeRyanDev Oct 26, 2016
ce26cae
fix(input): floating placeholder on by default (#1619)
jelbourn Oct 26, 2016
aff22e5
feat(textarea): initial md-textarea (#1562)
fxck Oct 27, 2016
0174fa9
fix: correct EventEmitter generic type across lib (#1620)
jelbourn Oct 27, 2016
d83b3e0
feat(radio): add ripple (#1553)
tinayuangao Oct 27, 2016
065469a
fix(radio): only fire group change if there is a group (#1622)
jelbourn Oct 27, 2016
f91ea21
fix(ripple): disable pointer events on ripple (#1623)
jelbourn Oct 27, 2016
af39236
fix(overlay): ensure container covers entire screen (#1634)
jelbourn Oct 27, 2016
80491a9
fix(checkbox): disable for all non-false values (#1631)
dharmeshpipariya Oct 27, 2016
b9d853d
chore(tabs): remove tabs demo module (#1637)
jelbourn Oct 27, 2016
04e2201
fix(tabs): make @Output not private (#1636)
jelbourn Oct 27, 2016
ea6c817
feat(tabs): simplify api (#1645)
jelbourn Oct 29, 2016
92ac392
fix(tooltip): remove tooltip component after it's parent destroyed (#…
gucheen Nov 1, 2016
c108607
fix(radio): Uncheck radio group if uncheck radio button programmatica…
tinayuangao Nov 1, 2016
a331a43
Update README.md (#1652)
Nov 1, 2016
96d196a
feat(menu): Allow menu-trigger to take a menu interface. (#1564)
trshafer Nov 1, 2016
0883fb2
perf(progress-circle): improved rendering performance (#1635)
crisbeto Nov 1, 2016
3ee1b59
fix(listKeyManager): use a subject instead of emitter (#1646)
kara Nov 1, 2016
b14bb72
feat(select): basic selection and animations (#1647)
kara Nov 1, 2016
8220452
feature(md-icon-button): set fixed line height for wrapped content (#…
andrewmnlv Nov 1, 2016
ad3100e
fix(slide-toggle): thumb spacing at end for rtl (#1659)
devversion Nov 1, 2016
52582f4
feat(tooltip): add tooltip animations (#1644)
andrewseguin Nov 1, 2016
1e86066
chore: update readme status for November (#1683)
jelbourn Nov 2, 2016
f59030e
feat(dialog): don't require a ViewContainerRef (#1704)
jelbourn Nov 3, 2016
6601949
fix(checkbox): prevent checkbox being squished (#1713)
tinayuangao Nov 3, 2016
681fbd5
chore: remove unused config folder (#1711)
devversion Nov 3, 2016
8ce65ca
fix(ripple): prevent color flicker on radio/checkbox (#1705)
Superd22 Nov 3, 2016
7e08468
fix(portal): cleanup PortalHost on directive destroy (#1703)
andrewseguin Nov 3, 2016
982cdaa
feat(menu): support icons (#1702)
kara Nov 3, 2016
3f4734c
chore: remove duplicate imports (#1701)
crisbeto Nov 3, 2016
3cd6776
fix(select): fix menu close animation (#1696)
kara Nov 3, 2016
b697823
chore: add test for @ViewChild in tab content (#1693)
jelbourn Nov 3, 2016
7fcf511
feat(menu): add animations (#1685)
kara Nov 3, 2016
7336b90
fix(ripple): allow pointer events on ripple; disable on checkbox ripp…
andrewseguin Nov 3, 2016
0d552f5
fix(radio): only emit change event on user interaction (#1680)
tinayuangao Nov 3, 2016
93f8e04
feat(dialog): add disableClose option (#1678)
crisbeto Nov 3, 2016
e3882fc
chore: fix binary execution on windows (#1675)
devversion Nov 3, 2016
ecefb89
fix(input): correctly position md-hint in IE11 when position start (#…
janisr Nov 3, 2016
4a0f820
chore: disable Android 4.1-4.3 tests (#1668)
mmalerba Nov 3, 2016
96c9f55
test(snackbar): fix tests expectations in dismissal subscription (#1664)
andrewseguin Nov 3, 2016
16cbbab
fix(overlay): not taking up entire viewport if body is scrollable (#1…
crisbeto Nov 3, 2016
1738d24
feat(overlay): support custom offsets (#1660)
kara Nov 3, 2016
780a654
feat(slider): fire change event (#1618)
mmalerba Nov 3, 2016
a4ab10f
feat(select): basic forms support (#1655)
kara Nov 3, 2016
83f6efc
fix(button-toggle): disable user-select in button-toggle (#1720)
tinayuangao Nov 3, 2016
a0d85d8
fix(sidenav): resolve the promise when sidenav is initialized opened.…
hansl Nov 3, 2016
2de461e
fix(overlay): fix connected position calculation while scrolled (#1732)
kara Nov 7, 2016
5ffdea6
fix(slider): correctly detect when sidenav align changes. (#1758)
mmalerba Nov 8, 2016
2bab92a
chore(toolbar): combine imports from same file (#1753)
devversion Nov 8, 2016
9bb4809
chore(saucelabs): interrupt if saucelabs tunnel does not start (#1747)
devversion Nov 8, 2016
9a7d381
chore(browserstack): properly teardown tunnel (#1745)
devversion Nov 8, 2016
4203d09
fix(progress-spinner): animation expanding parent element (#1742)
crisbeto Nov 8, 2016
640dbb6
chore(changelog): fix missing module for adding streams (#1738)
devversion Nov 8, 2016
f0b9a77
chore: remove unused autoprefixer config file (#1737)
devversion Nov 8, 2016
bec1519
chore(ci): ensure browserstack binaries are latest (#1724)
devversion Nov 8, 2016
7fd0fcd
fix(checkbox): vertically align for when there's no text (#1721)
tinayuangao Nov 8, 2016
309d54c
fix(progress-bar): bar being thrown off by parent's text-align (#1717)
crisbeto Nov 8, 2016
8815846
fix(slider): use percent values for the track (#1663)
mmalerba Nov 8, 2016
4af3cd3
fix(gestures): remove drag event from config (#1744)
crisbeto Nov 8, 2016
dca6ea3
Fix(input): webkit autofill & floating placeholder (#1739)
Superd22 Nov 8, 2016
15cd28b
fix(button-toggle): missing hover state (#1733)
crisbeto Nov 8, 2016
267e323
fix(menu): improve a11y for screenreaders (#1715)
kara Nov 8, 2016
2b913de
fix(menu): update menu to use overlay rtl (#1687)
kara Nov 8, 2016
3c5b632
fix(snackbar): always clear ref when dismissing (#1773)
jelbourn Nov 8, 2016
51667d7
chore(dev-app): prevent multiple reloads per file change (#1762)
crisbeto Nov 9, 2016
187d141
chore: revert "fix(button-toggle): missing hover state (#1733)" (#1779)
jelbourn Nov 9, 2016
6b9e11c
fix: disable ripples when parent component is disabled (#1778)
jelbourn Nov 9, 2016
8f0265c
chore(button): use disabled property, not attr (#1782)
jelbourn Nov 9, 2016
35285be
docs(button-toggle): clarify ngModel w/ multiple not yet supported (#…
tinayuangao Nov 9, 2016
1339a6a
chore: update travis nodejs version (#1781)
jelbourn Nov 9, 2016
f1f660e
fix(input): set line-height to normal (#1734)
mmalerba Nov 9, 2016
9115538
feat(snackbar): don't require a ViewContainerRef (#1783)
jelbourn Nov 9, 2016
f525db1
feat(dialog): allow for an object literal to be passed on init (#1679)
crisbeto Nov 9, 2016
52e5cb5
chore: don't use Object.assign (#1791)
jelbourn Nov 9, 2016
fcd29c8
fix(snackbar): snacksbars sometimes don't get removed (#1795)
jelbourn Nov 10, 2016
523a48e
fix(snackbar): remove even if still animating open (#1797)
jelbourn Nov 10, 2016
547a75d
chore: alpha.10 (#1799)
jelbourn Nov 10, 2016
11f001b
docs(theming): correct import paths (#1807)
chauncey-garrett Nov 10, 2016
5a04ab6
docs(input): call focus on AfterViewInit vs OnInit (#1804)
feloy Nov 10, 2016
adfc4d1
docs(snackbar): remove unnecessary viewContainerRef (#1803)
feloy Nov 10, 2016
77701cc
chore(build): fix karma not exiting properly (#1741)
crisbeto Nov 11, 2016
9c0d82a
fix(tooltip): check tooltip disposed on animation hidden (#1816)
andrewseguin Nov 11, 2016
068fa85
docs(dialog): add new option and update example (#1814)
crisbeto Nov 11, 2016
3d4abac
feat(a11y): add wrap mode to key manager (#1796)
kara Nov 11, 2016
4183fbc
fix(button): improved tap responsiveness on mobile (#1792)
crisbeto Nov 11, 2016
716372b
fix(button): remove `disabled` attribute when disabled value is false…
tinayuangao Nov 11, 2016
f6944e4
feat(tabs): animate tab change, include optional dynamic height (#1788)
andrewseguin Nov 11, 2016
13b7dd0
feat(slider): keyboard support (#1759)
mmalerba Nov 11, 2016
d3a50b3
fix(button): ensure icons are aligned vertically. (#1736)
devversion Nov 11, 2016
accab20
fix(dialog): backdrop not being removed if it doesn't have transition…
crisbeto Nov 11, 2016
aa617f9
chore: fix rebase error (#1833)
kara Nov 11, 2016
d0f4c3e
feat(select): support disabling (#1667)
kara Nov 11, 2016
175f2d8
chore: fix unit broken unit tests and CI not running them (#1834)
jelbourn Nov 12, 2016
2674736
chore: fix lint error (#1835)
jelbourn Nov 12, 2016
009046f
Revert "docs(theming): correct import paths (#1807)" (#1844)
jelbourn Nov 12, 2016
b79c953
feat(overlay): emit position change event (#1832)
kara Nov 14, 2016
b9fe75a
feat(tabs): add ripples to the tab group and nav bar links (#1700)
andrewseguin Nov 14, 2016
bbc5f6a
fix(radio): fix radio group behavior on change (#1735)
tinayuangao Nov 14, 2016
72ac7a0
feat(focus-trap): add the ability to specify a focus target (#1752)
crisbeto Nov 14, 2016
281bfa1
fix(connected-position): fix position emitter (#1863)
kara Nov 15, 2016
c255a70
test(dialog): add e2e tests (#1828)
crisbeto Nov 15, 2016
8b08f69
chore: update iOS unit test configuration (#1841)
devversion Nov 15, 2016
a40cae9
feat(snackbar): add onAction to snackbar ref (#1826)
josephperrott Nov 15, 2016
83de14f
fix(spinner): animation not being cleaned up when used with AoT (#1838)
crisbeto Nov 15, 2016
607de8f
chore: fix detach typos in overlay and portal (#1840)
devversion Nov 15, 2016
d7a54ef
fix(ripple): don't create background div until ripple becomes enabled…
dozingcat Nov 15, 2016
1552d70
feat(tooltip): show tooltip on longpress; remove delay on mouseleave …
andrewseguin Nov 16, 2016
a991ffd
test(grid-list): add basic e2e tests (#1874)
crisbeto Nov 16, 2016
b2d2f05
chore(): fix build (#1882)
kara Nov 16, 2016
6aa7e22
fix(dialog): add border radius (#1872)
crisbeto Nov 16, 2016
aa472a0
feat(overlay-directives): support fallback positions (#1865)
kara Nov 16, 2016
522324c
feat(projection): Host Projection service (#1756)
hansl Nov 16, 2016
721b63f
feat(tabs): md-stretch-tabs
dasois Nov 16, 2016
6dc5823
feat(tabs): md-stretch-tabs
dasois Nov 16, 2016
7572e34
fix(menu): reposition menu if it would open off screen (#1761)
kara Nov 16, 2016
435e0d9
docs(getting_started): update systemjs section (#1827)
amiral84 Nov 16, 2016
289070e
test(list): add basic e2e tests (#1876)
crisbeto Nov 16, 2016
9ec17c0
feat(textarea): add md-autosize directive (#1846)
jelbourn Nov 16, 2016
4331b27
feat(select): support fallback positions (#1873)
kara Nov 16, 2016
70efee5
chore: support AppRef attachView/detachView (#1894)
jelbourn Nov 16, 2016
41ad382
fix(select): add aria-owns property (#1898)
kara Nov 17, 2016
13c2188
feat(tabs): fixed tabs
dasois Sep 28, 2016
707bbb4
feat(tabs): md-stretch-tabs
dasois Nov 16, 2016
5270558
feat(tabs): md-stretch-tabs
dasois Nov 17, 2016
c3ceceb
Merge remote-tracking branch 'origin/feat_fixed-tabs' into feat_fixed…
dasois Nov 17, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,4 @@
/libpeerconnection.log
npm-debug.log
testem.log
/.chrome
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ language: node_js
sudo: false

node_js:
- '5.6.0'
- '6.9.1'

addons:
apt:
Expand Down
114 changes: 114 additions & 0 deletions CHANGELOG.md

Large diffs are not rendered by default.

5 changes: 2 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,8 +150,7 @@ To ensure consistency throughout the source code, keep these rules in mind as yo
* All features or bug fixes **must be tested** by one or more specs (unit-tests).
* All public API methods **must be documented**. (Details TBD).
* We follow [Google's JavaScript Style Guide][js-style-guide], but wrap all code at
**100 characters**. An automated formatter is available, see
[DEVELOPER.md](DEVELOPER.md#clang-format).
**100 characters**.

## <a name="commit"></a> Commit Message Guidelines

Expand Down Expand Up @@ -234,7 +233,7 @@ changes to be accepted, the CLA must be signed. It's a quick process, we promise
[coc]: https://github.com/angular/code-of-conduct/blob/master/CODE_OF_CONDUCT.md
[commit-message-format]: https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/preview
[corporate-cla]: http://code.google.com/legal/corporate-cla-v1.0.html
[dev-doc]: https://github.com/angular/material2/blob/master/DEVELOPER.md
[dev-doc]: https://github.com/angular/material2/blob/master/DEV_ENVIRONMENT.md
[github]: https://github.com/angular/material2
[gitter]: https://gitter.im/angular/material2
[individual-cla]: http://code.google.com/legal/individual-cla-v1.0.html
Expand Down
27 changes: 22 additions & 5 deletions GETTING_STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,11 @@ import { MaterialModule } from '@angular/material';
export class PizzaPartyAppModule { }
```

### Including core and theme styles:
See the [theming guide](docs/theming.md) for more information.
## Include the core and theme styles:
This is **required** to apply all of the core and theme styles to your application. You can either
use a pre-built theme, or define your own custom theme.

:trident: See the [theming guide](docs/theming.md) for instructions.

### Additional setup for `md-slide-toggle` and `md-slider`:
The slide-toggle and slider components have a dependency on [HammerJS](http://hammerjs.github.io/).
Expand All @@ -44,16 +46,31 @@ Add HammerJS to your application via [npm](https://www.npmjs.com/package/hammerj
(such as the [Google CDN](https://developers.google.com/speed/libraries/#hammerjs)), or served
directly from your app.

## Configuring SystemJS
If your project is using SystemJS for module loading, you will need to add `@angular/material`
to the SystemJS configuration:

```js
System.config({
// existing configuration options
map: {
...,
'@angular/material': 'npm:@angular/material/material.umd.js'
}
});
```

### [Optional] Using Material Design icons with `md-icon`:

- If you want to use Material Design icons, load the Material Design font in your `index.html`.
`md-icon` supports any font icons or svg icons, so this is only one potential option.
- If you want to use Material Design icons in addition to Angular Material components,
load the Material Design font in your `index.html`.
`md-icon` supports any font icons or svg icons, so this is only one option for an icon source.

**src/index.html**
```html
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
```

### Sample Angular Material 2 projects
## Sample Angular Material 2 projects
- [Material 2 Sample App](https://github.com/jelbourn/material2-app)
- [Angular Connect 2016 Demo](https://github.com/kara/leashed-in)
34 changes: 19 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Material Design for Angular 2
[![NPM Version](https://badge.fury.io/js/%40angular2-material%2Fcore.svg)](https://www.npmjs.com/package/%2540angular2-material%2Fcore)
[![npm version](https://badge.fury.io/js/%40angular%2Fmaterial.svg)](https://www.npmjs.com/package/%40angular%2Fmaterial)
[![Build Status](https://travis-ci.org/angular/material2.svg?branch=master)](https://travis-ci.org/angular/material2)
[![Gitter](https://badges.gitter.im/angular/material2.svg)](https://gitter.im/angular/material2?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

Expand Down Expand Up @@ -28,13 +28,15 @@ and which pieces are blocked) and make a comment.
Also see our [`Good for community contribution`](https://github.com/angular/material2/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+for+community+contribution%22)
label.

High level items planned for September 2016:
* Work on Angular core towards 2.0.0 final
* Preparing for conferences (Angular Connect and ng-europe)
* Final features for dialog
* Initial version of snackbar.
* Additional behaviors for menu, start design for select.
* Finalize high-level design details for data-table.
High level items planned for November 2016:
* Initial version of md-select
* Continued bug bashing
* Initial versions of autocomplete and chips
* AoT compile e2e app
* Continue work on https://material.angular.io site
* Major refactoring for md-input
* Tabs animations
* Expanding e2e test coverage


#### Feature status:
Expand All @@ -60,17 +62,17 @@ High level items planned for September 2016:
| menu | Initial version, needs enhancements | [README][17] | [#119][0119] |
| tooltip | Initial version, needs enhancements | [README][18] | - |
| ripples | Available, but needs to be applied | [README][19] | [#108][0108] |
| dialog | Started, not yet ready for release | - | [#114][0114] |
| snackbar / toast | Proof-of-concept | - | [#115][0115] |
| dialog | Started, not yet ready for release | [README][22] | [#114][0114] |
| snackbar / toast | Initial version, needs enhancements | [README][21] | [#115][0115] |
| select | Design started | - | [#118][0118] |
| textarea | Not started | - | [#546][0546] |
| autocomplete | Not started | - | [#117][0117] |
| chips | Not started | - | [#120][0120] |
| theming | In master, not released, some bugs | [Guide][20] | [#123][0123] |
| textarea | Started | - | [#546][0546] |
| autocomplete | Design started | - | [#117][0117] |
| chips | Design started | - | [#120][0120] |
| theming | Initial version, needs enhancements | [Guide][20] | - |
| prod build | Not started | - | - |
| docs site | UX design and tooling in progress | - | - |
| typography | Not started | - | [#205][0205] |
| layout | Not started | - | - |
| layout | Design in-progress, prototyped | - | - |
| fab speed-dial | Not started | - | [#860][0860] |
| fab toolbar | Not started | - | - |
| bottom-sheet | Not started | - | - |
Expand Down Expand Up @@ -100,6 +102,8 @@ High level items planned for September 2016:
[18]: https://github.com/angular/material2/blob/master/src/lib/tooltip/README.md
[19]: https://github.com/angular/material2/blob/master/src/lib/core/ripple/README.md
[20]: https://github.com/angular/material2/blob/master/docs/theming.md
[21]: https://github.com/angular/material2/blob/master/src/lib/snack-bar/README.md
[22]: https://github.com/angular/material2/blob/master/src/lib/dialog/README.md

[0107]: https://github.com/angular/material2/issues/107
[0119]: https://github.com/angular/material2/issues/119
Expand Down
9 changes: 0 additions & 9 deletions build/autoprefixer-options.js

This file was deleted.

3 changes: 0 additions & 3 deletions config/environment.dev.ts

This file was deleted.

10 changes: 0 additions & 10 deletions config/environment.js

This file was deleted.

3 changes: 0 additions & 3 deletions config/environment.prod.ts

This file was deleted.

69 changes: 69 additions & 0 deletions docs/theming-your-components.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
#Theming your custom components
In order to style your own components with Angular Material's tooling, the component's styles must be defined with Sass.

## Using `@mixin` to automatically apply a theme

### Why using `@mixin`
The advantage of using a `@mixin` function is that when you change your theme, every file that uses it will be updated automatically.
Calling it with a different theme argument allow multiple themes within the app or component.

### How to use `@mixin`
We can better theming our custom components adding a `@mixin` function to its theme file and then calling this function to apply a theme.

All you need is to create a `@mixin` function in the custom-component-theme.scss

```sass
// Import all the tools needed to customize the theme and extract parts of it
@import '~@angular/material/core/theming/all-theme';

// Define a mixin that accepts a theme and outputs the color styles for the component.
@mixin candy-carousel-theme($theme) {
// Extract whichever individual palettes you need from the theme.
$primary: map-get($theme, primary);
$accent: map-get($theme, accent);

// Use md-color to extract individual colors from a palette as necessary.
.candy-carousel {
background-color: md-color($primary);
border-color: md-color($accent, A400);
}
}
```
Now you just have have to call the `@mixin` function to apply the theme:

```sass
// Import a pre-built theme
@import '~@angular/material/core/theming/prebuilt/deep-purple-amber';
// Import your custom input theme file so you can call the custom-input-theme function
@import 'app/candy-carousel/candy-carousel-theme.scss';

// Using the $theme variable from the pre-built theme you can call the theming function
@include candy-carousel-theme($theme);
```

For more details about the theming functions, see the comments in the
[source](https://github.com/angular/material2/blob/master/src/lib/core/theming/_theming.scss).

### Best practices using `@mixin`
When using `@mixin`, the theme file should only contain the definitions that are affected by the passed-in theme.

All styles that are not affected by the theme should be placed in a `candy-carousel.scss` file. This file should contain everything that is not affected by the theme like sizes, transitions...

Styles that are affected by the theme should be placed in a separated theming file as `_candy-carousel-theme.scss` and the file should have a `_` before the name. This file should contain the `@mixin` function responsible for applying the theme to the component.


## Using colors from a pallete
You can consume the theming functions from the `@angular/material/core/theming/theming` and Material pallete vars from `@angular/material/core/theming/palette`. You can use the `md-color` function to extract a specific color from a palette. For example:

```scss
// Import theming functions
@import '~@angular/material/core/theming/theming';
// Import your custom theme
@import 'src/unicorn-app-theme.scss';

// Use md-color to extract individual colors from a palette as necessary.
.candy-carousel {
background-color: md-color($candy-app-primary);
border-color: md-color($candy-app-accent, A400);
}
```
48 changes: 19 additions & 29 deletions docs/theming.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@

### What is a theme?
A **theme** is the set of colors that will be applied to the Angular Material components. The
library's approach to theming is based on the guidance from the [Material Design spec][1].
library's approach to theming is based on the guidance from the [Material Design spec][1].

In Angular Material, a theme is created by composing multiple palettes. In particular,
In Angular Material, a theme is created by composing multiple palettes. In particular,
a theme consists of:
* A primary palette: colors most widely used across all screens and components.
* An accent palette: colors used for the floating action button and interactive elements.
Expand All @@ -21,9 +21,9 @@ app doesn't have to spend cycles generating theme styles on startup.
### Using a pre-built theme
Angular Material comes prepackaged with several pre-built theme css files. These theme files also
include all of the styles for core (styles common to all components), so you only have to include a
single css file for Angular Material in your app.
single css file for Angular Material in your app.

You can include a theme file directly into your application from
You can include a theme file directly into your application from
`@angular/material/core/theming/prebuilt`

If you're using Angular CLI, this is as simple as including one line
Expand All @@ -35,8 +35,8 @@ in your `style.css` file:
Alternatively, you can just reference the file directly. This would look something like
```html
<link href="node_modules/@angular/material/core/theming/prebuilt/indigo-pink.css" rel="stylesheet">
```
The actual path will depend on your server setup.
```
The actual path will depend on your server setup.

You can also concatenate the file with the rest of your application's css.

Expand All @@ -56,25 +56,25 @@ the corresponding styles. A typical theme file will look something like this:
// Define the palettes for your theme using the Material Design palettes available in palette.scss
// (imported above). For each palette, you can optionally specify a default, lighter, and darker
// hue.
$primary: md-palette($md-indigo);
$accent: md-palette($md-pink, A200, A100, A400);
$candy-app-primary: md-palette($md-indigo);
$candy-app-accent: md-palette($md-pink, A200, A100, A400);

// The warn palette is optional (defaults to red).
$warn: md-palette($md-red);
$candy-app-warn: md-palette($md-red);

// Create the theme object (a Sass map containing all of the palettes).
$theme: md-light-theme($primary, $accent, $warn);
$candy-app-theme: md-light-theme($candy-app-primary, $candy-app-accent, $candy-app-warn);

// Include theme styles for core and each component used in your app.
// Alternatively, you can import and @include the theme mixins for each component
// that you are using.
@include angular-material-theme($theme);
@include angular-material-theme($candy-app-theme);
```

You only need this single Sass file; you do not need to use Sass to style the rest of your app.

If you are using the Angular CLI, support for compiling Sass to css is built-in; you only have to
add a new entry to the `"styles"` list in `angular-cli.json` pointing to the theme
If you are using the Angular CLI, support for compiling Sass to css is built-in; you only have to
add a new entry to the `"styles"` list in `angular-cli.json` pointing to the theme
file (e.g., `unicorn-app-theme.scss`).

If you're not using the Angular CLI, you can use any existing Sass tooling to build the file (such
Expand All @@ -87,8 +87,8 @@ and then include the output file in your application.
The theme file can be concatenated and minified with the rest of the application's css.

#### Multiple themes
You can extend the example above to define a second (or third or fourth) theme that is gated by
some selector. For example, we could append the following to the example above to define a
You can extend the example above to define a second (or third or fourth) theme that is gated by
some selector. For example, we could append the following to the example above to define a
secondary dark theme:
```scss
.unicorn-dark-theme {
Expand All @@ -97,26 +97,16 @@ secondary dark theme:
$dark-warn: md-palette($md-deep-orange);

$dark-theme: md-dark-theme($dark-primary, $dark-accent, $dark-warn);
@include angular-material-theme($dark-theme);

@include angular-material-theme($dark-theme);
}
```

With this, any element inside of a parent with the `unicorn-dark-theme` class will use this
dark theme.

### Styling your own components
In order to style your own components with our tooling, the component's styles must be defined
with Sass.

You can consume the theming functions and variables from the `@angular/material/core/theming`.
You can use the `md-color` function to extract a specific color from a palette. For example:
```scss
.unicorn-carousel {
background-color: md-color($primary);
color: md-color($primary, default-contrast);
}
```
### Theming your own components
For more details about theming your own components, see [theming-your-components.md](https://github.com/angular/material2/blob/master/docs/theming-your-components.md)

### Future work
* Once CSS variables (custom properties) are available in all the browsers we support,
Expand Down
18 changes: 18 additions & 0 deletions e2e/components/checkbox/checkbox.e2e.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
describe('checkbox', function () {
describe('check behavior', function () {
beforeEach(function() {
browser.get('/checkbox');
});
it('should be checked when clicked, and be unchecked when clicked again', function () {
element(by.id('test-checkbox')).click();
element(by.css('input[id=input-test-checkbox]')).getAttribute('checked').then((value: string) => {
expect(value).toBeTruthy('Expect checkbox "checked" property to be true');
});

element(by.id('test-checkbox')).click();
element(by.css('input[id=input-test-checkbox]')).getAttribute('checked').then((value: string) => {
expect(value).toBeFalsy('Expect checkbox "checked" property to be false');
});
});
});
});
Loading