Releases: angular/components
unobtainium-sunglasses
Breaking Changes
MdIconModule
no longer importsHttpModule
. If your application depended onHttp
being provided throughMdIconModule
, you should now directly importHttpModule
into your application.- The
forRoot
method on all Angular Material modules has been removed. It was previously deprecated and a no-op. Importing the modules directly will have the same effect. - Angular Material now requires TypeScript 2.2, which adds support for mixins.
Highlights
- New datepicker component! This is still very new, so please try it out and file any issues you encounter on Github.
- You can now disable Material's global sanity checks (at your own risk). These checks include whether your theme file is included, that you have a doctype, and more. See the PR here.
- Our support for Angular Universal should be much improved! Expect further improvements in subsequent releases.
Bug Fixes
- autocomplete: not scrolling to active option when pressing home/end (#3709) (8d0cd04)
- autocomplete: not updating the size while the panel is open (#4346) (bfeb515)
- autocomplete: panel not being shown with delay and OnPush change detection (#3977) (efd3485), closes #3955
- autocomplete: reposition panel on scroll (#3745) (81a6f8d)
- autocomplete: unable to click to select items in IE (#3188) (78985b7), closes #3351
- button: ripple color for raised buttons (#3829) (7f65f31), closes #2901
- card: update color property to use theme's text color. (#3952) (5e7af26)
- cdk: add camelCase selectors for cdk directives (#4054) (cb98270)
- checkbox: do not set
indeterminate
when setchecked
programmatically (#4024) (de8b97f) - checkbox: no side margin if label has no content (#2121) (4e8d806), closes #2011
- checkbox: set pointer cursor for checkbox (#4473) (b2f93b5), closes #4185
- checkbox: support OnPush for disabled with forms module (#4087) (efb39da)
- checkbox, radio: ripple error on focus event (#3869) (e22b55e), closes #3856
- chips: wrong margin on single chip (#4366) (5d03c1a), closes #4359
- compatibility: error in theme check with angular universal (#3872) (a65d2f4), closes #3870
- compatibility: throw better error when wrong prefix is used (#3871) (2d50044)
- connected-overlay: better handling of dynamic content (#4250) (525ce1e), closes #4155
- core: remove deprecated forRoot functions (#3539) (c94f471)
- core: export MdOptionSelectionChange (#4285) (af978cd)
- dialog: capture previously focused element immediately (#3875) (29968b8)
- dialog: close all dialogs on popstate/hashchange (#2742) (85bc3a6), closes #2601
- dialog: fire afterClosed callback after all dialog actions are done (#3892) (ee1a5a7)
- dialog: provide default value for MD_DIALOG_DATA token (#4120) (d1128fe), closes #4086
- dialog: restoring focus too early (#4329) (afaa2dc), closes #4287
- dialog: unable to press escape to close in lazy-loaded module (#3788) (3796f69), closes #3737
- focus-trap: import rxjs first operator (#4400) (2c8faf6)
- grid-list: export MdGridTile. Fixes #2408 (#4000) (9d719c5)
- input: add back pointer-events none removed in #3878 (#4206) (fb1fabc)
- input: allow pointer events on placeholder (#3878) (32b7426)
- input: incorrect height with autosize (#4084) (21f8899), closes #4070
- input: input placeholder not being hidden in IE under certain conditions (#4478) (fc73a4b), closes #4464
- input: make start and end hints interact well when their text needs to wrap (#3979) (21cbf34)
- input: placeholder not rendering in Chrome under certain conditions (#4405) (5e349d9)
- input: single-line hints overflowing the parent (#4107) (0b9b582), closes #4051
- input-container: new attribute hideRequiredMarker (#4237) (6c31adb), closes #3681
- list: fix padding for list items (#4486) (d1d2e18)
- list: icon size in dense mode (#3913) (f412499), closes #3886
- list: remove overflow hidden from content (#4426) (078aa19)
- list: set explicit box-sizing on icon (#3876) (e263fb7), closes #3863
- menu: incorrect panel max height (#4214) (d3210e7)
- menu: unable to bind to xPosition and yPosition (#4213) (1fd50aa), closes #4169
- menu: wrong icon margin in rtl (#4225) ([ba6b9bb](htt...
cesium-cephalopod
Breaking changes
Package structure
The package structure for Angular Material has changed to match that of Angular itself. This has
a few ramifications on applications consuming Angular Material:
- Deep imports will no longer work, e.g.,
@angular/material/core/a11y
. All public symbols
should be imported directly from@angular/material
. Deep imports have always been an anti-pattern,
but our previous package structure inadvertently allowed them. - The imports for theming have changed.
** For prebuilt themes, you can now find the CSS files in theprebuilt-themes/
directory in the
package root. For angular-cli projects, this will look something like
@import '~@angular/material/prebuilt-themes/deeppurple-amber.css';
** For custom themes, you can now import theming.scss
directly from the package root. Again, with
angular-cli, this will look something like:
@import '~@angular/material/theming';
Removal of deprecated symbols
- The deprecated,
Md
-prefixed aliases forLiveAnnouncer
,Platform
, and
UniqueSelectionDispacther
have been removed.
MaterialModule
MaterialModule
(andMaterialRootModule
) have been marked as deprecated.
We've found that, with the current state of tree-shaking in the world,
that using an aggregate NgModule like MaterialModule
leads to tools
not being able to eliminate code for components that aren't used.
In order to ensure that users end up with the smallest code size
possible, we're deprecating MaterialModule, to be removed in the a
subsequent release.
To replace MaterialModule
, users can create their own "Material"
modul within their application (e.g., GmailMaterialModule
) that
imports only the set of components actually used in the application.
Angular 4
- Angular Material now depends on Angular 4.
- Now that animations have been refactored into a separate package, users of
@angular/material
need to explicitly importBrowserAnimationsModule
(orNoopAnimationsModule
) from
@angular/package-browser/animations
as well as installing@angular/animations
.
Bug Fixes
- autocomplete: "undefined" being displayed on empty control with ngModel (#3535) (675c9df), closes #3529
- autocomplete: aria-expanded should be updated when panel hides (#3494) (932b4a0)
- autocomplete: do not trigger submit on ENTER (#3727) (bedf5a1), closes #3159
- autocomplete: fix down arrow use with ngIf (#3493) (a4e2de7)
- autocomplete: fix key manager instantiation (#3274) (c21ff40)
- autocomplete: not showing panel on first focus in certain cases (#3775) (75996b5)
- autocomplete: prevent opening on load in IE (#3190) (a4da08b), closes #3183
- autocomplete: remove max width for autocomplete panel (#3297) (738e9bf), closes #3198
- autocomplete: update overlay ref width on menu trigger (#3573) (6915e8a)
- button: add transition to focus overlay (#2850) (6cdd8db)
- button: persist theme color of button when leaving hover state (#3629) (3ad6ff0)
- button: square ripple in compatibility mode (#3167) (ceb472b), closes #3164
- button: use FocusOriginMonitor for focus styles (#3294) (5d6920d)
- button-toggle: fix color for selected button toggle and selected disabled button toggle (#3418) (be167c9), closes #3382
- button-toggle: only show focus style when focused via keyboard (#3232) (d744a5f)
- card: removed header height (#3450) (17bf5e5), closes #3288
- card: unable to override elevation (#3139) (4ee16a9), closes #3123
- checkbox: add focus indication (#3403) (01188d9), closes #3102
- checkbox: create ripple on label mousedown (#3206) (3edf105), closes #3030
- checkbox: focus origin for focus method (#3763) (7a60489)
- checkbox: show checkbox animation only if user click or indeterminate state (#3137) (f4323b2), closes #2783
- checkbox: switch checkbox behaviors for click and change events (#3146) (8aa9857)
- chips: Fix adding new chips on demo page (#3426) (2d16a24)
- compatibility: remove ink bar from compatibility check (#3267) (c203589)
- connected-overlay: direction not being updated (#3293) (817dcfd), closes #3241
- connected-position: error if none of the initial positions fit in viewport (#3189) (a306a8e)
- core: log warning if doctype is missing (#2849) (22b0660), closes #2351
- demo: remove input route from demo app (#2922) (6bac315)
- dialog: delay focus until animation is done (#3774) (d7d2b16), closes #3722
- dialog: leaking component instance references (#2875) (e120e8d), closes #2734
- dialog: leaking MdDialogContainer references (#2944) (8e6720b), closes #2876
- docs: only rewrite relative links (#3339) (cb57660), closes #3147
- focus-trap: avoid closure compiler issues when adding anchors (#3448) (8b2ae0d)
- focus-trap: enabled property not being coerced (#3417) (d81445b)
- focus-trap: exception when element contains SVG on IE (#3432) (d06ad75), closes #3410
- input: baseline alignment on textarea (#3714) (7cff349)
- input: change dividerColor to color ([#3726](https://github.com/angular/materi...
flannel-papaya
Breaking changes from beta.1
-
Styling is no longer prefixed by
md-
. All styling is now prefixed bymat-
so that apps can upgrade from AngularJS Material to Angular Material without styling conflicts between the two library components.
See (#2790) for the details on the code change and some useful regular expressions that can help migrate styles. -
Checkbox tab index @input has been changed from
tabindex
totabIndex
. (#2953) -
Ripple no longer has the
mdRippleBackgroundColor
input to change the background color. (#2859) -
The deprecated use of
<md-input>
and<md-textarea>
has been removed. UsemdInput
on an input or textarea within amd-input-container
.md-prefix
andmd-suffix
are nowmdPrefix
andmdSuffix
. (#2788)<md-input-container> <input mdInput name="value" ngModel> </md-input-container>
-
The deprecated use of
<md-sidenav-layout>
has been removed. Use<md-sidenav-container>
instead. (#2283) -
Input floating placeholder @input has changed from a boolean (
true
andfalse
) to a state (always
,never
, andauto
) and was renamed fromfloatingPlaceholder
tofloatPlaceholder
. For details on when to use which state, see (#2585) -
The use of Module
forRoot
has been deprecated and will be removed in the next release. Instead, just simply import MaterialModule directly:@NgModule({ imports: [ ... MaterialModule, ... ] ... });
Bug Fixes
- autocomplete: add mat version of autocomplete @Input (#2928) (e5521a8)
- autocomplete: allow basic use without forms directives (#2958) (4ee2980)
- autocomplete: close panel when options list is empty (#2834) (8a3b6fd)
- autocomplete: double-clicking input shouldnt close the panel (#2835) (18969f4)
- autocomplete: hide instead of close when options empty (#2997) (a022035)
- autocomplete: placeholder should float while panel is open (#2730) (eec4dc6)
- autocomplete: scroll options below fold into view (#2728) (6c84603)
- autocomplete: support rtl (#2648) (4f59ad0)
- autocomplete: up arrow should set last item active (#2776) (fd5e4d9)
- autosize: export md-autosize directive (#2432) (f2d73da), closes #2419
- button: add default color for mat-raised-button (#3052) (6fe1d9a)
- button: only flat button and icon buttons should inherit the color (#2561) (ac363df), closes #2539
- button: raised buttons in dark theme (#3070) (87ab712)
- button: reuse _getHostElement() to avoid redundant elementRef.nativeElement calls (#2625) (c7d1c17)
- button-toggle: add the setDisabledState from ControlValueAccessor (#2430) (fb750b4)
- button-toggle: conflict with radio component (#2343) (9e99374), closes #2274
- button-toggle: make conform with design specs (#2570) (fed5d7b)
- card: fix padding for md-card-actions in xs screens (#2567) (ad0df31)
- checkbox: Emit event when checkbox's indeterminate value changes (#2130) (f11c5eb)
- checkbox: rename tabindex to tabIndex (#2953) (b91964a)
- checkbox: ripple color does not change (#2857) (7ac29f8)
- checkbox, radio: not using theme border color (#2744) (07ec765)
- compatibility: add missing mat- selectors (#2923) (f29f7ab)
- connected-position-strategy: wrong logic when determining whether element is on screen (#2677) (e055d05), closes #2102 #2658
- dialog: escape key not working once element loses focus (#3082) (a08dc55), closes #3009
- dialog: prevent error when restoring focus on IE (#2771) (153fcd3), closes #2760
- dialog: prevent the close button from submitting forms (#2659) (29f939a), closes #2599
- dialog: use injector from viewContainerRef if provided (#2655) (be0da09)
- docs: properly create links in guide files (#2770) (60f03ed)
- icon: add caching of md-icon aria-label (#2649) (08e9d70), closes #2642
- input: add more padding so that the hint doesn't overflow the container (#2246) (d7831d9)
- input: camel-case md-prefix and md-suffix (#2639) (7562322), closes #2636
- input: disable underline with reactive forms (#2565) (f9dd34f), closes #2558
- input: disabled inputs should be grayed out (#2513) (ed3ffe0)
- input: ensure that property bindings work (#2431) (b4b4224), closes #2428
- input: fix chrome 56 warning (#2906) (62189a3)
- input: fix placeholder for number input with bad input. (#2362) (52aa715)
- input: hints not being read out by screen readers (#2856) (f899b5f), closes #2798
- input: horizontal overflow in IE and Edge (#2784) (e0fe635)
- input: properly determine input value (#2455) (3a11927), closes [#2441](https://github.com/angular/materi...
rebar-teacup
velvet-pizza
Breaking changes from alpha.11
- The
svgSrc
propert of<md-icon>
has been removed. All SVG URLs must now be explicitly marked
as trusted using Angular'sDomSanitizer
service. - The
<md-input>
element is deprecated in favor of<md-input-container>
. This new component
allows for direct access to the native input element. - All
@Input
properties have been changed to use their camelCase names for binding. The old names
are still available as deprecated but will be removed in the next release. - All
@Directive
selectors are now camelCase to be consistent with Angular core. For example,
[md-tooltip]
is now[mdTooltip]
The old selectors are still available as deprecated but will
be removed in the next release. <md-progress-circle>
has been renamed to<md-progress-spinner>
. The old selector and symbols
are still available as deprecated but will be removed in the next release.<md-sidenav-layout>
has been renamed to<md-sidenav-container>
. The old selector is still
available as deprecated but will be removed in the next release.- Several components in
core/
, such as Overlay, have had their prefix changed tocdk-
(short
for "component dev kit"). This signifies that these are general-purpose tools for building
components that are not coupled to Material Design.The old selectors are still
available as deprecated but will be removed in the next release. The CSS classes have been changed. - The
align
property formd-checkbox
andmd-radio-button
has been changed tolabelPosition
with valuesbefore
andafter
. MdTooltip
properties are now prefixed, e.g.,mdTooltipPosition
,mdTooltipHideDelay
, etc.
Note on HammerJS
HammerJS is now optional. It is still necessary for gestures to work within certain components, but
should no longer throw an error if it is missing.
Bug Fixes
- a11y: add all providers to forRoot (#2222) (9272b4b), closes #2189
- add re-exports for symbols needed by Aot (#2149) (c324142)
- icon: remove svgSrc, only allow trusted urls (#1933) (4571561)
- input: copy input state classes to md-input-container (#2191) (f0c4148)
- input: fix underline color to match spec (#2167) (b850fed), closes #2126
- input: label alignment in rtl (#2047) (7b3a059), closes #2034
- input: treat number 0 as non-empty (#2245) (a818579)
- input: unable to focus input in IE 11 (#2233) (8ec3a19)
- overlay: proper backdrop stacking with multiple overlays (#2276) (b16031a), closes #2272
- platform: Remove assumption of `window' in MdPlatform (#2221) (e436775)
- positioning: fallback positions should work while scrolled (#2193) (8df30db)
- progress-circle, progress-bar: bind color via [color] rather than attr.color (e4d2bef)
- progress-spinner: Rename ProgressCircle to ProgressSpinner (#2300) (221c234)
- select: clear select if no option matches value (#2110) (2855cc3), closes #2109
- select: make invalid selector more specific (#2166) (a7c88c5)
- sidenav: make
focus-trap
occupy full height of sidenav (#2145) (13223df) - sidenav: Rename md-sidenav-layout to md-sidenav-container. (#2183) (8f1c5a9)
- slider: prevent thumb from getting stuck on Mobile Safari (#2142) (4adee46)
- snack-bar: clean up element when associated viewContainer is destroyed (#2219) (db9608f), closes #2190
- tabs: observing tab header label changes to recalculate width (#2186) (7ab4430), closes #2155
- TSError: ? Unable to compile TypeScript when running 'gulp:build' (#2132) (714c2a4)
- tests: snackbar ref has unnecessary observable.of (#2298) (d076bd3)
- tooltip: add missing rxjs import (#2288) (ba7053f)
Features
- make hammerjs optional (#2280) (28691ca)
- chips: initial version of md-chip-list. (#2242) (f45c315) (#2046) (ba85883) (#2332) (3f2db27)
- dialog: add dialog content elements (#2090) (cac72aa), closes #1624 #2042
- checkbox, radio: change
align
tolabelPosition
(inverted) (#2289) (a1f9028) - connected-position: apply the fallback position that shows the largest area of the element (#2102) (4f5b9c5), closes #2049
- core: add scrollable view properties to connected pos strategy (#2259) (b60d33f)
- input: create md-input-container to eventually replace md-input (#2052) (ca2046b)
- scroll: provide directive and service to listen to scrolling (#2188) (9b68e68)
- sidenav: close via escape key and restore focus to trigger element (#1990) (a1331ec)
- tooltip: add input for delaying show and hide (#2101) (e85d108)
Performance Improvements
polyester-golem
NOTE: Be sure to delete your previous install of @angular/material
and install it fresh, as
npm
sometimes doesn't see that there is a more recent alpha release.
Bug Fixes
- a11y: improved accessibility in high contrast mode (#1941) (5cf7d17), closes #421 #1769
- button: ensure icons are aligned vertically. (#1736) (d3a50b3), closes #1093
- button: improved tap responsiveness on mobile (#1792) (4183fbc), closes #1316
- button: remove
disabled
attribute when disabled value is false for MdAnchor (#1789) (716372b) - checkbox: fix native checked not being checked when MdCheckbox initial checked value is true (#2055) (3fd3117)
- checkbox, input, radio, slide-toggle: implement setDisabledState from ControlValueAccessor (#1750) (77a960c), closes #1171
- dialog: add border radius (#1872) (6aa7e22), closes #1868
- dialog: avoid subpixel rendering issues and refactor GlobalPositionStrategy (#1962) (1ea6d34), closes #932
- dialog: backdrop not being removed if it doesn't have transitions (#1716) (accab20), closes #1607
- elevation: change elevations to match spec (#1857) (c2597b6)
- interactivity-checker: improve robustness of isTabbable (#1950) (4b7e52d)
- list: prevent list item wrapper elements from collapsing (#2075) (27f9c99), closes #2012
- list-key-manager: prevent the default keyboard actions (#2009) (a8355e4)
- menu: reposition menu if it would open off screen (#1761) (7572e34)
- overlay: prevent blurry connected overlays (#1784) (303dd69)
- overlay-directives: update offsets if they change after overlay creation (#1981) (b36db15)
- radio: fix radio group behavior on change (#1735) (bbc5f6a)
- ripple: Always remove ripple after a certain period (#1915) (62cc830)
- ripple: don't create background div until ripple becomes enabled (#1849) (d7a54ef)
- ripple: Fix the ripple position when page is scrolled (#1907) (dd508ea)
- sidenav: resolve promise as false rather than (#1930) (7816752)
- slider: emit change event after updating value accessor (#1901) (8caf9a6)
- slider: support for RTL and invert (#1794) (5ac29dd)
- spinner: animation not being cleaned up when used with AoT (#1838) (83de14f), closes #1283
- tab-link: avoid potential memory leak (#1877) (e332f15)
- tabs: tabs should update when tabs are added or removed (#2014) (dfc580d)
- tooltip: check tooltip disposed on animation hidden (#1816) (9c0d82a)
- tooltip: don't show tooltip if message is empty or not present (#2081) (2701aae), closes #2078
- tooltip: throw a better error when an invalid position is passed (#1986) (539e44e)
Features
- select initial version of md-select (too many commits to list)
- textarea: add md-autosize directive (this will be more useful once the md-input refactoring is complete) (#1846) (9ec17c0)
- tabs: paginate tab header when exceeds width (#2084) (92e26d7)
- tabs: add ripples to the tab group and nav bar links (#1700) (b9fe75a)
- tabs: animate tab change, include optional dynamic height (#1788) (f6944e4)
- tabs: md-stretch-tabs (#1909) (78464a2), closes #1353
- button-toggle: add option for vertical toggle groups (#1936) (cb0d6fc), closes #1892
- dialog: add configurable width, height and position (#1848) (bc6cf6e), closes #1698
- dialog: add the ability to close all dialogs (#1965) (b2999c9)
- focus-trap: add the ability to specify a focus target (#1752) (72ac7a0), closes #1468
- icon: added color attribute to md-icon for icon theming (#1896) (da5febc)
- overlay: emit position change event (#1832) (b79c953)
- overlay: support min width and min height (#2063) (a695574)
- overlay-directives: attach and detach events (#1972) (a5eab75)
- overlay-directives: support fallback positions (#1865) (aa472a0)
- sidenav: emit event when backdrop is clicked (#1638) (93807ed), closes #1427
- sidenav: focus capturing (#1695) (b9c3304)
- slider: keyboard support (#1759) (13b7dd0)
- slider: vertical mode (#1878) (deb940f)
- snackbar: add onAction to snackbar ref ([#1826](https://githu...
mithril-hoverboard
Breaking Changes
-
MdSnackbarConfig
no longer takes aViewContainerRef
as a contructor argument because the
ViewContainerRef
is now optional. -
Tabs no longer use an
md-tab-content
directive. Instead, the non-label content of the tab is
used as its content. Labels can also be specified via attribute, so the tabs can now be given as:<md-tab-group> <md-tab label="Overview"> This is the overview tab </md-tab> <md-tab label="Details"> This is the details tab </md-tab> </md-tab-group>
You can still use
md-tab-label
to provide a label template.
Features
- tab-nav-bar: new component! Provides a tab-bar for use with a router-outlet (#1589) (572b36e)
- a11y: manager for list keyboard events (#1599) (95b2a34)
- checkbox: add color attribute. (#1463) (333b11e)
- checkbox: add ripple (#1611) (ef4c3c9)
- dialog: add disableClose option (#1678) (93f8e04), closes #1419
- dialog: allow for an object literal to be passed on init (#1679) (f525db1)
- dialog: don't require a ViewContainerRef (#1704) (f59030e)
- menu: add animations (#1685) (7fcf511)
- menu: allow menu-trigger to take a menu interface. (#1564) (96d196a), closes #1560
- menu: support icons (#1702) (982cdaa)
- overlay: add custom classes for backdrop (#1532) (0b54668)
- overlay: set overlay size (#1583) (ffbc295)
- overlay: support all overlay config properties (#1591) (6f322cf)
- overlay: support custom offsets (#1660) (1738d24)
- overlay: support rtl in overlays (#1593) (b56f520)
- radio: add ripple (#1553) (d83b3e0)
- slider: fire change event (#1618) (780a654)
- slider: implement ControlValueAccessor setDisabledState (#1603) (437ec8e)
- snack bar: add enter and exit animations. (#1320) (6df29dc)
- snackbar: don't require a ViewContainerRef (#1783) (9115538)
- tabs: simplify api (#1645) (ea6c817)
- textarea: initial md-textarea. Does not yet support auto-size. (#1562) (aff22e5)
- tooltip: add tooltip animations (#1644) (52582f4)
Bug Fixes
- aot: export dialog/snackbar containers through index (#1378) (bb61928)
- aot: fix aot error w/ live announcer (#1355) (276d07d)
- button: Changed button corner radius from 3px to 2px (#1441) (ec48b34)
- button: set vertical alignment for md-button and md-raised-button (#1565) (f10ac7c)
- button-toggle: add exportAs (#1528) (d2c288d)
- button-toggle: disable user-select in button-toggle (#1720) (83f6efc)
- checkbox: disable for all non-false values (#1631) (80491a9)
- checkbox: prevent checkbox being squished (#1713) (6601949)
- checkbox: vertically align for when there's no text (#1721) (7fd0fcd)
- gestures: don't clobber native drag events (#1458) (b09465c) (#1744) (4af3cd3), closes #1025
- input: correctly position md-hint in IE11 when position start (#1674) (ecefb89)
- input: remove invalid aria-target attribute (#1513) (601c036), closes #929
- input: set line-height to normal (#1734) (f1f660e)
- list: ensure multi-line lists expand to fill space (#1466) (e7b872a)
- list: prevent default black border from applying (#1548) (4086b32), closes #1336
- list: set flex-shrink for avatar (#1464) (5a528aa), closes #1403
- menu: improve a11y for screenreaders (#1715) (267e323)
- menu: make menu open idempotent (#1478) (a5b3296)
- menu: properly handle spacebar events (#1533) (cfe3e98), closes #1175
- menu: update menu to use overlay rtl (#1687) (2b913de)
- menu: update to use overlay backdrop (#1534) (add0d23)
- overlay: ensure container covers entire screen (#1634) (af39236)
- overlay: fix connected position calculation while scrolled (#1732) (2de461e)
- overlay: not taking up entire viewport if body is scrollable (#1661) (16cbbab), closes #1633
- overlay: raise z-index for overlay-container (#1614) (8f50c35)
- portal: cleanup PortalHost on directive destroy (#1703) (7e08468)
- progress-bar: bar being thrown off by parent's text-align (#1717) (309d54c), closes [#1165](https://github.com/angul...
cobalt-kraken
Breaking Changes
Angular Material has changed from @angular2-material/...
packages to a single package under
@angular/material
. Along with this change, there is a new NgModule, MaterialModule
, that
contains all of the components. Build tools such as rollup.js
can perform
tree-shaking to eliminate the code for components that you aren't using.
Features
- theming: add initial version for theming (#1239) (e0726e1)
- dialog: initial version of dialog (#1041) (7ecda22, #1321) (74dc5b2, #1330) (23143b9)
- snack-bar: initial version of MdSnackBar. (#1296) (a732e88)
- packaging: move packaging to a single "@angular/material" (#1286) (b5c8c63)
- a11y: add basic focus-trap directive (#1311) (3e8b9d9)
- a11y: initial interactivity checker (#1288) (8a4b69d)
- card: add md-card-footer (#1178) (1c2a3f1)
Bug Fixes
- aot: change @Inputs to not be private (#1289) (b284dd4)
- checkbox, slide-toggle: forward required attribute to input. (#1137) (0e9383a), closes #1133
- gestures: add hammer types by default (#1309) (1a824d2)
- grid-list: darken grid footer (#1310) (f9116f3)
- grid-list: hide overflow on tiles (#1299) (06a6076)
- input: input should not be treated as empty if it is a date field. (#846) (fe2b493), closes #845 #845 #845
- sidenav: align text at start (#1297) (0e0ff0e)
- sidenav: fix dark theme (#1319) (332a4a2)
- sidenav: fix Promise type to match (#1188) (3d5ceab)
- theming: set input default color to currentColor in input theme (#1260) (#1262) (fa78f72)
ectoplasm-helicopter
Breaking Changes
- all: we've updated our packaging to match angular/angular's packaging. If you're using SystemJS in your project, you will probably want to
switch to using our UMD bundles. Example config:
'@angular2-material/core': {
format: 'cjs',
main: 'core.umd.js'
}
You can see a more detailed example in our demo app's system config here.
- all: material modules must be included with
forRoot()
when bootstrapping. See the ngModules guide for
more information.
@NgModule({
imports: [
MdCoreModule.forRoot()
MdRadioModule.forRoot(),
MdIconModule.forRoot()
]
...
});
- input:
md-input
attributes now match the casing of native attributes. Previously they were camel-cased; now they are all lowercase.
Example:autoComplete
is nowautocomplete
. See #1066 for a full list. - overlay: overlays are now synchronous. This means actions like creating an overlay no longer return a promise.
Bug Fixes
- button: hover styles no longer applied to disabled buttons (#909) (21e419d), closes #866
- button: stop using
Type
from @angular (#991) (97d3ed3) - button-toggle: toggle group should not emit an initial change event. (#1144) (e5830d1)
- card: remove unnecessary intermediate div (#1068) (b5e1e33)
- checkbox: export TransitionCheckState enum (#1147) (cda90f3)
- input: make attributes match native ones (#1066) (f3a7b91), closes #1065
- ngc: _onDragStart/End are called with one param (#1113) (6e5d260), closes #1112
- ngc: don't emit HTMLElement in JS files (#1061) (32eacd2)
- rc6: add directives for custom elements that are part of the APIs. (#1121) (2c0dfcb)
- sidenav: turn off view encapsulation and refactor css (#1114) (97fe211)
- tabs: change missed md-active to md-tab-active (#1044) (87b6193)
Features
- menu: add keyboard events and improve accessibility (#1132) (3669f06)
- modules: add
forRoot()
to material modules with providers (#1122) (9ff6196) - modules: add
forRoot()
to all modules (#1166) (21dc44a) - overlay: make overlays synchronous (#1079) (cdad90b)
- slider: add thumb-label (#976) (22d70ae)
- slider: support ngModel (#1029) (8828358)
- tabs: support for
disabled
tabs (#934) (9d51deb), closes #880
wax-umpire
Bug Fixes
- checkbox: wrong cursor when disabled (#908) (5251c27), closes #907
- checkbox, slide-toggle: only emit change event if native input emitted one. (#820) (d52e6e0), closes #575
- gestures: custom recognizers should not inherit twice. (#902) (c68efbd)
- gestures: ensure drag and pan are recognized with slide (#901) (3179fec)
- input: ensure all of label displays on safari (#871) (c8303b4), closes #795
- overlay: lazily create container (#894) (1efbbb9)
- progress-circle: correct elapsed time calculation (#927) (0b17cd3), closes #926
- progress-circle: remove performance.now to support non browser envs (#857) (14c1765)
- progress-circle: remove references to window (#838) (66ddd3a), closes #837
- radio: only emit change event if native input does. (#911) (23a61ab), closes #791
- slide-toggle: fix runtime exception for incorrect mousedown binding. (#828) (bbbc87f), closes #828
- fix type mismatches when offline compiling. (#835) (4bb7790)
Features
Note that NgModules are now the supported way of including the Material components in your app.
The MD_XXX_DIRECTIVES constants are now deprecated and will be removed in alpha.8.
- tooltip: initial tooltip implementation (#799) (f5e2a81)
- md-slider: initial version for md-slider (#779) (8354750)
- md-menu initial version for md-menu (more features coming in alpha.8) (#893) (16eb6be) (#855) (e324e47) (#867) (9a32489)
- ripple: initial mdInkRipple implementation (#681) (47448cb)
- button: add ripple to md-button (32aa461)
- input: support autocapitalize and autocorrect attributes (#858) (b2471f2)
- slide-toggle: add drag functionality to thumb (#750) (25b4f21)
In-progress, not yet released
- dialog: add styles and ability to close. (#862) (758b851)
- dialog: initial framework for md-dialog (#761) (9552ed5)
Code health
BREAKING CHANGES
- radio: radio-button will no longer emit change event on de-select.