1.2.5 (2022-04-11)
One final release of AngularJS in order to update package README files on npm.
1.2.4 (2021-12-16)
Bug Fixes
- panel, select: fix Trusted Types violations during initialization (#12128) (4e354a6)
Code Refactoring
- sass: migrate from node-sass to sass (5e2d213)
- If you consume our
.scss
files directly in your build, you will need to switch
from the deprecated node-sass
package to the sass
package for compiling your Sass.
- sass: fix division deprecation warnings (b5a1a02)
Documentation
- fix API docs issues related to
marked
Markdown rendering (441a912)
Contributors
Thank you to the contributors who helped with the v1.2.4 release:
1.2.3 (2021-07-14)
Bug Fixes
- datepicker: ISO 8601 dates decorated as invalid in forms (0a06f99), closes #12075
Features
- menu: add a new backdropParent option (78b1073)
Contributors
Thank you to the contributors who helped with the v1.2.3 release:
1.2.2 (2020-12-17)
Bug Fixes
- aria: radio buttons throw argument not optional errors in IE11 (eab5c81)
- autocomplete: prevent flashing of invalid state (#12064) (a4732a9), closes #10975
- checkbox: aria-checked state is not computed correctly in all cases (c609385), closes #12046
- datepicker: null model with timezone throws exception (7856883), closes #12025
- datepicker: time is modified before even selecting a date (b406623), closes #12028 #12026
- dialog: shift+tab does not cycle through tabbable elements (7d5e262), closes #10963
- fab-speed-dial: action items are in tab order when closed (da86e62), closes #10101
- fab-speed-dial: keyboard navigation issues with tab and shift+tab (41c71ed), closes #12043
- fab-speed-dial: opens when trigger button is disabled (e7dfcc1), closes #9467
- input: check that containerCtrl.label is defined before accessing it (f79186f), closes #10831
- menu: menu focus is lost when menu-item has custom content (6391b13), closes #12054
- select: floating label hidden w/ placeholder and no value (3ea5630), closes #10116
- select: form remains valid after empty option is selected (61412b4), closes #10005
- tabs: md-align-tabs should only affect the current component (d77fbc4), closes #10541
- theming: fix CSS with nested rules parsing when registering a theme (71dc4eb), closes #9869
Features
- autocomplete: allow localization of query result announcements (5157f94), closes #11789
- chips: md-max-chips support for md-contact-chips (e6b5482), closes #10827
- datepicker: add input-aria-describedby and input-aria-labelledby (5f8472c), closes #11762
Contributors
Thank you to the contributors who helped with the v1.2.2 release:
1.2.1 (2020-09-23)
Bug Fixes
- calendar: allow tabbing out when in standalone mode (93518bb), closes #9794
- calendar, datepicker: fix issues with GMT+X timezones (90d24cf), closes #12000
- calendar, datepicker: fix MomentJS custom format support (8f9e213), closes #12003 #11949
- datepicker: min-date validation is incorrect in GMT+X timezones (7395914), closes #11963
- dialog: remove focus trap focus listeners onRemove (33e8bac), closes #12010
- icon: providing empty alt or aria-label attributes do not hide them from a11y (37f1535), closes #10721
- list: case where list items are read twice by screen readers (5c455d3), closes #11582
- radio-button: Cannot read property 'nodeName' of null (f43ff63), closes #10546
- radio-button: support selection using the space key (3cf78a7), closes #11960
- select: respect theme color when select has focus (4afba57)
- select: in popup, hover and focus background colors are the same (d5863b8), closes #000 #9851
- select: md-select-header closes on mouse click when not using multiple (f2fca2e), closes #11969
- typography: enable iOS long-press context menus (3d98b6e), closes #10622
Documentation
- mdSticky: update and clarify the usage and behavior (0d431e0)
- a11y: add a list of supported screen readers (8ce0813), closes #11449
- home: simplify and clarify that browser support policy is for major versions (1babe8c)
- icon: documentation refinement and cleanup (c644d6a)
Contributors
Thank you to the contributors who helped with the v1.2.1 release:
1.1.26 (2020-09-01)
Bug Fixes
Contributors
Thank you to the contributors who helped with the v1.1.26 release:
1.1.25 (2020-08-31)
Bug Fixes
- calendar, datepicker: fix date selection issues with GMT+X timezones (a897a67), closes #12000
- datepicker: min-date validation is incorrect in GMT+X timezones (dd150fa), closes #11963
- select: md-select-header closes on mouse click when not using multiple (b32b473), closes #11969
Contributors
Thank you to the contributors who helped with the v1.1.25 release:
1.2.0 (2020-08-03)
Bug Fixes
- autocomplete: change md-escape-options default to 'clear' (47106ba), closes #11767
- button: horizontal padding should match the spec (3205b33), closes #10535 #10535
- checkbox: handle links in transcluded label in an a11y-friendly way (4d36fd2), closes #11134
- checkbox: update CSS to match spec (c893050), closes #9351 #9927 #8713
- checkbox, date-picker, input, radio-button, select, switch: md-inline-form support (b3e9ffe)
- chips: chip remove icon isn't sized to match the spec (#10491) (29c0a4a), closes #9619
- chips: placeholder is truncated even though there is room (aa4e29b), closes #10630
- chips: update to latest Material Design spec (2017) updates (01351b1), closes #9883
- datepicker: support ng-model-options timezone w/ Moment (e24d09c), closes #11945 #10598
- input-container: align indentation with spec (31a596f), closes #10105 #11421
- list: fix checkbox alignment and match dense heights to spec (a13722e), closes #11966
- nav-bar: throws exception when indexing null tabs variable (b1c7154), closes #11964
- panel: demos need to access locals in controller's $onInit (6e91c62)
- panel: don't throw exceptions when the groupName is a string (4178459)
- radio-button: when no value selected, first button not announced on focus (9159384), closes #11973 #11923 #11974
- select: support for md-inline-form, more configurable SCSS (0d4d37f), closes #8712 #8716
- select: md-select-header closes on mouse click when not using multiple (f2fca2e), closes #11969
- tabs: update min-width to follow the spec (693ecca), closes #10406 #11432
- tabs: align theming with spec updates (d237715), closes #7685
- theming: dark contrast used incorrectly when only contrastStrongLightColors defined (4e3f7a7)
- theming: update palette contrast types to current spec (d716fde), closes #8992 #10164
- theming, toolbar, subheader, input: align color palettes and contrasts with AA standards (3a291ac), closes #8992 #10164 #8993
- toast: improve position handling to better align with docs (96ec741), closes #11843
- toolbar: input placeholders and ink need more contrast (a82fc93), closes #7987 #11376
- toolbar: default to 500 hue and contrasts when using accent/warn palettes (98a94db), closes #7685
Code Refactoring
- autofocus: remove deprecated md-auto-focus attribute (bf0ec8c)
- card: remove styles for md-actions class (75aa734)
- chips: remove deprecated md-on-append attribute (1a2e3d0)
- chips: remove deprecated MdChipsCtrl.selectAndFocusChip (01d2cde)
- dialog: remove deprecated content options and methods (e3b52a0)
- dialog: remove styles for deprecated md-actions class (93e2081)
- layout: remove deprecated -lt- ("less than") attributes (e8e785e)
- $mdCompilerProvider: remove deprecated $mdCompilerProvider.respectPreAssignBindingsEnabled() (579a327)
- menu: removed deprecated $mdOpenMenu API (f023ce7)
- panel: remove deprecated MdPanelRef.addClass/removeClass/toggleClass (bafbd96), closes #9310
- select: rename ngMultiple to mdMultiple (4c75858)
- sidenav: remove deprecated access to $media in md-is-locked-open (baa7563)
- sidenav: remove md-sidenav-focus directive (8fc36d4)
- theming: remove support for deprecated $mdThemingProviderTheme.primaryColor() and related APIs (00a50de)
- tabs: remove deprecated md-no-disconnect (05bee8f)
- toast: remove deprecated content() method and option and updateContent() method (cf3d56c)
Features
- layout: add mixin for responsive support of rows (c2c336b), closes #9112 #9220
- theming: add contrast opacity values for all color types and hues (68c1d02)
Documentation
- theming, colors: md-colors demo was broken. improve JSDoc and fix lint issues (01917b3)
BREAKING CHANGES
- autocomplete: The default behavior of
md-autocomplete
, when the options panel is visible and the Escape key is pressed, has changed. md-escape-options
now defaults to 'clear'
instead of 'blur clear'
. This better aligns with the WAI-ARIA Authoring Practices as the focus is not sent to another element (like the <body>
) when the Escape key is pressed.
If you want to restore the previous behavior, add the following to your md-autocomplete
components:
md-escape-options="blur clear"
- autofocus: Removed the deprecated
md-auto-focus
directive. It was deprecated in favor of md-autofocus
. Please see the md-autofocus Docs for examples.
- button:
md-button
's internal horizontal padding has changed from 6px
to 8px
to match the Material Design spec. This may affect the layout of portions of your application where md-button
, md-datepicker
, or md-toast
with actions are used.
If you are using our SCSS files, you can override this back to the default, or another value, in your app's SCSS files:
$button-left-right-padding: rem(0.600);
- card: Removed support for the
class="md-actions"
inside of an md-card
template. This is deprecated in favor of using the <md-card-actions>
element.
- checkbox: If you've created a custom solution to style links within
md-checkbox
labels, then you may need to remove or change that code now. This is because we automatically detect <a>
tags in these labels and re-render them in an accessible way.
- checkbox: The default size and spacing for
md-checkbox
has been updated to align with the Material Design specification. Additionally, many new Sass variables have been added for customizing the size and spacing of md-checkbox
. The md-dense
class is now supported. After updating to this version, you may need to adjust the layout of your app due to the larger touch-friendly size of checkbox. You may also want to make use of md-dense
in cases where space is limited.
- chips: Chips have been updated to latest Material Design spec (2017).
$chip-font-size
was reduced to 13px
from 16px
. $chip-remove-padding-right
was increased to 28px
from 22px
. These changes may cause your chips to have a smaller, denser layout now. In certain scenarios, this may require minor changes to your app's layout. You can change these variables back to their old values if your app consumes Sass. Additionally, the remove chip icon has been changed, but you can use the custom chip template demo as a guide to changing back to the old icon, if desired.
- chips: Removed the deprecated, since 2015,
md-on-append
attribute. It was deprecated in favor of md-transform-chip
or the simple notifier md-on-add
. Please see the md-chips Demos for examples of using md-transform-chip
.
- chips: The deprecated
MdChipsCtrl.selectAndFocusChip()
function has been removed.
MdChipsCtrl.selectAndFocusChipSafe()
should be used instead.
- dialog: Removed support for the deprecated
class="md-actions"
inside of an md-dialog
template. This was deprecated in favor of using the <md-dialog-actions>
element.
- dialog: Removed support for the deprecated
.content('string')
methods and options. These were deprecated in favor of .textContent('string')
and .htmlContent('sanitized-string')'
methods and their associated options. Please note that use of .htmlContent
requires that the ngSanitize
module be loaded.
If you have
alert = $mdDialog.alert()
.content('This is an example.');
It needs to be changed to
alert = $mdDialog.alert()
.textContent('This is an example.');
If you have
alert = $mdDialog.alert({
content: 'This is an example.'
});
It needs to be changed to
alert = $mdDialog.alert({
textContent: 'This is an example.'
});
- input-container:
md-input
and md-select
inside of md-input-container
s have been updated to use indentation that is consistent with the spec (aligned to the left in LTR and the right in RTL). This may cause some minor layout issues in apps that depended upon the previous 2px
padding inside of md-input-container
.
- layout: The way that margins are applied to
md-checkbox
, md-input-container
, md-radio-group
, and md-select
has been changed. You can now use the $default-horizontal-margin
Sass variable to override the default 16px
horizontal margin size. As part of this, md-radio-button
s inside of layout="row"
containers are now aligned vertically with other content as they no longer have a 16px
margin-bottom
. If you have previously added custom styles, to your components inside of a row layout, in order to give them extra margin-right
in LTR or margin-left
in RTL, you will need to re-evaluate those styles. In most cases, they can now be removed.
layout: Removed the deprecated, undocumented *-lt-*
layout attributes and classes. This includes the following attributes and their matching classes, which have been giving deprecation warnings since 2015:
- layout-lt-md
- layout-lt-lg
- flex-lt-md
- flex-lt-lg
- layout-align-lt-md
- layout-align-lt-lg
- flex-order-lt-md
- flex-order-lt-lg
- flex-offset-lt-md
- flex-offset-lt-lg
- hide-lt-md
- hide-lt-lg
- show-lt-md
- show-lt-lg
list: md-list
with the md-dense
class has been updated to align with the Material Design specification. This means that md-list-item
s heights have changed when using md-dense
. The md-dense-disabled
class is now supported on md-list
. After updating to this version, you may need to adjust the layout of your app if you use md-dense
with md-list
or customize the layout of md-checkbox
s within md-list-item
s.
- $mdCompilerProvider: The deprecated
$mdCompilerProvider.respectPreAssignBindingsEnabled()
API has been removed.
We no longer respect AngularJS's $compileProvider.preAssignBindingsEnabled()
value as this API was removed
in AngularJS 1.7.0
.
If you had the recommended configuration for AngularJS 1.6.x:
$compileProvider.preAssignBindingsEnabled(false);
$mdCompilerProvider.respectPreAssignBindingsEnabled(true);
Then you should remove both of these calls as they are now the defaults in AngularJS 1.7.0
and AngularJS Material 1.2.0
.
If you had the recommended configuration for AngularJS 1.7+:
$mdCompilerProvider.respectPreAssignBindingsEnabled(true);
Then you should remove this call as it is now the default in AngularJS Material 1.2.0
.
If you were using a backwards-compatible configuration for AngularJS 1.6+:
$mdCompilerProvider.respectPreAssignBindingsEnabled(false);
Then you will need to remove this call and may need to refactor your Controllers for
AngularJS Material components like $mdDialog
, $mdPanel
, $mdToast
, or $mdBottomSheet
.
For example:
$mdDialog.show({
locals: {
myVar: true
},
controller: MyController,
bindToController: true
}
function MyController() {
}
MyController.prototype.$onInit = function() {
}
- menu: Removed the deprecated
$mdOpenMenu
API. It was deprecated in favor of $mdMenu.open
.
- panel: The deprecated
MdPanelRef.addClass()
, MdPanelRef.removeClass()
, and MdPanelRef.toggleClass()
functions have been removed. These were deprecated in 2016 in favor of using the panelContainer
or panelEl
JQLite elements that are referenced in the MdPanelRef object.
- select:
ngMultiple
has been renamed to mdMultiple
to make it clear that this
API is provided by AngularJS Material and not by AngularJS.
If you had:
<md-select ng-multiple="expression">...</md-select>
You need to change to:
<md-select md-multiple="expression">...</md-select>
- sidenav: Removed access for the deprecated
$media
service in md-is-locked-open
. This was deprecated in favor of the $mdMedia
service. The functionality is the same and only a rename to the current name of the service is required.
- sidenav: Removed the
md-sidenav-focus
directive. It was deprecated in favor of md-autofocus
. Please see the md-autofocus Docs and md-sidenav Basic Usage Demo for examples.
- tabs: Tab items now have a
min-width
and padding
which matches the Material Design specification. For width, this is 72px
on xs
screens and 160px
on all other screens. For left and right padding
, this is now 12px
instead of 24px
. If your app needs to have tabs which are smaller than the spec, you will need to override md-tab-item
's min-width
and md-tab
's padding
styles.
- theming: Removed support for the deprecated
$mdThemingProviderTheme.primaryColor()
and the related accent/warn/background APIs. These were deprecated in favor of $mdThemingProviderTheme.primaryPalette()
(and accent/warn/background) in 2015 and they have been logging warnings when used since then.
- theming, toolbar, subheader, input: The contrast colors (the text or icon color, for example on a raised button) of many of our default palettes have been updated to meet the AA level of the contrast guidelines for web accessibility. If you are using our default palettes directly, the accessibility of your application should be improved. However, we recommend that you evaluate this after updating to
1.2.0
. There may be edge cases in your app or custom styles that need to be updated to meet accessibility guidelines.
If you find significant accessibility issues after updating, please report them to us. In 1.2.x
, we have a lot more control over our component theming in regards to hues and opacities.
If your app is using a custom palette, whether based on a copy of default palette or not, we encourage you to evaluate that your contrast configuration meets the WebAIM guidelines. Please review our guide on Defining Custom Palettes for details.
- toast:
$mdToast.show()
's position behavior has been updated to be consistent with the documentation. If you relied on the previously undocumented behavior where it defaulted to top left
instead of bottom left
, you will need to update your app.
Change your code from this:
$mdToast.show(
$mdToast.simple()
.textContent('Simple Toast!'))
.then(...
To this:
$mdToast.show(
$mdToast.simple()
.textContent('Simple Toast!')
.position('top left'))
.then(...
- toast: The deprecated
content()
and updateContent()
methods have been removed.
If you had:
$mdToast.show($mdToast.simple().content('This no longer works.'));
You will need to change to:
$mdToast.show($mdToast.simple().textContent('This works.'));
If you had:
$mdToast.updateContent('This no longer works.');
You will need to change to:
$mdToast.updateTextContent('This works.');
If you had:
$mdToast.show($mdToast.simple({parent: parent, content: 'This no longer works.', theme: 'some-theme', capsule: true}));
You will need to change to:
$mdToast.show($mdToast.simple({parent: parent, textContent: 'This works.', theme: 'some-theme', capsule: true}));
Contributors
Thank you to the contributors who helped with the v1.2.0 release:
Bug Fixes
- checkbox, date-picker, input, radio-button, select, switch: md-inline-form support (b3e9ffe)
- select: support for md-inline-form, more configurable SCSS (0d4d37f), closes #8712 #8716
Code Refactoring
- autofocus: remove deprecated md-auto-focus attribute (bf0ec8c)
- card: remove styles for md-actions class (75aa734)
- chips: remove deprecated md-on-append attribute (1a2e3d0)
- dialog: remove deprecated content options and methods (e3b52a0)
- dialog: remove styles for deprecated md-actions class (93e2081)
- layout: remove deprecated -lt- ("less than") attributes (e8e785e)
- menu: removed deprecated $mdOpenMenu API (f023ce7)
- panel: remove deprecated MdPanelRef.addClass/removeClass/toggleClass (bafbd96), closes #9310
- sidenav: remove deprecated access to $media in md-is-locked-open (baa7563)
- sidenav: remove md-sidenav-focus directive (8fc36d4)
- theming: remove support for deprecated $mdThemingProviderTheme.primaryColor() and related APIs (00a50de)
- tabs: remove deprecated md-no-disconnect (05bee8f)
Features
BREAKING CHANGES
- layouts: The way that margins are applied to
md-checkbox
, md-input-container
, md-radio-group
, and md-select
has been changed. You can now use the $default-horizontal-margin
Sass variable to override the default 16px
horizontal margin size. As part of this, md-radio-button
s inside of layout="row"
containers are now aligned vertically with other content as they no longer have a 16px
margin-bottom
. If you have previously added custom styles, to your components inside of a row layout, in order to give them extra margin-right
in LTR or margin-left
in RTL, you will need to re-evaluate those styles. In most cases, they can now be removed.
- sidenav: Removed access for the deprecated
$media
service in md-is-locked-open
. This was deprecated in favor of the $mdMedia
service. The functionality is the same and only a rename to the current name of the service is required.
- dialog: Removed support for the deprecated
.content('string')
methods and options. These were deprecated in favor of .textContent('string')
and .htmlContent('sanitized-string')'
methods and their associated options. Please note that use of .htmlContent
requires that the ngSanitize
module be loaded.
If you have
alert = $mdDialog.alert()
.content('This is an example.');
It needs to be changed to
alert = $mdDialog.alert()
.textContent('This is an example.');
If you have
alert = $mdDialog.alert({
content: 'This is an example.'
});
It needs to be changed to
alert = $mdDialog.alert({
textContent: 'This is an example.'
});
Contributors
Thank you to the contributors who helped with the v1.2.0-rc.2 release:
Bug Fixes
- button: horizontal padding should match the spec (3205b33), closes #10535 #10535
- checkbox: handle links in transcluded label in an a11y-friendly way (4d36fd2), closes #11134
- checkbox: update CSS to match spec (c893050), closes #9351 #9927 #8713
- chips: chip remove icon isn't sized to match the spec (#10491) (29c0a4a), closes #9619
- datepicker: support ng-model-options timezone w/ Moment (e24d09c), closes #11945 #10598
- input-container: align indentation with spec (31a596f), closes #10105 #11421
- list: fix checkbox alignment and match dense heights to spec (a13722e), closes #11966
- nav-bar: throws exception when indexing null tabs variable (b1c7154), closes #11964
- panel: demos need to access locals in controller's $onInit (6e91c62)
- panel: don't throw exceptions when the groupName is a string (4178459)
- select: md-select-header closes on mouse click when not using multiple (f2fca2e), closes #11969
- tabs: update min-width to follow the spec (693ecca), closes #10406 #11432
- theming: dark contrast used incorrectly when only contrastStrongLightColors defined (4e3f7a7)
- theming: update palette contrast types to current spec (d716fde), closes #8992 #10164
- theming, toolbar, subheader, input: align color palettes and contrasts with AA standards (3a291ac), closes #8992 #10164 #8993
- toast: improve position handling to better align with docs (96ec741), closes #11843
- toolbar: input placeholders and ink need more contrast (a82fc93), closes #7987 #11376
Code Refactoring
- $mdCompilerProvider: remove deprecated $mdCompilerProvider.respectPreAssignBindingsEnabled() (579a327)
- chips: remove deprecated MdChipsCtrl.selectAndFocusChip (01d2cde)
- select: rename ngMultiple to mdMultiple (4c75858)
- toast: remove deprecated content() method and option and updateContent() method (cf3d56c)
Features
- theming: add contrast opacity values for all color types and hues (68c1d02)
Documentation
- theming, colors: md-colors demo was broken. improve JSDoc and fix lint issues (01917b3)
BREAKING CHANGES
- list:
md-list
with the md-dense
class has been updated to align with the Material Design specification. This means that md-list-item
s heights have changed when using md-dense
. The md-dense-disabled
class is now supported on md-list
. After updating to this version, you may need to adjust the layout of your app if you use md-dense
with md-list
or customize the layout of md-checkbox
s within md-list-item
s.
- button:
md-button
's internal horizontal padding has changed from 6px
to 8px
to match the Material Design spec. This may affect the layout of portions of your application where md-button
, md-datepicker
, or md-toast
with actions are used.
If you are using our SCSS files, you can override this back to the default, or another value, in your app's SCSS files:
$button-left-right-padding: rem(0.600);
- $mdCompilerProvider: The deprecated
$mdCompilerProvider.respectPreAssignBindingsEnabled()
API has been removed.
We no longer respect AngularJS's $compileProvider.preAssignBindingsEnabled()
value as this API was removed
in AngularJS 1.7.0
.
If you had the recommended configuration for AngularJS 1.6.x:
$compileProvider.preAssignBindingsEnabled(false);
$mdCompilerProvider.respectPreAssignBindingsEnabled(true);
Then you should remove both of these calls as they are now the defaults in AngularJS 1.7.0
and AngularJS Material 1.2.0
.
If you had the recommended configuration for AngularJS 1.7+:
$mdCompilerProvider.respectPreAssignBindingsEnabled(true);
Then you should remove this call as it is now the default in AngularJS Material 1.2.0
.
If you were using a backwards-compatible configuration for AngularJS 1.6+:
$mdCompilerProvider.respectPreAssignBindingsEnabled(false);
Then you will need to remove this call and may need to refactor your Controllers for
AngularJS Material components like $mdDialog
, $mdPanel
, $mdToast
, or $mdBottomSheet
.
For example:
$mdDialog.show({
locals: {
myVar: true
},
controller: MyController,
bindToController: true
}
function MyController() {
}
MyController.prototype.$onInit = function() {
}
- toast: The deprecated
content()
and updateContent()
methods have been removed.
If you had:
$mdToast.show($mdToast.simple().content('This no longer works.'));
You will need to change to:
$mdToast.show($mdToast.simple().textContent('This works.'));
If you had:
$mdToast.updateContent('This no longer works.');
You will need to change to:
$mdToast.updateTextContent('This works.');
If you had:
$mdToast.show($mdToast.simple({parent: parent, content: 'This no longer works.', theme: 'some-theme', capsule: true}));
You will need to change to:
$mdToast.show($mdToast.simple({parent: parent, textContent: 'This works.', theme: 'some-theme', capsule: true}));
- select:
ngMultiple
has been renamed to mdMultiple
to make it clear that this
API is provided by AngularJS Material and not by AngularJS.
If you had:
<md-select ng-multiple="expression">...</md-select>
You need to change to:
<md-select md-multiple="expression">...</md-select>
- chips: The deprecated
MdChipsCtrl.selectAndFocusChip()
function has been removed.
MdChipsCtrl.selectAndFocusChipSafe()
should be used instead.
- theming, toolbar, subheader, input: The contrast colors (the text or icon color, for example on a raised button) of many of our default palettes have been updated to meet the AA level of the contrast guidelines for web accessibility. If you are using our default palettes directly, the accessibility of your application should be improved. However, we recommend that you evaluate this after updating to
1.2.0
. There may be edge cases in your app or custom styles that need to be updated to meet accessibility guidelines.
If you find significant accessibility issues after updating, please report them to us. In 1.2.x
, we have a lot more control over our component theming in regards to hues and opacities.
If your app is using a custom palette, whether based on a copy of default palette or not, we encourage you to evaluate that your contrast configuration meets the WebAIM guidelines. Please review our guide on Defining Custom Palettes for details.
- tabs: Tab items now have a
min-width
and padding
which matches the Material Design specification. For width, this is 72px
on xs
screens and 160px
on all other screens. For left and right padding
, this is now 12px
instead of 24px
. If your app needs to have tabs which are smaller than the spec, you will need to override md-tab-item
's min-width
and md-tab
's padding
styles.
- checkbox: If you've created a custom solution to style links within
md-checkbox
labels, then you may need to remove or change that code now. This is because we automatically detect <a>
tags in these labels and re-render them in an accessible way.
- input-container:
md-input
and md-select
inside of md-input-container
s have been updated to use indentation that is consistent with the spec (aligned to the left in LTR and the right in RTL). This may cause some minor layout issues in apps that depended upon the previous 2px
padding inside of md-input-container
.
- The default size and spacing for
md-checkbox
has been updated to align with the Material Design specification. Additionally, many new Sass variables have been added for customizing the size and spacing of md-checkbox
. The md-dense
class is now supported. After updating to this version, you may need to adjust the layout of your app due to the larger touch-friendly size of checkbox. You may also want to make use of md-dense
in cases where space is limited.
- toast:
$mdToast.show()
's position behavior has been updated to be consistent with the documentation. If you relied on the previously undocumented behavior where it defaulted to top left
instead of bottom left
, you will need to update your app.
Change your code from this:
$mdToast.show(
$mdToast.simple()
.textContent('Simple Toast!'))
.then(...
To this:
$mdToast.show(
$mdToast.simple()
.textContent('Simple Toast!')
.position('top left'))
.then(...
Contributors
Thank you to the contributors who helped with the v1.2.0-rc.1 release:
1.1.24 (2020-06-29)
Bug Fixes
- datepicker: support
ng-model-options
timezone w/ MomentJS and datepicker now passes ng-model-options
on to calendar (12562b0), closes #11945 #10598
- panel: animated panels never appear on the screen (e81e2e3), closes #11946
- panel: inline transforms accumulate after each time the close animation runs (6322e98), closes #11946
Contributors
Thank you to the contributors who helped with the v1.1.24 release:
1.1.23 (2020-06-18)
Bug Fixes
- calendar, datepicker: in year view,
md-date-filter
only evaluates first day of month (3d5ff5d), closes #11703
- compiler:
$onDestroy
hook not called (8bb1d98), closes #11847
- datepicker: update error state only after
$validate
has run (11f65e3), closes #10360
- layout: Syntax Error: Token
'&&'
not a primary expression (#11940) (1bd1a97), closes #10935
- list: allow overriding
md-list-item
padding for clickable items (f7d9027), closes #10384
- menuBar: close top nested menu when escape key is pressed (98e259b), closes #11678
- navBar: update inkbar on screen resize (c1e2b12), closes #10121
- panel: allow transform to be animated on an offset panel (269b68e), closes #9641 #9905
- panel: consolidate redundant validations (#9631) (a334134)
- panel: invisible after hide/show cycle (a3c533f), closes #11291
- progress-circular: correct rendering for diameter bigger than 60 (#11896) (0cca317), closes #10376
- progress-linear, progress-circular: mirror indicator when rtl is on (#11895) (9fc2f3f), closes #10814
- select: height changes when disabled (e2af2a3), closes #11812
- select:
md-focused
not removed from options on panel close (5a7e967), closes #11927
- select: optgroups are not visible to screen readers (5fbabe7), closes #11240
- select: perform correct position calculation in rtl for long labels (#11894) (9f49e10), closes #10395
- select: revert removal of support for
ng-selected
on md-options
(546bd84), closes #11914
- slider: vertical slider in a scrolled container sets value to zero on all clicks (#11801) (79bf96b), closes #11800
- toast:
onRemove
doesn't return a Promise
in some cases (e625a9c), closes #10379
- toolbar:
md-scroll-shrink
conflicts with md-select
in toolbar (1ed54bb), closes #10413 #9871
- tooltip: change from
inline
to inline-block
to account for md-panel
change (20194ba)
- util: sanitize function used by select and autocomplete throws "Invalid regular expression" when typing
(
(bc71d0b), closes #11908
Features
- calendar: support specifying timezone in
ng-model-options
(2a01746), closes #10431
- input: add animation to color change (#10079) (b486a41)
- select: add the ability to pre-select the only option in the list (#9940) (6372027), closes #9626
Documentation
Contributors
Thank you to the contributors who helped with the v1.1.23 release:
1.1.22 (2020-04-30)
Bug Fixes
- autocomplete: loop options list when moving past first/last option with arrow keys (5228f23), closes #11766
- autocomplete: md-not-found template is not styled properly (ce6e2ff), closes #11852
- autocomplete: Move mouse enter and leave events to container (5b0c9ba), closes #11776
- autocomplete: scroll to top of the list each time dropdown open (498c9ed), closes #10479
- contact-chips: don't rely on debug info to get access to controller scope (2f77095), closes #11699
- datepicker: md-open-on-focus fails when switching tabs with open datepicker (7a16778)
- gesture: 'drag' gestures don't clean up touch action styles on parent (deb3dfc), closes #11147
- list: dense lists cut off descenders of letters like gjqpy (0ab73bd), closes #8890
- list: isEventFromControl() works on all browsers now (d537d25), closes #7937
- list: primary action is fired twice on space/enter keydown (920018e), closes #11756
- list: secondary actions give aria warning if text is in a span (90c8b8d), closes #6152
- menu-bar: z-index not restored on menu close (4a4dde4), closes #11235
- nav-bar: clicked nav item not focused or selected in some cases (4d4e0ac), closes #11747
- select: overhaul screen reader support (928c71d), closes #10748 #10967
- select: sanitize user input before searching options (#11855) (0ec0cc5), closes #11854
- select: when using trackBy, trigger ng-change only when tracked property is different (ecd55d0), closes #11108
- select: menuController not defined edge case in focusOptionNode (b9d8322), closes #11885
Documentation
- vscode: add VSCode configuration and guide (#11879) (a8954df)
- dialog: clarify promise rejection behavior in descriptions (#11889) (939f6c9), closes (#10130)
- docs, README: remove Bower references, update GitHub and NPM icons. fix 'View Demo' button appearing for directives w/o demos (#11888) (5c75b12)
- getting-started, home: updates to landing page and getting started. add Blank StackBlitz Demo starter (#11890) (d1a9976)
- COMMIT_LEVELS: update guide to better describe the process and responsibilities (#11862) (38fe956)
- BUILD: rewrote most of the guide (#11880) (4093953)
Contributors
Thank you to the contributors who helped with the v1.1.22 release:
Bug Fixes
- autocomplete: loop options list when moving past first/last option with arrow keys (5228f23), closes #11766
- autocomplete: md-not-found template is not styled properly (ce6e2ff), closes #11852
- autocomplete: Move mouse enter and leave events to container (5b0c9ba), closes #11776
- autocomplete: scroll to top of the list each time dropdown open (498c9ed), closes #10479
- contact-chips: don't rely on debug info to get access to controller scope (2f77095), closes #11699
- datepicker: md-open-on-focus fails when switching tabs with open datepicker (7a16778)
- gesture: 'drag' gestures don't clean up touch action styles on parent (deb3dfc), closes #11147
- list: dense lists cut off descenders of letters like gjqpy (0ab73bd), closes #8890
- list: isEventFromControl() works on all browsers now (d537d25), closes #7937
- list: primary action is fired twice on space/enter keydown (920018e), closes #11756
- list: secondary actions give aria warning if text is in a span (90c8b8d), closes #6152
- menu-bar: z-index not restored on menu close (4a4dde4), closes #11235
- nav-bar: clicked nav item not focused or selected in some cases (4d4e0ac), closes #11747
- select: overhaul screen reader support (928c71d), closes #10748 #10967
- select: sanitize user input before searching options (#11855) (0ec0cc5), closes #11854
- select: when using trackBy, trigger ng-change only when tracked property is different (ecd55d0), closes #11108
Contributors
Thank you to the contributors who helped with the v1.1.22-rc.0 release:
1.1.21 (2019-10-22)
Bug Fixes
- autocomplete: improve handling of touch pads and touchscreens (#11782) (20c4d3f), closes #11778
- autocomplete: improve implementation of aria-activedescendant (#11743) (8c159aa), closes #11742
Contributors
Thank you to the contributors who helped with the v1.1.21 release:
1.1.20 (2019-08-15)
Bug Fixes
- autocomplete: options panel flickers on hover after clicking input (#11757) (8f14afd), closes #11625
- autocomplete: support ng-click on md-autocomplete (#11758) (313e5e6), closes #11625
- autocomplete: tap outside options panel on iOS does not close panel (#11625) (f81349a), closes #9581
- datepicker: remove invalid aria-expanded (#11740) (197d197), closes #11475
- gesture: check if navigator is defined before accessing userAgent (#11755) (0077d3e), closes #11751
- gesture: maximum call stack size exceeded on click w/ Tal… (#11774) (4acef53), closes #11768
- input: floating label text fails a11y contrast audit (#11497) (b5de054), closes #11475
- panel: append panel animation transforms after existing transforms (#11681) (ffe9349)
- rtl: support applying dir="rtl" on DOM elements other than the body (#11579) (bc7833b), closes #11016 #9754
- select: improve focus/blur handling on iOS (#11739) (0284b13), closes #11345
- tooltip: move document.contains polyfill for IE11 into $mdUtil (#11749) (f5535f8), closes #11745
Contributors
Thank you to the contributors who helped with the v1.1.20 release:
1.1.19 (2019-05-31)
Bug Fixes
Features
- menu-bar: support md-prevent-menu-close on checkbox/radio items (#11710) (d577afd), closes #11707
Documentation
- migration: Add a guide for migration to Angular Material and the CDK (#11706) (16cea88)
- docs: Added support for Sass and TypeScript in code samples (#11706) (16cea88)
- docs: Allow up/down/page up/page down to scroll content (#11712) (67826f5), closes #2961
Contributors
Thank you to the contributors who helped with the v1.1.19 release:
1.1.18 (2019-04-05)
Bug Fixes
Documentation
Infrastructure
Contributors
Thank you to the contributors who helped with the v1.1.18 release:
1.1.17 (2019-03-29)
Bug Fixes
- autocomplete: default dropdown to position bottom (#11670) (7674959), closes #11656
- slider: aria attrs are not announced when tabbing in screen readers (#11688) (459c03c), closes #11685
- tabs: use standard
wheel
event instead of mousewheel
event to fix Firefox (#11686) (7f249f9), closes #11654
- npm: deploy new release early to fix issue of
1.1.14
including a .git/
dir for NPM installs, relates to #11684
Documentation
Contributors
Thank you to the contributors who helped with the v1.1.17 release:
1.1.14 (2019-03-18)
Bug Fixes
- $mdInteraction: clean up events on $rootScope destroy (#11641) (e9e9ece), closes #11493 #11493
- icon: large SVG files can cause icon caching to hang (#11653) (6a68c96)
- input: placeholder hidden when there is also a label on IE11 (#11674) (ddcbb2e), closes #11668
- interimElement: don't track elements that fail compilation (#11471) 08d90e9, closes #11460
- nav-bar: non-selected tabs with anchors have invalid tabindex value (#11675) (ec9aa25), closes #11637
- panel: caching of panels by id is not working (#11638) (649116b)
- progress-circular: show correct circle arc when changing from indeterminate to determinate mode (#11580) (686b365)
- virtual-repeat-container: support horizontal scrollbar in vertical orientation (#11462) (3cf4d74)
Documentation
- docs: properly format anchor names and hrefs (#11648)
- radio-button: correct two misspellings on demo (#11667)
- colors: clean up Closure / JSDoc comments and types (#11676)
Infrastructure
- build: make the build output deterministic and reproducible (#11570)
- ci: we moved over to CircleCI from TravisCI in the previous 1.1.13 release (#11592)
Contributors
Thank you to the contributors who helped with the v1.1.14 release:
1.1.13 (2019-02-20)
Bug Fixes
- autocomplete: show dropdown on top only when there is room (#11629) (38fb991), closes #10859
- autocomplete: suggestions can be highlighted incorrectly (#11529) (320511c), closes #10573
- autocomplete: two chips added on enter w/ IE11 (#11528) (705c54e), closes #10640 #10667
- checkbox: submit on enter rather than toggle (#11584) (a191a8e) (#11640) (251cfed8), closes #11583 #11639
- datepicker: does not open on focus in Firefox (#11521) (45e92ea), closes #10619
- datepicker: validation error when adding text after date (#11110) (57c81c8), closes #9994 #10520 #10015
- icon: SVG elements are not loaded from the cache properly on IE11 (#11635) (7cde443), closes #11603 #11545 #11604
- layout: remove some duplicate layout > flex styles (#11613) (6515e6c), closes #11609
- list: case where user is unable to interact w/ secondary actions (#11539) (708fff9), closes #9676
- menu: fix min-height when scrollable (#11602)
- nav-bar: improve focus behavior for click events (#11600) (e64875d), closes #11591 #11494 #11598
- radio-group: style focused but unchecked radio buttons (#11564) (8a4105c), closes #11563 #8339 #3643
- select: carrot not aligned to end in IE11 (#11544) (bf5bbfc), closes #10714 #3840 #3840
- tabs: exception when no selection and header clicked (#11520) (9c079aa), closes #10042
Features
- autocomplete: support variable-height autocomplete list items (#11516) (562e0c7)
- datepicker, calendar:
md-date-filter
disables months in month mode (#11526) (8aa5d58), closes #11525
Documentation
- checkbox: clarify description of
md-no-ink
(#11605)
- docs: copying links to example/demo anchor headers gives a bad URL (#11634), closes #11285
- menu: add demo and docs for dense menus. (#11602)
- ripple: break out docs for
$mdInkRippleProvider
from $mdInkRipple
(#11606)
Contributors
Thank you to the contributors who helped with the v1.1.13 release:
1.1.12 (2019-01-03)
Bug Fixes
Contributors
Thank you to the contributors who helped with the v1.1.12 release over the holiday break:
1.1.11 (2018-12-20)
Bug Fixes
- autocomplete: screen readers now announce when an item is selected from the dropdown (#11403) (e56424e), closes #10837
- autocomplete: apply theme to mdProgressLinear and input (#9698) (affe84b)
- autocomplete: Chromevox indicates selected option on focus (#11441) (ca10bd0), closes #10838 #10970
- autocomplete: updateSize incorrectly sets the size to zero (#11500) (d343363), closes #10834
- bottom-sheet: theme now supports dark mode (#11380) (4cecebb)
- chips: editing chips works again (#11364) (97455f5), closes #11322 #11323
- chips: improve screen reader support (#11422) (2268c24), closes #2618
- chips: set dirty when a chip is removed (#11363) (0dd688c), closes #11356
- datepicker: md-open-on-focus constantly re-opens on close w/ IE11 (#11440) (6596cc7), closes #10999
- icon: stop breaking svg id references when caching icon ids (#11342) (841e8b2), closes #8689
- icon: regression causing exceptions to be thrown on IE11 (#11545) (47527f2), closes #11543 #11342 #11162
- input: make md-maxlength validation happen on initialization with interpolated value (#11338) (0cb4af1), closes #11329 #11329
- input: placeholder and datepicker value displayed overlapping on Firefox (#11538) (44a6946), closes #10440
- input: remove placeholder from button accessibility tree (#11404) (2203eec), closes #11293
- input: remove unnecessary warnings when ng-messages not provided (#11352) (d48c5b8), closes #10461
- input-container: handle initialization of md-icon with ng-if (#11437) (4493389), closes #9529
- interim: validate the interim element while closing it (#11509) (6815faf), closes #11507 #10715
- list: account for IE11 bug with flexbox and min-height (#11393) (e3c1a5c)
- nav-bar: improve screen reader support (#11486) (6b29548), closes #11485 #11485
- nav-bar: set ng-href on nav-item even if md-nav-href is empty (#11488) (e876eec), closes #11487
- nav-bar: update keyboard navigation to WAI-ARIA guidelines (#11494) (4d29450), closes #10419 #11489
- select: display asterisk on label only if empty (#11355) (f7b7f10), closes #11312
- select: give focus to the first option when loaded asynchronously (#11372) (998199f), closes #11357
- select: perform full cleanup of the select drop-down after the close (#11448) (dfba062), closes #11447
- select: theming issues with md-select-value (#11373) (9852ff7), closes #9592
- select: extra scrollbar when select dropdown is open (#11453) (20fc2d8)
- select(multiple): Remove side-effects to forms when adding md-select elements (#11491) (97e2d00), closes #11490
- sidenav: refactor syntax to work around issue in babel-minify (#11351) (0ed110b)
- switch: theming issues with focus in dark theme (#11459) (71e0411), closes #8518 #11417
- tabs: provide guidance on how to navigate between tabs (#11402) (4b1b729), closes #10895
- tabs: show a visual indication of tab focus (#11392) (1d73d81)
- tabs: tab labels overly truncated on IE11 when pagination active (#11432) (2b2f441), closes #10406
- theme: prepend # to hex codes for enableBrowserColor (#11492) (0306ac0), closes #11259
- toast: improve a11y support for $mdToast.simple(). improve docs (#11424) (fedb9a3), closes #349
- toast: remove the interim element from the list before closing element (#11427) (f616b25)
Features
- autocomplete: add input-aria-label and input-aria-labelledby (#11412) (534beea), closes #10815
- autocomplete: add support for input-aria-describedby (#11405) (a25a7df), closes #11004
- contactChips: add basic support for md-separator-keys (#8142) (eb10b56)
- slider: enable page up/down and home/end keyboard actions (#11517) (70654c3), closes #11515
- tabs: allow specifying custom class names for tabs (#11332) (aa30ada)
- theming: add ability to specify hues as options to defineTheme (#11428) (f776bf7)
- tabs: md-center-tabs causes in high CPU usage (#11375) (7fdf9da), closes #9690 #6375
- tabs: remove unreferenced elements variable from TabsController (#11379) (33652b4), closes #11377
- css: remove bloat from autoprefixing of unsupported browsers (#11340) (3660a32)
- This reduced the minified CSS bundle size by ~75 KB.
- You can find the breakdown of supported browsers here.
Contributors
Thank you to the contributors, especially the first timers, who helped with the v1.1.11 release:
1.1.10 (2018-06-28)
Bug Fixes
- chips: editable chip gets removed after editing (#11323) (9cc165f), closes #11298 #10392 #10532 #10664 #10879
- chips: improve ability to receive focus on click (#11098) (869bc21), closes #10344
- chips: regression where chips model gets out of sync with view (#11310) (74d2445), closes #11304 #11301
- chips: unwanted re-focus of last chip after blur (#11305) (ae17515), closes #9650 #10758
- compiler: remove dependency on AngularJS private API (#11320) (f6534d6), closes #11319
- datepicker: calendar panel theme supports dark mode in multi theme scenario (#11267) (9e6553d), closes #11265
- layout: allow flex-offset to be a child of layout-margin (#11330) (81eb46f), closes #11328
- layout: reduce layout CSS size by reverting some of #11247 (#11331) (5e37b63), closes #11000 #9546
- menu-bar: md-menu-bar panel theme supports dark mode themes (#11258) (3a21b89), closes #11238
- nav-bar: missing [disabled] scss selector (#11269) (d607e17), closes #11268
- ripple: fix iOS Safari stuck ripple issue (#11302) (5284145), closes #11069
- select: doesn't search correctly when pressing period character (#11313) (daf67a8), closes #11294
- theming: md-theme leaks when child elements are removed (#11326) (41c9d00), closes #11325
Features
Contributors
Thank you to the contributors, especially the first timers, who helped with the v1.1.10 release:
1.1.9 (2018-04-27)
Bug Fixes
- autocomplete: align highlight style with spec (#11244) (011315f), closes #10060
- autocomplete: don't show the menu panel when readonly (#11245) (0fe831a), closes #11231
- autocomplete: md-autocomplete panel theme supports dark mode (#11203) (aba7b2b), closes #11202
- datepicker: calendar panel theme supports dark mode (#11201) (2360764), closes #11200
- dialog: thread blocking during large DOM traversals (#10552) (#11193) (9086b54)
- layout: some flex directives don't work when on a child of
layout="column"
or layout="row"
(#11247) (e0078d7), closes #9546
- menu: md-menu panel theme supports dark mode (#11230) (ef14194), closes #11199
- nav-bar: initial disabled state is now respected (#11185) (d412358), closes #11172 #10688
- panel: use
$event.target
instead of $event.srcElement
for Firefox compatibility (#11234) (c86767f), closes #11035
- select: options panel theme supports dark mode (#11198) (f926c96), closes #3379
- slider: out of sync state between model and view value in same digest cycle (#10980) (50a1616), closes #9125
- slider-container: numeric inputs cut off on Firefox and Edge (#11210) (bbfede8), closes #9559 #10909 #10288 #10148
- toast: update style direction to flex-direction (#11169) (1ef9ec3)
Features
Contributors
Thank you to the contributors, especially the first timers, who helped with the v1.1.9 release:
1.1.8 (2018-03-16)
Bug Fixes
Features
Contributors
Thank you to the amazing contributors, especially the first timers, who helped with the v1.1.8 release:
1.1.7 (2018-02-08)
Bug Fixes
Features
- swipe: allow accessing the original currentTarget (#10997) (827990e)
Contributors
Thank you to the contributors who helped with the v1.1.7 release:
1.1.6 (2018-01-16)
Bug Fixes
- compiler: assign bindings to controller instance when using an ES6 (#10977) (f4b19fe)
- icon: fix malformed HTML in tests (#10792) (0bac462), closes #10785
- select: add closing tag for native select (#10833) (3b59b20), closes #10828
- select multiple: set the element dirty when the selected options change (#10749) (7256670), closes #10584
- slider: role was applied to inner element instead of the directive itself (#10731) (bbb719d), closes #10565
- theming: don't assume selector corresponds to expression (#10818) (f1e4fcb), closes #10793
- truncate: remove controllerAs and bindToController directive attributes (#10798) (a91c99a), closes #10356
Features
- datepicker: add the ability to restrict users to a calendar view (#9736) (eecc976), closes #9260
Contributors
Thank you to the excellent contributors who helped with the v1.1.6 release:
1.1.5 (2017-09-06)
Bug Fixes
- autocomplete: allow clear button even if directive is disabled (#10603) (2602e7b)
- calendar: conform to CSP. (#10519) (e1345ae), closes #10389
- demo: fix the disable ink bar checkbox (#10423) (f8deb0e)
- dialog: add check that scrollmask is present (#10708) (590b684)
- dialog: generate
aria-label
with dialog title (if exists) when .ariaLabel()
is not specified (#10735) (2247248), closes #10582
- gesture: unable to move text cursor and tap away on mobile (#10821) (baa869a), closes #10301 #5365
- gestures: fix the swipe and scrolling issues on touch devices (#10455) (17f09dc), closes #10187 #10145
- input: correct initial animation state of messages (#10246) (0151b4b), closes #6767 #9543 #9723 #10240
- input: fix placeholder text being read twice by screen readers (#10524) (71cd3e9)
- list: add
rel
to copied attributes for md-list-item
buttons #10351 (#10352) (241bbc4)
- menu: prevent menu from being larger than the viewport (#10729) (f823c83)
- panel: correctly reverse x-position in RTL (#10710) (d3d0c5d), closes #10536
- panel: fix propagateContainerEvents (#10497) (281504f), closes #10495
- progress-linear-theme: add md-primary support to progress-linear buffer mode (#10563) (9430a7c)
- select: accessibility fixes allowing screen readers (VoiceOver) to (#10760) (28d4bf2)
- select: unable to reopen if element was destroyed while closing (#10556) (93c2917), closes #10453
- tabs: accessibility and keyboard interaction fixes (#10706) (072f832), closes #10075
- tabs: add proper RTL support. (#9301) (338ca27), closes #9292
- tabs: allow right and left arrows to cycle through tabs (#10786) (bf6e567)
- tabs: hide md-tab-content elements entirely when inactive. (#10776) (c886286)
- util: scrollTop set on proper scroll target (#10549) (c1b715f), closes #10272 #10432
- virtual-repeater: add role="presentation" to structural divs to fix screen reader interactions (#10812) (72f930b)
- virtualRepeat: fix datepicker scroll to wrong current date (#10537) (4e579dd)
Features
$mdCompiler
The $mdCompiler
is able to respect the AngularJS preAssignBindingsEnabled
state when using AngularJS 1.5.10 or higher.
To enable/disable whether Material-specific (dialogs/toasts) controllers respect the AngularJS $compile.preAssignBindingsEnabled
flag, call the AngularJS Material method: $mdCompilerProvider.respectPreAssignBindingsEnabled(true/false)
.
This AngularJS Material flag doesn't affect directives/components created via regular AngularJS methods which constitute most Material & user-created components.
Only dynamic construction of elements such as Dialogs, Toast, BottomSheet, etc. may be affected. Invoking $mdCompilerProvider.respectPreAssignBindingsEnabled(true)
will make bindings in Material custom components like $mdDialog
or $mdToast
only available in controller constructors.
- By default
respectPreAssignBindingsEnabled === false
- With AngularJS 1.6 or newer,
respectPreAssignBindingsEnabled === true
as the default.
- With AngularJS >=1.5.10 <1.6.0, developers can use
$compilerProvider.preAssignBindingsEnabled(false)
to enforce this.
The $mdCompiler
now also understands the the $onInit
lifecycle hooks in controllers.
Note that no other AngularJS 1.5+ lifecycle hooks are supported currently.
$mdDialog.show({
locals: {
myVar: true
},
controller: MyController,
bindToController: true
}
function MyController() {
}
MyController.prototype.$onInit = function() {
}
Bug Fixes
Features
Bug Fixes
Features
- autocomplete: add md-autocomplete-snap="width" (#7750) (1e45c44)
- autocomplete: add md-dropdown-position option (#9774) (1ed298b), closes #9769
- autocomplete: allow developers to specify amount of dropdown items. (#9307) (b114302), closes #9306 #8751
- autocomplete: option to toggle the clear button (#9892) (70cecda), closes #4841 #2727
- autocomplete: pass md-input-max/min-length to the input with non-floating label (#9964) (388a340)
- autocomplete: support ng-trim on the underlaying input (#9496) (0032184), closes #4492
- button: add md-dense support (#9313) (25dd787)
- checkbox/switch: add support for animating ng-messages (#9473) (4006f53), closes #9430
- compiler: pass $element to controller instantiation (#9516) (be038d1), closes #9507
- compiler: support for content elements (#9551) (dfe1a00)
- datepicker: allow the date locale to be overwritten on a per element basis (#9749) (a090079), closes #9270
- dialog: extended theme inheritance of dialogs (#9762) (b7ae33e)
- interaction: added service to detect last interaction (#7965) (24370e7), closes #5563 #5434 #5583
- interimElement: properly handle multiple interims. (#9053) (421fed4), closes #8624 #8630
- list: add class to disable proxy elements. (#9470) (ad82012), closes #9423
- md-nav-item: support for
ui-sref-opts
on md-nav-item
(#9782) (af041da), closes #9481
- menu: expose close method on element scope; deprecate $mdOpenMenu (#9193) (1e4ba35), closes #8446
- navBar: option to disable ink bar (#9866) (97cbe69), closes #9862
- panel: add contentElement option (#9829) (3034237), closes #9757
- panel: add hook for close success. (#9819) (db90283)
- panel: add interceptors API and onClose hook (#9574) (96e5409), closes #9557
- panel: add the ability to update the animation of an existing panel (#9895) (a6f0de7)
- panel: allow panels to be part of multiple groups. (#9830) (80e87b5), closes #9565
- panel: allow passing in a function to the offset methods (#9615) (0896ba3), closes #9608
- panel: configurable animation duration (#9570) (bee04f3), closes #9177
- panel: panel grouping (#9538) (62df3c8), closes #8971
- panel: panel provider (#10215) (a169f6f), closes #10006 #10162
- switch: add attribute to invert (#8205) (ca06402), closes #7889
- themes: register theme on the fly (#9475) (7090a1f), closes #2965
- toolbar: add CSS rules for checkbox support (#9799) (038f3ed), closes #9500
- tooltip: tooltip uses MdPanel API (#9742) (6d06188), closes #9563
Bug Fixes
- autocomplete: fix messages not appearing. (#9909) (ce5f7c2), closes #9468
- autocomplete: fix TypeError in autocomplete. (#10227) (f8fd076)
- autocomplete: two specs leak the scroll mask element (#9568) (a95d76d)
- autocomplete: use global stylesheet for demo (#9930) (e807a3b)
- build: fix errors on angular 1.3 (#9663) (0ce8a57)
- build: prevent closure from stripping $inject annotations (#9765) (dbc52d0), closes #9758
- button: only apply focus effect for keyboard interaction. (#9826) (34823ac), closes #8749
- calendar: boundKeyHandler preventDefault on other input elements (#9746) (b903153)
- card: fix alignment with avatar icons in Safari (#9801) (ec318e7), closes #9147
- checkbox: properly show focus effect (#9827) (002207c)
- chips: add basic accessibility support. (#9650) (f18cb2b), closes #9391 #9556 #8897 #8867 #9649
- chips: add-on-blur with autocomplete (#9949) (72264af), closes #9582
- chips: no longer throw an error when returning focus to input. (#9528) (a3b3e7b), closes #9520
- chips: support md-min-length on md-contact-chips. (#9215) (455c679), closes #2423
- chips: use empty chip buffer if not a string (#9885) (d774b76), closes #9867
- colors: failing unit tests against Edge (#9876) (dfbc0f6)
- constant: remove dependency on $sniffer (#9875) (c1eceaf)
- datepicker: add aria-owns and aria-expanded support (#9733) (13fba2c), closes #9727
- datepicker: ensure that all month/year elements have the expected height (#9893) (b3b8fab), closes #9863
- datepicker: error message alignment in md-input-container (#9504) (0592dfa), closes #9342
- datepicker: pass in the timezone when formatting the date (#9837) (22f9faf), closes #9725
- datepicker: reference error and calendar not being read out by nvda (#9891) (694e561)
- datepicker: remove dependency on $mdGesture (#9803) (72b4f10), closes #9793
- datepicker: remove negative margin if triangle icon is disabled (#9853) (e1a5146), closes #9850
- datepicker: updateOn not working with non-bubbling events (#9632) (b5c412c), closes #9577
- datepicker, select: arrow button consistency (#9807) (b0df030)
- dialog: only restore focus with keyboard interaction (#9923) (c851204), closes #7963
- dialog: re-add md-actions deprecation class. (#10318) (e96293a)
- docs: fix broken links in theming docs (fd88814), closes #10203
- docs: prevent tabbing over hidden content; better animation handling (#9773) (da6baac), closes #8896
- docs: re-add accidentally removed css (#9808) (b14fa93)
- docs, dialog, interim, panel: compatibility with latest angular snapshot (#9787) (4fb1767)
- icon: codepen demo issue (#9780) (f03c513), closes #9561
- input: increase placeholder contrast on focus (#9804) (974acd3), closes #8903
- input: md-maxlength not properly updates on model changes. (#8351) (bf5c036), closes #1870
- interim: do not immediately splice interim. (#9670) (ebc8ace)
- interimElement: added missing scope dispose to fix memory leak (#9710) (eac3bfb)
- layout: fix use of flex-basis in layout modes (#9572) (c6fb5a5), closes #5345
- list: empty aria-label attributes for list-items with interpolation (#10218) (3556d57)
- list: expect aria-label with respect to aria-hidden (#9943) (2c367f7), closes #9933
- menu: avoid runtime errors when menu-content isn't set. (#10198) (0b65e08), closes #9709
- menu: focus first non disabled item (#9228) (1f32ccb), closes #9165
- menu: menu content should inherit theme (#10217) (dd2c8a9)
- menu-bar: nested menus not closing when clicking on the toolbar (#9602) (e0463c0), closes #9599
- menu-bar: do not use flex for buttons (#10027) (471b850), closes #9771
- menu-bar: test leaking scroll mask element (#9569) (c5b5386)
- nav-bar: null check tabs when updating nav-bar (#9071) (b38d928)
- nav-bar: tabs not being read out by screen readers (#9925) (454b974), closes #9383
- nav-bar: automatically add aria-label for navBarItem (#10219) (b7b1d01), closes #10110
- panel: allow clickOutsideToClose to work with propagateContainerEvents (#9886) (61bd95e), closes #9388
- panel: don't bind scroll event if scrolling is disabled (#9947) (088d2e6)
- panel: element not being removed when scope is destroyed (#9567) (d208ac5), closes #8683
- panel: make the actual position available in the offset methods (#9732) (6a0d592)
- panel: panel and tooltip theming (#10031) (b8357dc), closes #10030
- panel: panel not being constrained to viewport on repeat openings (#9944) (47e4c1b), closes #9942
- panel: take offsets into account when checking if element is on screen (#9662) (761493d), closes #9628
- panel: use prefixed transform property (#9721) (7706162)
- progress-circular: path not being re-rendered when diameter changes (#9846) (d6d3546), closes #9841
- progress-circular: fix arc bleeding through container (#10108) (491d139), closes #10107
- progress-circular: update animation to spec (#10017) (cf38b29), closes #9879
- radio-group: wrong aria-checked value on load when used with ng-value (#9790) (2bbf401), closes #9400
- select: block xss on md-select-label (#10023) (f7ecb4f)
- select: Fix duplicates in label. (#9695) (d553919), closes #9442
- select: unable to switch between falsy options (#9945) (54a1d0d), closes #9533
- select/datepicker: fix dropdown icon colors. (#10226) (bb90ce9)
- sidenav: allow for data bindings in md-component-id (#9255) (5cdceeb), closes #9052
- sidenav: allow more time before triggering a resize of the children (#9809) (79d272d), closes #9745
- sidenav: correct animation from closed to locked open (#9833) (bd605c0), closes #9425
- sidenav: notify child components when the element is opened (#9512) (989f81e), closes #7309
- subheader: add accessibility support (#9817) (1d77c92), closes #9392
- switch: invalid container margin in RTL (#9586) (b0d9921)
- tabs: allow md-tab-content > div to shrink (#10290) (2c9a5cc)
- tabs: don't set aria-controls when there is no content; better empty tab handling (#9763) (c93fdad), closes #9108
- tabs: dummy tabs should not have acccessibilty roles (#9452) (9e0c30e), closes #9450
- tabs: icon color isn't correct when the tab item is not active (#9620) (e80d0d2), closes #9536
- tabs: improve tab button focus styling logic (#9916) (166fb79), closes #9039
- tabs: properly blank activedescendant attr when no tabs exist (#9907) (348f6c0), closes #9279
- tabs: remove manually pagination sizing algorithm (#10136) (5b799e2), closes #9429
- tabs: support flexible content layout (#9451) (d89a682), closes #9206 #9704 #9779
- theming: match preceding selectors as well (#9484) (efb7031), closes #9480
- toolbar: title text should allow ellipsis. (#9229) (284d422), closes #9026
- tooltip: tooltip role (#10052) (7563b47), closes #10045
- tooltip: always resolve expressions against the correct scope (#10284) (685b902)
- tooltip: AngularJS 1.3.20 test failures. (#10115) (d8263f2), closes #10114
- tooltip: prevent xss in tooltip content (#10190) (8801ef8)
- tooltip: properly interpolate tooltip text to prevent possible XSS (#10159) (0b72ab9)
- util: body overflow-x breaking disableScrollAround (#9864) (4468126), closes #9860
- util: check for definition of window.performance.now before using in mdUtil (#9664) (1b9245a)
- util: disableScrollAround should not remove disabled scroll mask (#9547) (bbb9ec5)
- util: getClosest not working on elements with lowercase nodeName (#9510) (9936185), closes #9509
- util: properly determine viewport top offset (#9458) (fc7e9b3), closes #9370
- variables: rem function should use global $font-size variable (#9497) (1f14cc4), closes #9486
- chips,navbar,tooltip: avoid extra DOM lookups (#9527) (a1e68d5)
- navbar: reduces amount of watchers and buttons per item (#9818) (a5b8943)
- tooltip: reduce amount of event listeners on the window (#9514) (dc6b10c)
update
- autocomplete: md-require-match only turn invalid if search text is provided (#9119) (399016d), closes #9072
BREAKING CHANGES
- autocomplete: The autocomplete validator
md-require-match
no longer matches if the search text is empty.
- select:
md-selected-text
now only accepts text. It used to accept and render html but this was an XSS vulnerability.
It was fixed in: block xss on md-select-label (#10023) (f7ecb4f).
We have added a new md-selected-html
API for md-select
. It accepts an expression to be evaluated
that will return a string to be displayed as a placeholder in the select input box when it is
closed. The value will be treated as html. The value must either be explicitly marked as
trustedHtml or the ngSanitize module must be loaded.
Given the following code:
<md-select ng-model="selectedItem" md-selected-text="getSelectedText()">
angular
.module('selectDemoSelectedText', ['ngMaterial'])
.controller('SelectedTextController', function($scope) {
$scope.items = [1, 2, 3, 4, 5, 6, 7];
$scope.selectedItem = undefined;
$scope.getSelectedText = function() {
if ($scope.selectedItem !== undefined) {
return "You have selected: Item <strong>" + $scope.selectedItem + "</strong>";
} else {
return "Please select an item";
}
};
});
Change it to this:
<md-select ng-model="selectedItem" md-selected-html="getSelectedText()">
angular
.module('selectDemoSelectedText', ['ngMaterial', 'ngSanitize'])
.controller('SelectedTextController', function($scope) {
$scope.items = [1, 2, 3, 4, 5, 6, 7];
$scope.selectedItem = undefined;
$scope.getSelectedText = function() {
if ($scope.selectedItem !== undefined) {
return "You have selected: Item <strong>" + $scope.selectedItem + "</strong>";
} else {
return "Please select an item";
}
};
});
We continue to maintain our momentum with Angular Material. Today we published a patch release for Angular Material; a patch that contains more than 60 improvements and fixes.
--
- Add improvements to Themes registrations
- Add improvements to Docs to discuss differences between TabBar vs NavBar
- Add improve SideNav to specify disableScroll target when open
- Add feature BrowserColor to enable browser header coloring with Material Design Colors
- Add blur or focus features to Chips and Autocomplete
--
- Revert a Layout change for
layout="column"
- Fix animations for Input messages, Autocomplete, Dialog
- Fix Card images inside
md-card-title-media
to use flexbox CSS
- Fix AutoComplete, Input, Menubar, Select, and theming
- Fix Datepicker, Tooltip colors, Navbar theming, Virtual repeat with scrolling
--
Features
Bug Fixes
- autocomplete: don't use $mdUtils.nextTick in handleHiddenChange (#9319) (8f8ad78), closes #9318
- autocomplete: properly run animation for dialog in demo. (#9437) (69607e0)
- autocomplete: properly show dropdown on focus when minlength is met. (#9291) (e65ffc8), closes #9283 #9288 #9289
- autocomplete: remove autofocus ambiguity. (#9438) (00a4c05)
- build: properly filter core module files with updated gulp-filter (#9399) (0cd2a59)
- card: limit img size when using md-card-title-media (#9446) (d086e2b), closes #9355
- checkbox: not being marked as checked with ng-checked on load (#9424) (904b455), closes #9349
- compiler: remove manual controllerAs logic (#9462) (18afebe)
- datepicker: arrow direction in rtl (#9384) (f6da4d3)
- datepicker: forward aria-label to generated input (#9364) (165d4e7), closes #9340
- datepicker: forward tabindex to generated input (#9325) (6cfb542), closes #8147
- datepicker: improved overlay positioning (#9432) (d0a7765)
- datepicker: jumping forward if min date is in the same month as model (#9305) (412bc2c), closes #9284
- datepicker: keyboard navigation not working if the user scrolls too much (#9302) (30f6a74), closes #9294
- datepicker, menu, slider: remove duplicate properties (#9335) (1c098a6)
- demos: update core-icons svg in assets cache to latest changes. (#9418) (7e21118)
- dialog: add extra classes to identify buttons (#9463) (b11441c)
- dialog: do not compile an empty element when using a content element (#9303) (7c4b434)
- dialog: focus dialog element when no actions are set (#9272) (bcfe00a), closes #9271
- dialog: remove transition classes after hide (#9299) (f170133), closes #9276
- input: Ensure animated messages disappear. (#9466) (4e302c2), closes #9454
- layout: Revert overzealous IE11 flexbox fix. (#9412) (660826b), closes #9354
- menu-bar: unable to close menu when clicking on toolbar (#9428) (6dcecd5), closes #8965
- menu-bar: use checked icon from $$mdSvgRegistry (#9417) (04124d8), closes #9407
- navbar: add theming support (#9210) (4cfd4a1), closes #9137
- panel: Element reference error (#9375) (6383b52), closes #9374
- prefixer: do not throw an exception if element is undefined (#9345) (d07240b)
- undo change to unknown symbol for prod build (#9393) (bd4034d)
- progressCircular: better support for older ios versions (#9254) (215fae4), closes #9253
- select: Ensure
md-no-asterisk
attribute works. (#9347) (f265a0e), closes #9339
- tabs: ie10 MutationObserver issue (#9397) (bd70022)
- tabs: scroll blocks in pagination (related to #5439) (#9457) (b26c01c)
- textarea: resize handle position occasionally wrong (#9155) (3fc1004), closes #9151
- theming: fix read-only .configuration() (#9389) (b328882)
- virtual-repeat: not re-rendering when switching to a smaller list (#9363) (fce551d), closes #9315
Contributors
Thanks to the great contributors who helped with this v1.1.1 patch release:
<a name"1.1.0">
1.1.0 (2016-08-14)
BREAKING CHANGE
The <md-select>
's, <md-option>
component now acts more like
the default <option>
attribute of a standard HTML <select>
by
treating empty value
and ng-value
attributes as a special
"reset" case that allows the input to return to the default state
(i.e. the floating label returns to the placeholder position).
If you use the value
or ng-value
attributes with no value
as follows and expect it to be a valid option,
<md-option value="">All options</md-option>
you will need to update your option to have a value like one
of the following:
<md-option value="null">All options</md-option>
<md-option value="undefined">All options</md-option>
<md-option ng-value="''">All options</md-option>
Fixes #9718.
Features
- aria: add provider to disable console warnings. (d63e4d0a, closes #3507, #8709)
- autocomplete:
- card: add a class for overriding the image stretching (6e011b9a, closes #7447, #8183)
- chips: add functionality to disable removing. (4304e884, closes #5796, #3820, #5799)
- datePicker:
- Add a configuration option for the debounce interval. (7c6b823a, closes #8905, #8921)
- add ngFocus and ngBlur support (aaf682a1, closes #8779, #9182)
- add indicator that month headers are clickable (f61d53ec, closes #9128, #9142)
- allow users to specify the default calendar view (43e6bf19, closes #9111, #9113)
- is-open attribute, ability to hide icons, demo layout (562b76c5, closes #8481, #8743)
- add support for md-input-container (4c65fce5, closes #4233, #8083)
- icon: observing
mdFontIcon
and mdFontSet
attributes (5c2a06f3, closes #4961)
- layouts: add @mixin for responsive support for rows (b6edf552, closes #9112, #9115)
- list:
- panel: add RTL support (d127991c, closes #8974, #8990)
- select: allow support for any font-size dropdown arrow font-size is now forced to 16px m (554e5a20, closes #8715)
- sidenav: added onClose callback (1f01d264, closes #3179, #5974)
- textarea: add the ability to trigger a resize manually (b9a57aac, closes #8376, #8657)
- theme:
- toast: added toastClass property (f72c7816, closes #2878, #8951)
- util: add the ability to pass in a predicate function (c03db65c, closes #8644)
Breaking Changes
md-no-focus-style
attribute on md-button
is now a
class (.md-no-focus
)
Closes #8691. Closes #8734 (d04dfc5d)
Bug Fixes
Contributors
Thanks to the great contributors who helped with this release (after the rc.5 release):
<a name"1.1.0-rc.5">
1.1.0-rc.5 (2016-06-03)
With this release we have merged many of the pending Pull requests and added some notable changes:
- added new
md-nav-bar
and md-panel
components
- enhanced the performance of the
md-tabs
component
- added many improvements to dialog, datepicker
- added shrinking and resizing features to the md-input textarea component
- improved security safeguards using $templateRequest instead of $http
Contributors
Thanks to the great contributors who helped with this release:
Features
- colors:
- datepicker:
- year view, open on focus, bug fixes (5615d06f, closes #4251, #4650, #8547, #8030, #8557, #8472)
- add a year view (cfc33a60, closes #4251, #8472)
- demos: add global classes support (b639ce21, closes #8400, #8406)
- dialog:
- list: add support for ng-dblclick. (a9bca2bb, closes #8303, #8306)
- menu: add support for md-autofocus attribute (10e47120, closes #7868, #8469)
- navbar: add new md-nav-bar component. (0e2e60fd, closes #7781)
- panel:
- Update the panel position on scroll. (18aa360e)
- animation hook and origin focus config (0d2e4890)
- Clean up promises (16f4aeed)
- Allows centering to be used with animation transforms. (67ccfc54)
- Add hasBackdrop config to the panel. (0c4ad174)
- Inject mdPanelRef when instantiating the panel controller. (49c96c14)
- Add default animations and withAnimation API method. (4ec5cebd)
- initial implementation. (c481d5b1)
- prefixer: add service to prefix attributes (b3e401a7, closes #3258, #8080, #8121, #8163)
- ripple: add the ability to disable ripples globally (86bb3f75, closes #5669, #8191)
- select: support asterisk on floating labels. (d9784584, closes #7928, #8348)
- slider: md-invert (e85e1b95, closes #7666, #7667)
- textarea: support shrinking and resizing (ce076517, closes #7649, #5919, #8135, #7991)
- toast: add dynamic
start
and end
positions. (7f776a14, closes #7263, #7318)
Bug Fixes
- $mdIcon: prevent "Possibly unhandled rejection" errors (1fc80ce1, closes #8468)
- all: Use $templateRequest instead of $http for security. (0397e298, closes #8413, #8423)
- autocomplete:
- always hide the progressbar when clearing the input (3b3fc39b, closes #8301, #8195, #8341)
- Fix autocomplete items with spaces. (2fa2e4d5, closes #7655, #8178, #8580)
- disable scroll events for autocomplete wrap layer (8c79f32a, closes #6585, #5230, #5890, #6589)
- backdrop: adjust the backdrop height when the viewport resizes (918e335e, closes #8155, #8285)
- build:
- fix a warning when running local server (b09dcbb0, closes #8463)
- Fix failing tests with Angular 1.6. (2b0e0fd9, closes #8404)
- remove use of template strings in build-contributors (93921f8e)
- checkbox:
- md-checkbox documentation update & indeterminate color fix. (65151504, closes #8513)
- initial value not being marked properly (63e1c8e6, closes #8343, #8511)
- chips:
- safety check before getting length (4c47b27e, closes #6175)
- chipsCtrl.resetChip() should be called synchronously (7c6ff365)
- colors: parsed watched expression (e9a1d4f4, closes #8212, #8235)
- constants: prefixes for properties should be correct. (6aa9e08e, closes #8186, #8187)
- datepicker:
- prevent scrolling within a dialog (6e38d7c4, closes #8177, #8292)
- align input border colors with inputs. (e5dcbab9, closes #8148, #8375)
- don't use the locale in the default formatting function (00f09f4e, closes #7456, #7404, #8275, #8162)
- disabled dates blending in with background on a dark theme (ab1d7253, closes #8550, #8627)
- occasionally failing test (92e932c3, closes #8596)
- unit tests in safari (e588df9a, closes #8551)
- dialog:
- fabToolbar: change of pointerEvents from initial to inherit (562d7c17, closes #7012, #8082)
- highlight-flags: make ^/$ work properly (45278ec0, closes #8096, #8120)
- icon:
- input:
- interimElement:
- prevent unhandled rejection error in $exceptionHandler. (112a3e40, closes #8622)
- show method should cancel existing interim element (8bf174b5, closes #8600)
- layout: IE10-IE11 column-flex bug fix (ce0ebbfc, closes #8161)
- list: remove secondary container flex filler. (621cc952, closes #8094, #7976, #8075)
- menu: type checkbox should not affect a normal menu item. (560474f7, closes #8110, #8117)
- navbar: fixes navbar logic in angular 1.3 (2b8d18fb, closes #8419)
- panel:
- attached panels to body (b9b6203a, closes #8420)
- Fix panel tests in Angular 1.3. (296f1c71, closes #8418)
- positions panel offscreen when calculating height/width (46492407, closes #8405)
- css and docs fixes (c13feb76)
- updates to positioning (0168e867)
- Fixes custom animations in the demo to account for opacity. (060a54bb)
- Make all tests wait for promises to resolve. (685c6fc8)
- radioButton: demos are not support RTL properly. (02d3de20, closes #8233, #8243)
- select:
- sidenav:
- slider: fix a js error if the slider container doesn't have a md-input-container (4aa7160c, closes #8174, #7728, #8225)
- subheader: fix hidden directives inside of sticky clone. (44140ce6, closes #8500, #8504, #8505)
- swipe: safe apply the callback (715dd34f, closes #8318, #8497)
- tabs:
- tests:
- Cleans up the DOM after select, menu, and tooltip tests. (62c2da1b, closes #8181)
- re-enable the mdGridList test (b496b0d7, closes #8086)
- theming:
- toast: toast template transform was not appending nodes. (a8f43b85, closes #8131, #8132)
- toolbar:
- tooltip:
- interpolate the tooltip text when adding it to the aria-label (60910efa, closes #6855, #8170)
- properly default to "bottom", if no position is specified (491e692d, closes #8389, #8525)
- empty tooltips should not show up. (c513e493, closes #8021)
- cancel show timeouts when leaving before delay. (5ba4c0e7, closes #8363, #8394)
- set initial position of tooltip (1cc80d3a, closes #4345, #5654)
- util: restore scrolling after test executed. (1ccf7277, closes #8206)
- virtual-repeat: auto shrink restored wrong original size. (7e5be01a, closes #7955, #8095)
- virtualRepeat: Memory leak (b99e74d9, closes #8055, #8056)
- whiteframe: prevent contents from being printed black (0f0c4b65, closes #8512, #8520)
<a name"1.1.0-rc4">
1.1.0-rc4 (2016-04-15)
This release we added a new feature md-select-header
which supports custom content in the header of the md-select
component:
Features
- select: Adding md-select-header directive to md-select. (62754242, closes #7782)
Bug Fixes
Contributors
Thanks to the great contributors who helped with this release:
---
<a name"1.1.0-rc3">
1.1.0-rc3 (2016-04-13)
This RC3 provides several fixes to Theme foreground and background colors. Also included is a Colors demo Theme ColorPicker that will be useful for developers interested using Theme colors and the new md-colors
directive within their own custom components.
Features
- colors: directive and service to use any color from any palette on any element (ced4e0c2, closes #1269, #7791)
- progress: add the ability to disable the progressbars (18bfae10, closes #7862)
- theme: allow global disable of theming generation (cb694048, closes #7959)
Breaking Changes
<a>
: anchor tags in md components inherit theme colors
- Content:
background-color: '{{background-default}}'
- Subheader:
background-color: '{{background-default}}'
- Button: use accent palette A700 for hover and focused
- Checkbox: ripple use accent palette A700
- Input: use
primary-color
instead of primary-500
- LinearProgress:
background-color: '{{accent-A100}}'
- RadioButton: container uses
color: '{{accent-A700}}';
- Select: accent uses color:
'{{accent-color}}';
- Slider: focus reing uses
background-color: '{{accent-A200-0.2}}';
- Toast: uses
color: '{{accent-color}}';
instead of color: '{{accent-A200}}';
Bug Fixes
- a: default accent color removed (59dfce63, closes #7891)
- aria: $mdAria should not use texts from aria-hidden nodes (b3cb84d3, closes #7376, #7957)
- autocomplete:
- don't show the loading bar when hitting escape on an empty input (e821ae32, closes #7927, #7934)
- don't apply a background if the autocomplete has a floating label (44cf4a93, closes #7841, #7848)
- build: prevent npm publishing (fb4670fd, closes #7393)
- components: wrong use of accent and primary colors (da48b6c9, closes #7890)
- css: use classname to identify md components for styling (9aac20fa, closes #7942)
- demo: bottomSheet grid icon buttons are clipped (15424bac, closes #8018)
- icon: icons should have a minimum height. (1dc0c17f, closes #7599, #7860)
- input: prevent the input from jumping when it becomes disabled (4bff2bbe, closes #7640, #7919)
- list:
- menu: resolve an error when going from a nested menu item to a regular one (e3fc728f, closes #7819, #7826)
- progress-circular: use a non-flushable requestAnimationFrame (f687d106, closes #7936)
- release:
- specifies upstream URL when pushing to material repo (bbaa5b80, closes #7852)
- adds
newVersion
value to node string to update package.json (0fc0f3e4, closes #7810)
- rtl-mixin: changed ltr override to initial (8968c999, closes #7423)
- select:
- prevent selectedLabels from being passed $scope by $watch (d0bacdfe, closes #7830)
- md-checkbox inside md-list-item using incorrect text color. (a3f63cbd, closes #7893)
- sidenav:
- animation when width is explicitly defined (57ab6d9c, closes #7483, #7605)
- mdSideNav should support deferred or instant component lookups (877551c5, closes #7900)
- tabs: not selected tab text color as spec (ccfef921, closes #7920)
- tests: disable gridlist test (317c1c8d)
- themes:
- anchor should inherit theme to support colors (81b44a47)
- anchor theme colors are scoped to _md components (901c3fc6)
- theming: theming should probably parse background hue names. (79eba382, closes #7510, #8022)
Contributors
Thanks to the great contributors who helped with this release:
---
<a name"1.1.0-rc2">
1.1.0-rc2 (2016-03-30)
Features
- autocomplete:
- checkbox: add indeterminate checkbox support (2776ad29, closes #7643)
- chips: Make chips editable (c3085ee7, closes #7579)
- input: allow skip hidden inputs (a2ac9a3a, closes #2153, #6425)
- list: add ui-sref-opts attribute to button executor. (6763bfa7, closes #7658, #7672)
- select:
- add support for checkbox options in the dropdown (3524aa95)
- add hover styles and fix disabled (7bc3cc1e, closes #7518, #7765)
- Adding md-selected-text attribute to md-select. (bbbe9e30, closes #7721)
- tabs: allow disabling select click event by adding
md-no-select-click
attribute (6bc38e59, closes #5351)
Breaking Changes
- Button: modified theme CSS
background-color: '{{accent-600}}'
- Content: restored
background-color: '{{background-hue-1}}'
in md-content
- DatePicker: modified theme CSS
background: '{{background-hue-1}}'
- Calendar: modified theme CSS
background: '{{background-A100}}';
- Input: inputs with type
hidden
will be skipped by the input-container
- Select: added hover styles and fixes disabled styles to
md-select
- privatized CSS for
- Autocomplete:
_md-mode-indeterminate
- Chips: Added read-only styles for
.md-readonly ._md-chip-input-container
- Chips: Support for editable chips with
._md-chip-editing
- Select: updated layout CSS for
._md-text
- updated global CSS style for html and body:
color: '{{foreground-1}}'; background-color: '{{background-color}}'
Bug Fixes
- autocomplete:
- button:
- reduce selector length (e9c3b69b, closes #7705)
- Fix icon opacity in themed toolbar disabled buttons. (74a53a8c, closes #5815, #7492)
- FAB & Raised buttons hover and focus colors match material design (7a650bc5)
- card: remove duplicate demo module names. (30b90192, closes #7693)
- checkbox: pointer events disable ripple events too (c2628d7f, closes #7538, #7541)
- chips:
- do not trim the input model. (2d020e12, closes #7243, #7748)
- Disable editing for custom templates (31787c05, closes #7586)
- fix md-max-chips for autocomplete watcher (051474eb, closes #7549, #7550)
- fix chips focus functionality (cfb5acb8, closes #5897, #5662, #5941)
- Fix readonly hiding and other issues. (92be8d2b, closes #7136, #7489)
- datepicker:
- icon:
- input: prevent the label from overflowing the parent (dbb75a64, closes #7403, #7641)
- layout: small screen layout attribute selectors (8bda8418, closes #5166, #7638)
- list:
- apply md-no-style to
a
tags (9a8eab0c, closes #5653)
- dense list font size (9c85915e, closes #7552, #7650)
- make secondary items static (9bb78e06, closes #7500, #2759, #7651)
- fix compatibility with IE11 (2bc88e22, closes #7557, #7573)
- item-inner should be not wider than the container (91585893, closes #7551, #7525, #7531)
- fix overflow for ng-click and fix firefox click issues (497190b7, closes #7490, #7499, #7503)
- menubar: remove debugger; statement (3f34900d)
- progress-circular:
- radioButton: replaced inherit margin values with 0 Inherit is not the proper value, 0 should (d996176a, closes #7740, #7770)
- select:
- fix flickering of ngMessages on mdSelect opening (c68869ea, closes #7636, #7646)
- disabled state, invalid html in unit tests (cc4f6263, closes #7773, #7778)
- Fix NPE by checking for controller existence. (c3b498f7, closes #7079, #7560)
- fix layout issue (dfa0a0c0, closes #6200, #7509)
- spinner size (00619c71, closes #7505, #7506)
- sidenav:
- textarea: scrolling, text selection, reduced DOM manipulation. (7789d6a4, closes #7487, #7553)
- theme:
- remove default background theme (grey)
1000
value (4b49f23c, closes #7600, #7686)
- restore use of unqoute in mixins (d2b02c8f)
- fix text color defined in theme html, body (4112f514)
- theming should also watch for controller changes. (a653122c, closes #5899, #7154)
- updates text opacities to the newest specs (48a3b9c3, closes #7433)
- toast: better toast templating allowing comments and sibling elements (43d53878, closes #6259, #6494)
---
<a name"1.1.0-rc1">
1.1.0-rc1 (2016-03-09)
Features
- $mdDialog: add prompt (4d535e2d, closes #4995, #6769)
- a: support theme colors (3177e666, closes #7472)
- autocomplete:
- chips: md-max-chips to specify a maximum of chips that can be added through user input (03caf58e, closes #6864, #6897)
- input:
- layout:
- progressCircular: implement progressCircular to use SVG (640b55db, closes #7322)
- slider: vertical slider, UI fixes and bug fixes (e0abeb4d, closes #4371, #3259, #2421, #1221, #4576, #6996, #7093, #7093, #5874, #5872, #6051)
- toast: add highlight class method + improved docs design + align demo with specs (1efe8162, closes #6607, #7246)
Breaking Changes
Fixes #6607
Closes #7246
(1efe8162)
Bug Fixes
- FAB: Re-add line-height to fix ui-sref issues. (f9f893ab, closes #7087, #7145)
- autocomplete:
- fix progressbar and messages alignment and bottom padding. (e0423cee, closes #6218, #6231, #6255, #6258)
- fix not found template detection when element is hidden (96cfa742, closes #7035, #7142, #7042)
- clean up md-scroll-mask element on destroy (042086f3, closes #7049, #7128, #7291)
- improve promise logic (4d59a611, closes #6521)
- fix autocomplete tabindex support (1f54bf6c, closes #6999, #7005)
- fixes the sizing math (bc55ac90, closes #6212, #7015)
- store hasNotFoundTemplate in shared element (655eb0f0, closes #5865, #5867)
- allow clicking on not-found template. (52a519ea, closes #6191, #5526, #6103)
- bidi-demos: fixed broken demos (8d7f54fb, closes #7399, #7409)
- build:
- partition IE-only CSS fixes during build (eaf0fe51, closes #6304)
- add phantomjs polyfill for ng1.5 testing (86855767)
- button: fixed wrong md-icon selector and changed raised icon color to hue-900 (f6c93b8f, closes #6944, #6945)
- card:
- checkbox:
- chips:
- constants: add semicolon keycode (1aa98f93, closes #7228)
- content: removed foreground and background colors (4a2c362c, closes #7422)
- datePicker: ensure one is able to override default sass variables values (2712003b, closes #7329)
- datepicker: Set vertical align on datepicker tables (abde470b, closes #7278)
- demo: observe interpolated docs-demo attributes + fix layout alignment interactive dem (82625cf4, closes #6564, #6361, #6319, #6567)
- dialog:
- prefix dialog content probably (32951a7d, closes #7469, #7480)
- moved bottom focus trap to be a sibling (a2eca807, closes #7407, #7408)
- Unprivatize .md-dialog-container class. (357e4d58, closes #7449)
- correctly disable keydown listener for escapeToClose (72f8dfd6, closes #7214, #5153, #7222)
- prevent duplicate ids for md-dialog and md-dialog-content (9ace8ecc, closes #6339, #6717)
- docs:
- fabController: Properly namespace FabController. (3a51edf2, closes #6881, #6919)
- grid-list: validate that row height is defined (f171fd29, closes #6870, #7348)
- handleMenuItemHover: allow any mdButton to be a focusableTarget (0627d9e9, closes #7221)
- icon:
- input:
- IE perf with attribute selectors for ngMessages (7a15750c, closes #7360)
- Fix transition when switching tabs in Safari. (6e685c37, closes #4203, #7207)
- ngMessages height changing. (e6176fb5, closes #7072, #7146)
- match up all label transitions (176a2f92, closes #6328, #6400)
- calculate icon vertical offset (47f37004, closes #5731, #5732)
- smart icon support for input, textarea, select (7778a9ca, closes #6977, #6979)
- truncate long label (fd46483c, closes #5331, #6740)
- interim-element: cancel was emitted as list and not as stack (6d39c218, closes #6912, #7053)
- layout:
- Firefox and flex layout with min-height (faf58455, closes #7382)
- revert temp fix for Chrome flexbox bug (557eea8f)
- list:
- make dense and normal showcase responsive. (7efb351a, closes #7395)
- removed
keypress
event listener from first child on destroy (b2afa360, closes #5842, #7057)
- apply ripple only once and fix list-inner alignment for multi-line lists. (db763bc3, closes #7059, #7060)
- fix converted space when target is content editable. (70489c25, closes #5406, #7161)
- multi-line inner-text-container should not overflow (8499d029, closes #7065, #7272)
- fix list margin if anchor is present. (528a4393, closes #5608, #6317, #6496)
- show item content separated to the button (bb5c1057, closes #6984, #6488, #6493)
- Don't require avatar to be direct child (2dfd1cd7, closes #5554, #6181)
- listItem: allow for multiple md-secondary items (3ffa0a2b, closes #2595, #5958)
- md-chips placeholder: correct placeholder/secondary logic (dfd4ba2e, closes #6535)
- menu: text alignment in md-button with icon and href (34f2704c, closes #7367, #7401)
- menuBar: Fix hovering consecutive nested menus. (b58343c2, closes #6685, #7361)
- progress-circular: removed dependency on
ng-hide
class (a56591d1, closes #7454, #7460)
- progress-linear: changed default behavior of invalid mode (91ec2bf5, closes #7470)
- progressCircular:
- add ARIA in indeterminate mode, IE10 visibility, test cleanup (8539eac5, closes #7420)
- switch to using SVG transform for the indeterminate circle rotation and apply so (d67389c8, closes #7414)
- release: cleans up git commands used for release script (c60d16be, closes #7369)
- select:
- use parsed attribute for md-container-class attribute (9179c619, closes #6973, #6976)
- fix set form to pristine if ng-model for multiple select is predefined. (19966a31, closes #6556, #6782)
- sidenav: apply theming on sidenav correctly (cb864d55, closes #7084, #7374)
- slider: allow tabindex overwrite (9b9e4a5b, closes #5829, #5830)
- sticky:
- tabs:
- test: remove fdescribe in compiler.spec (e50dd9b8)
- tests:
- update mdCompiler to support unwrapped simple text nodes (5488d946)
- improve karma config for failing CI server. (df268e81, closes #7094)
- configure Travis CI to use PhantomJS2 (4e977bb0)
- toast: Updated toast styles, added rtl features, added custom demo (af40e255, closes #6649, #7099)
- toolbar: apply accent color to ripple and icons in toolbar. (83829a77, closes #5341, #5811)
- travis:
- update secure access token for Github pushes (30b370d3)
- update use of 'secure' token for git pushes (3badcc08, closes #7247)
- download PhantomJS2 from bitBucket (55399162)
- removed allow_failures (0b5fa378)
- virtualRepeat: Do not scroll past bottom Might also fix #4169 (2bf00ad2, closes #6279, #6990)
- whiteframe: update breakpoints in whiteframe class demo (d2913a97, closes #6911)
<a name"1.0.9">
1.0.9 (2016-05-19, Patch release)
Features
Bug Fixes
- build: Fix failing tests with Angular 1.6. (af1e2269, closes #8404)
<a name"1.0.8">
1.0.8 (2016-04-28, Patch release)
Features
- autocomplete:
- checkbox: add indeterminate checkbox support (cd987f0b, closes #7643)
- chips: md-max-chips to specify a maximum of chips that can be added through user input (64cefc81, closes #6864, #6897)
- input:
- select:
- Adding md-select-header directive to md-select. (c6d08bbf, closes #7782)
- Adding md-selected-text attribute to md-select. (e7af2c87, closes #7721)
- tabs: allow disabling select click event by adding
md-no-select-click
attribute (9624dac1, closes #5351)
Breaking Changes
- inputs with type
hidden
will be skipped by the input-container
Fixes #2153
Closes #6425
(e7c51e3e)
Bug Fixes
- autocomplete:
- fix autocomplete tabindex support (321feb00, closes #6999, #7005)
- only handle results if it's an array or a promise (5eab71b8, closes #7074, #7089)
- probably clear the autocomplete. (b05b1f7c, closes #7180, #7354)
- stop loading if last promise got resolved (6307516c, closes #6907, #6927)
- fix not found template detection when element is hidden (3b766479, closes #7035, #7142, #7042)
- clean up md-scroll-mask element on destroy (acbd5c6a, closes #7049, #7128, #7291)
- fixes the sizing math (2390d88b, closes #6212, #7015)
- store hasNotFoundTemplate in shared element (0f9dae36, closes #5865, #5867)
- allow clicking on not-found template. (4ef9674c, closes #6191, #5526, #6103)
- build:
- bower-material-release should force remove the stale layout files. (a543def6, closes #7807)
- remove stale bower-material/layout css files (ab1a7d2f)
- closure build needs @ngInject to $mdUtil (d3c29fe2, closes #7611, #7609, #7608)
- closure build needs @ngInject annotation (79a00dbd, closes #7613)
- button: fixed wrong md-icon selector and changed raised icon color to hue-900 (32435759, closes #6944, #6945)
- card: remove duplicate demo module names. (cc47355a, closes #7693)
- checkbox:
- chips:
- constants: add semicolon keycode (5e8cf9eb, closes #7228)
- datePicker: ensure one is able to override default sass variables values (dee1c1c7, closes #7329)
- datepicker:
- demo:
- dialog:
- docs:
- grid-list: validate that row height is defined (a8b886ab, closes #6870, #7348)
- handleMenuItemHover: allow any mdButton to be a focusableTarget (0fa96d54, closes #7221)
- icon:
- input:
- interim-element: cancel was emitted as list and not as stack (f4ac5299, closes #6912, #7053)
- layout: Firefox and flex layout with min-height (ee3cab59, closes #7382)
- list:
- md-chips placeholder: correct placeholder/secondary logic (367d0ccc, closes #6535)
- mdSelect: fix flickering of ngMessages on mdSelect opening (b54f7ede, closes #7636, #7646)
- menuBar: Fix hovering consecutive nested menus. (4bdda21c, closes #6685, #7361)
- menubar: remove debugger; statement (822267b0)
- radioButton: replaced inherit margin values with 0 Inherit is not the proper value, 0 should (39619ae4, closes #7740, #7770)
- release:
- specifies upstream URL when pushing to material repo (7abfddf5, closes #7852)
- replace https urls with ssh versions to prevent typing password during release (cdecdd2a, closes #8070)
- adds
newVersion
value to node string to update package.json (0e13786b, closes #7810)
- cleans up git commands used for release script (4b0d1bfe, closes #7369)
- select:
- md-checkbox inside md-list-item using incorrect text color. (d9682e24, closes #7893)
- prevent labels from overflowing (d0c781f9, closes #7865)
- disabled state, invalid html in unit tests (d2c29b59, closes #7773, #7778)
- spinner size (2dcc90eb, closes #7505, #7506)
- use parsed attribute for md-container-class attribute (ecd68378, closes #6973, #6976)
- fix set form to pristine if ng-model for multiple select is predefined. (e164e69d, closes #6556, #6782)
- sidenav:
- slider: allow tabindex overwrite (47cfe446, closes #5829, #5830)
- sticky:
- tabs:
- tests:
- update mdCompiler to support unwrapped simple text nodes (36df9b9b)
- remove invalid use of css private names (d35c3bbd)
- theming: theming should also watch for controller changes. (3e35ef0a, closes #5899, #7154)
- toast: better toast templating allowing comments and sibling elements (57a929a2, closes #6259, #6494)
- util: restore scrolling after test executed. (59144784, closes #8206)
- virtualRepeat:
- whiteframe: update breakpoints in whiteframe class demo (c43b1a34)
<a name"1.0.7">
1.0.7 (2016-04-01, Patch Release)
Features
- autocomplete:
- chips: md-max-chips to specify a maximum of chips that can be added through user input (64cefc81, closes #6864, #6897)
- input:
- tabs: allow disabling select click event by adding
md-no-select-click
attribute (9624dac1, closes #5351)
Bug Fixes
- autocomplete:
- fix autocomplete tabindex support (321feb00, closes #6999, #7005)
- only handle results if it's an array or a promise (5eab71b8, closes #7074, #7089)
- probably clear the autocomplete. (b05b1f7c, closes #7180, #7354)
- stop loading if last promise got resolved (6307516c, closes #6907, #6927)
- fix not found template detection when element is hidden (3b766479, closes #7035, #7142, #7042)
- clean up md-scroll-mask element on destroy (acbd5c6a, closes #7049, #7128, #7291)
- fixes the sizing math (2390d88b, closes #6212, #7015)
- store hasNotFoundTemplate in shared element (0f9dae36, closes #5865, #5867)
- allow clicking on not-found template. (4ef9674c, closes #6191, #5526, #6103)
- build:
- bower-material-release should force remove the stale layout files. (a543def6, closes #7807)
- remove stale bower-material/layout css files (ab1a7d2f)
- closure build needs @ngInject to $mdUtil (d3c29fe2, closes #7611, #7609, #7608)
- closure build needs @ngInject annotation (79a00dbd, closes #7613)
- button: fixed wrong md-icon selector and changed raised icon color to hue-900 (32435759, closes #6944, #6945)
- card: remove duplicate demo module names. (cc47355a, closes #7693)
- checkbox:
- chips:
- constants: add semicolon keycode (5e8cf9eb, closes #7228)
- datePicker: ensure one is able to override default sass variables values (dee1c1c7, closes #7329)
- datepicker:
- demo:
- dialog:
- docs:
- grid-list: validate that row height is defined (a8b886ab, closes #6870, #7348)
- handleMenuItemHover: allow any mdButton to be a focusableTarget (0fa96d54, closes #7221)
- icon:
- input:
- interim-element: cancel was emitted as list and not as stack (f4ac5299, closes #6912, #7053)
- layout: Firefox and flex layout with min-height (ee3cab59, closes #7382)
- list:
- md-chips placeholder: correct placeholder/secondary logic (367d0ccc, closes #6535)
- mdSelect: fix flickering of ngMessages on mdSelect opening (b54f7ede, closes #7636, #7646)
- menuBar: Fix hovering consecutive nested menus. (4bdda21c, closes #6685, #7361)
- menubar: remove debugger; statement (822267b0)
- radioButton: replaced inherit margin values with 0 Inherit is not the proper value, 0 should (39619ae4, closes #7740, #7770)
- release:
- adds
newVersion
value to node string to update package.json (0e13786b, closes #7810)
- cleans up git commands used for release script (4b0d1bfe, closes #7369)
- select:
- sidenav:
- slider: allow tabindex overwrite (47cfe446, closes #5829, #5830)
- sticky:
- tabs:
- tests:
- update mdCompiler to support unwrapped simple text nodes (36df9b9b)
- remove invalid use of css private names (d35c3bbd)
- theming: theming should also watch for controller changes. (3e35ef0a, closes #5899, #7154)
- toast: better toast templating allowing comments and sibling elements (57a929a2, closes #6259, #6494)
- virtualRepeat: Do not scroll past bottom Might also fix #4169 (9a36112c, closes #6279, #6990)
- whiteframe: update breakpoints in whiteframe class demo (c43b1a34)
<a name"1.0.6">
1.0.6 (2016-02-29)
Bug Fixes
- autocomplete:
- constants: add semicolon keycode (5e8cf9eb, closes #7228)
- dialog: correctly disable keydown listener for escapeToClose (35de3d1a, closes #7214, #5153, #7222)
- docs:
- handleMenuItemHover: allow any mdButton to be a focusableTarget (0fa96d54, closes #7221)
- input: Fix transition when switching tabs in Safari. (b944ea1e, closes #4203, #7207)
- list: fix converted space when target is content editable. (5d596a4f, closes #5406, #7161)
- sticky:
- tabs:
<a name"1.0.5">
1.0.5 (2016-02-04)
Features
Bug Fixes
- autocomplete:
- tabs:
- button: fixed wrong md-icon selector and changed raised icon color to hue-900 (32435759, closes #6944, #6945)
- demo:
- docs:
- md-chips placeholder: correct placeholder/secondary logic (367d0ccc, closes #6535)
- select:
- use parsed attribute for md-container-class attribute (ecd68378, closes #6973, #6976)
- fix set form to pristine if ng-model for multiple select is predefined. (e164e69d, closes #6556, #6782)
- slider: allow tabindex overwrite (47cfe446, closes #5829, #5830)
- virtualRepeat: Do not scroll past bottom Might also fix #4169 (9a36112c, closes #6279, #6990)
- whiteframe: update breakpoints in whiteframe class demo (c43b1a34)
<a name"1.0.4">
1.0.4 (2016-01-28)
Features
- whiteframe: support attribute directive to apply md-whiteframe classes (4d5e0ed0, closes #6772, #6831)
Bug Fixes
- datepicker:
- change mdDateUtil.isDateWithinRange to ignore the time component of the date (e1c07ec9, closes #6887, #6888)
- set datepicker touched if bluring input or closing the pane (f4839afa, closes #6598, #6722)
- fix input always being required. (83f4d5e6)
- dialog: fix dialog resizing on window resize (ae7d661e, closes #6876, #6878)
- input:
- layout:
- md-slider: clamp md-slider's initialisation (b3ffa6f7, closes #6858)
- mdSelect: Selected label shouldn't copy the ripple container in the md-option (b7073759)
- menu: cleanup interim element on element destroy (95fbb16f, closes #6545, #6558)
- select: made select line height aligned with input (c19eec4b, closes #5524, #6741)
- tabs: fix dynamic height demo for tabs (09185964, closes #6785)
- toolbar: apply the warn color, accent color (64911ab7, closes #6447)
<a name"1.0.3">
1.0.3 (2016-01-21)
Features
- $mdThemeProvider: allow the user to define a nonce attribute for generated theme style tags (3f1208b4, closes #6691)
Bug Fixes
- button:
- fix aria-label async injection and tests (57163406)
- aria-label injection (61136481)
- card: fix card demo for webkit engine (8871eb3d, closes #6573, #6678, #6765)
- datepicker: use time-insensitive comparison for min/max. (0e334cd3)
- demos: codepen demos load svg assets (d8602747, closes #6695, #6727)
- dialog: changed translate3d to translate (689a34da, closes #4544, #6729)
- input: show messages with nested forms (74fe691c, closes #6276, #6699)
- speedDial: Ensure scale animation actions are invisible when closed. (7e7ac8f5, closes #6344, #6670, #6786)
<a name"1.0.2">
1.0.2 (2016-01-14)
Bug Fixes
- datepicker: temporarily disable test that only passes on FF. (656694f4)
- dialog: fix focus trap sometimes not working. (0a7ded9e, closes #6590)
- doc: update CodePen community url (985ec605, closes #6652)
- layout: use flex-start instead of start (c0f5aea7, closes #6402, #6403)
- virtualRepeat: Recover from scroll events that occur when hidden. (bbca34f4, closes #5448, #5448, #6389)
<a name"1.0.1">
1.0.1 (2015-12-17)
Bug Fixes
- select: Position incorrect if selection scrolled. (de5237f1, closes #6190, #6354)
- tabs: workaround for ngAnimate issue with ngClass (19c11fdd)
<a name"1.0.0">
1.0.0 (2015-12-14)
This is a landmark release - announcing public availability of version 1.0.0!
Bug Fixes
- demos: CodePen launches fixed (86ec22ad, closes #6297)
- dialog: guard against missing focus traps upon removal. (8d7ec062)
- input:
- Fix input errors CSS to properly display. (0eb7d8a6, closes #5837, #6298)
- guard against null access on parentForm (Angular 1.3). (1d71928e)
- Remove unneccessary CSS error margin. (5ca31706, closes #6235)
- layout: 'flex' change per recommended workarounds and added
flex=nogrow
(f3761781, closes #6205)
- layouts: do not replace invalid attribute values (16486dbf)
- menu-bar: fix embeded menus closing immediately (62af9387, closes #6184, #5866)
- select:
- showHide: Don't set up $md-resize $broadcasting $watcher until recieving $md-resize-enable (2f18bb4e, closes #5760, #6170)
- speedDial: Fix intially open bug. (cfdd7cf1, closes #6111)
- tabs: tabs will not try to animate height if the new height matches the current height (a4ea9dea)
- test: improve test of $interpolate for ng v1.5.x (43e01a7f)
- toast: wrap toast content with .md-toast-content (ea60dd3b)
- tooltip: Firefox scroll event was triggered cause the usage of translate3d (c33819e8, closes #6206)
- virtualRepeat: Resolve bizarre missing $scope.$root issue (#6129) (190d304f, closes #6171)
<a name"1.0.0-rc7">
1.0.0-rc7 (2015-12-08)
The Getting Started and the Layout documentation have been improved with more CodePen
samples. RTL support has been improved for the Input components.
Features
Bug Fixes
- autocomplete:
- gets rid of uncompiled content flicker. Works around issues cased by the scope d (88ba1fdd, closes #5637)
- always set tabindex to allow receiving focus. (d3c0acb2, closes #6101, #5665, #6135)
- cards: applying zero margin only on first and last p elements (aa6a0588, closes #6060)
- dialog: update code example from
content
to textContent
. Fixes (19389455)
- input:
- layout: hide and show directives with breakpoint suffixes now work properly (a2ec6607)
- list: don't turn list-items with ngIf into a button. (ef05ea36)
- menu: fix menus inside toolbars and dialogs (378248a5, closes #6131, #6109, #6049, #6073, #6089, #6116)
- menubar:
- fix broken menubar accessability with checkbox and radio menuitems (eb1695a0, closes #6151)
- fix keyboard controls (0fa917d5)
- fix menus overflow hiding behind menubar (b339baa9)
- ripple: calculate relative coordinates from ripple target. (36b03f2f, closes #5917, #6092)
- select: fix bugs introduced by keeping md-select-menu in DOM. Fix tests (7edda118, closes #6071)
- toast: Hide scrollbars during animation. (cae51a65, closes #2936, #6029)
- toolbar: solves NgUpgrade interop issue. (c668ba40, closes #6069, #6081)
- tooltip:
- always append to body and disappear on scroll (9d726593, closes #6140)
- guard against missing offsetParent. (d0b7bacf)
- virtualRepeat:
- sets initial size for virtual repeat when the first results require shrinking (6acd1c3a, closes #5826, #6139)
- Broken demos relating to size computation (10134231, closes #6167)
- fix sizer not shrinking when items reduce in number. (1771b29f, closes #4435)
- update deps to include showHide.. (b4ef3024, closes #4435)
<a name"1.0.0-rc6">
1.0.0-rc6 (2015-12-02)
Added accessibility support to select
, menu
, and toast
.
Added a tips
documents section for layout issues and added some layout warnings for IE.
Detect ng-touch
usages and provide integration warnings regarding interference of ng-touch
with $mdGestures
Breaking Changes
- Added breakpoints:
xs
, gt-xs
, xl
per Material Design spec. Breakpoints sm
and gt-sm
have changed.
Bug Fixes
- core: detect incompatible ngTouch usages
- chips: Fix readonly padding issue. (5d34eff3, closes #2829)
- datepicker:
- fix not closing on body-click on iOS Safari. Fixes (5a56a881)
- improve error state updating. (d5b72dfe, closes #5315)
- dialog: trap focus within dialog.. (fbb1192a, closes #4105)
- input:
- fixes alignment between datepicker and other input elements (08b5af5b, closes #5936)
- has-icon overwriting should have higher css priority as normal label without an (6cac7daa, closes #6005, #6013)
- layout: allow layout-align without cross-axis or main-axis value (6b1d7586, closes #5996, #6003)
- layouts: register Layout directives for xs, gt-xs, xl (2a1de83b, closes #5995, #5983, #6037)
- list:
- menu: improve aria compliance (097b799d, closes #4415)
- radioButton: fixes focus color for md-primary and md-warn (16934336, closes #4487)
- select:
- tabs: shift+tab will now work properly when focus is on tabs (86edea49, closes #4696)
- toast:
<a name"1.0.0-rc5">
1.0.0-rc5 (2015-11-25)
Features
Breaking Changes
- default for
layout-align
is start stretch
(for main and cross-axis respectively)
- no longer removes Layout attributes from DOM elements
md-toast
now uses textContent
instead of content
- content
is deprecated
Bug Fixes
- autocomplete:
- fixes autocomplete height when near the bottom of the page (c667b549, closes #5209)
- fixes height issue on
md-not-found
message (f1dcaf96, closes #5305)
- should now properly support
ng-disabled
(2ab1d2d9, closes #4999)
- datepicker:
- prevent calendar pane being in wrong position after body scrolling is disabled. (a899c5b4, closes #5201, #5918)
- correctly position datepicker inside dialogs. Fixes (d423a656)
- dialog: removed no dialog actions warning (75a565e8, closes #5767, #5774)
- input:
- layouts:
- support layout-align start and stretch (d24cf25b, closes #5509, #5249)
- do NOT remove layout attributes after className generation (7cb035d9)
- list:
- mdUtil: disableBodyScroll no longer scrolls page to top in IE (badc1ef1, closes #4640, #5334, #3627)
- progressCircular:
- radio: no longer prevents events from nested elements (7a87ddad, closes #2960)
- select:
- reduce overly agressive truncation (8051e980)
- fix select label not updating on option model changes (4f3c5d91, closes #3052, #3909)
- select no longer overflows window, resizes from small to big correctly (ee4ab189, closes #5291)
- fix IE 11 select not growing (4306331c)
- tabs:
- toast: switch
content
to textContent
to unify w/ dialog. Deprecate content
(1eeafee4)
- toolbar: add support in scrollshrink to ngshow/hide (eb94d640, closes #5706, #5863)
- tooltip: tooltip sometimes not hidden after element is disabled. (7920dba1, closes #5912)
- util: added toUpperCase to nodeName (6260a769, closes #5609, #5771)
<a name"1.0.0-rc4">
1.0.0-rc4 (2015-11-13)
Features
Breaking Changes
- Dialog presets for
alert
and confirm
no longer have a content
option. There is now textContent
and htmlContent
. In order to use htmlContent
you must load the ngSanitize
module. HTML will not be compiled as an Angular template to prevent XSS attack vectors.
Bug Fixes
- autocomplete: adjusts dropdown position for standard input style (44d1636b, closes #5558, #5680)
- datepicker: icon jumping upon open/close. (e73c560b, closes #4570, #5703)
- dialog: break
content
into textContent
and htmlContent
to help keep users from acc (6a564508)
- input:
- mdMenu: fix attempting to close non-existant nested menus (6bf98aa6)
- menu:
- all menus no longer self destruct when one is destroyed (667a05ff, closes #5395)
- fix divider disappearing on scrolling menu (3ab6aa35, closes #5081)
- menu items are not aligned in Microsoft Edge (818652d4, closes #3987, #5487)
- ripple: Fix failing spec. (fe84405d)
- select:
- disabled option no longer reacting to hover and closing on click (ab0ffc4d, closes #4967, #5619)
- fix floating label not rendering until focus (a3a0f48c, closes #5566)
- fix auto-complete element not being removed from form (2760f67e, closes #5575)
- toast: added position relative to toast parent (617ab2c8, closes #4542, #5660)
<a name"1.0.0-rc3">
1.0.0-rc3 (2015-11-06)
Features
- datepicker: predicate function to allow fine-grained control over pickable dates (9522148b, closes #4538, #5475)
- ripple: ink-ripple is now getting an interpolated value (fbcc3acc, closes #5438, #5580)
Breaking Changes
- Buttons with undefined
type
will have type="button" assigned, so forms may not submit as previously expected.
Before:
<button class="md-button" ng-transclude>
will become
<button type="button" class="md-button" ng-transclude>
Fixes #3127. Closes #5468.
(747ef826)
md-on-append
has been renamed/deprecated in favor of
md-transform-chip
or the simple notifier md-on-add
.
We expect to remove this completely in 1.0, so please update
your code to use one of the new methods.
Fixes #4666. Fixes #4193. Fixes #4412. Fixes #4863. Closes #5497. Closes #3816.
(d69d6d0b)
- adding actions to
md-card
is now done through <md-card-actions>
rather than <div class=”md-actions”>
- adding actions to
md-dialog
is now done through <md-dialog-actions>
rather than <div class=”md-actions”>
Bug Fixes
- autocomplete:
- button: set color of disabled button to highest css priority. (ce2f28d0, closes #5569, #5574)
- card: now md-card-actions (f8c003c3)
- components: fix issue with removeClass removing previous classes (bd65bf74, closes #5538)
- datepicker:
- apply ngMessages errors when using text input. Fixes (3c9ba380)
- throw error if model is not a Date. For #5266 (71976be8)
- throw error if inside md-input-container. For #5055 (5004a2a6)
- properly set ngModel validity. (b4d77330, closes #4926)
- dialog: now md-dialog-actions (bf08e179)
- fab: Remove transition for fabs on ng-hide. (e778cdd4, closes #5235)
- input:
- ngMessages will no longer cause layout to change on animation (faa8b5b7)
- fixes input height in IE11 (ee98b70f)
- layouts: removeAttr RTE on comment nodes (6879c6f4)
- lists: Fix alignment of secondary icons/controls. (3b835ca6, closes #3699, #5533)
- mdUtil: fix disable scroll adding extra scroll-bars on IE (d59bd5e7, closes #5300)
- menu-bar: fix sibling nested opening and closing incorrectly (ead4d022, closes #5119)
- menubar: fix RTE with close dialogs invoked from menubar (5c129be4, closes #5476)
- progressLinear: Remove extra semi-colon from SCSS. (06c60af4, closes #5260)
- ripple:
- select:
- fix escape closing dialogs when used inside select (f31d2552)
- fix ng-change over firing when using trackBy (41671e2d, closes #4118)
- ngModel.$touched trigger after menu close (0917523d, closes #5256)
- allow circular references (cba5fa72, closes #5330)
- sidenav: Notify other close events like datepicker-close too (2a76887c, closes #5522, #5528)
- subheader: Remove 16px right margin. (bb839317, closes #4389, #708, #4419)
- tabs:
- fix positioning absolute/fixed elements inside md-tab-content (65e15bf4, closes #4613)
- icons in tab labels should match the text color (fcd199ea, closes #5465)
- toolbar button: Fix color of raised buttons. (0690e1b6, closes #4845, #5562)
- virtual-repeat: Prevent nested calls to virtualRepeatUpdate_ (821d1a34, closes #4950, #5009)
- virtualRepeat: Add ability for container to resize after creation (d6d7b084, closes #5561)
<a name"1.0.0-rc2">
1.0.0-rc2 (2015-10-29)
Breaking Changes
- layout:
flex=34
and flex=67
are no longer supported; use flex=33
and flex=66
for 1/3 and 2/3 sizing respectively
layout-margin
and layout-padding
styles will apply to all children of layout=row
and layout=column
- backdrop: when backdrop parent is the body, backdrop will use
position: fixed
- input: form elements will now have an external
display
value of inline-block
Bug Fixes
- autocomplete: clicking on the scrollbar will no longer close dropdown (309cef5d, closes #4785, #4625)
- backdrop: use fixed position for global backdrops. (a8537e63, closes #2831)
- dialog: make sure dialog only destroys itself. (e8cfce2e, closes #5157)
- layout:
- layout-margin and layout-padding fixes for child containers (4649b93b, closes #5425)
- fix wrapping and filling layouts to 100% using flex-33 or flex-66 (a4a4a45b, closes #5346, #5348)
- md-chips: appendChip disallows identical objects (03db13d8, closes #4466, #4479)
- mdChips: Autocomplete styling is incorrect. (3bf6eb38, closes #4600, #4621)
- speedDial:
- tabs: will no longer jump to top when changing tabs with
md-dynamic-height
(4205be7d, closes #4281)
<a name"1.0.0-rc1">
1.0.0-rc1 (2015-10-21)
This is the first release candidate for our 1.0 beta. We believe that the API is complete and are working towards closing out remaining bugs.
Features
Bug Fixes
- autocomplete:
- adjusts vertical offset of dropdown to account for ngMessages in floating label (ae00a7fd)
- fixed integration with dialog (1df38df7, closes #3979, #5154)
- datepicker: fix theme not being applied. (f20a6354, closes #5141)
- dialog: Provide option to not autowrap templates. (87d62300, closes #4898, #5237)
- divider: Fix stlying for md-divider inside md-list-item. (5218c18b, closes #3021, #5058)
- layout:
- Prevent class overriding when lastClass is null (9025f4de, closes #5257)
- standalone layout css flex-grow and flex-shrink updated (7b8acac1)
- provide missing SCSS variables for standalone Layout css (f966d0f9)
- fix flew-grow and flex-shrink values for flex-xx='xx' markup (9f704302)
- list:
- restore ui-sref and href support on md-list-item (f8a8b3c5, closes #2131)
- adds support for
data-ng-click
in place of ng-click
for buttons (2ecbb8f7, closes #3374)
- md-slider: set step property relative to min (441cbf11, closes #4403, #4385)
- mdCard: Content padding not showing in IE 10. (57bd0c64, closes #2974, #5120)
- select: do not let empty arrays satisfy required on multiple select (9f561a56, closes #4604)
- tabs: fix tab paging and sizing on IE11 when tabs are in a dialog (5034a044, closes #3953, #5096)
- tooltip: corrected md-tooltip positioning when scrolled (f62f6934, closes #2406, #5161)
<a name"0.11.4">
0.11.4 (2015-10-13)
Bug Fixes
- input: fix border-bottom transparency (5da3c456, closes #5128)
- list: ng-click changes item width in IE (9b918cbc, closes #3708)
- mdCard: Fix card image height in IE. (f54275ad, closes #761)
- theming: no longer apply md-default-theme class to unnested themable elements (5eb94a55, closes #4846)
Breaking Changes
- theming no longer apply md-default-theme class to unnested themable elements
<a name"0.11.3">
0.11.3 (2015-10-12)
Features
Breaking Changes
Material Layout attribute offset
should now be flex-offset
.
Change your code from this:
<md-content flex offset-gt-sm="33" > ... </div>
To this:
<md-content flex flex-offset-gt-sm="33" > ... </div>
(ad1b78bf)
Bug Fixes
- autocomplete:
- adds tabindex support for autocomplete (b4e6354e, closes #2113)
- Fix many issues with showing/hiding. (74297007, closes #4665, #4788, #4906, #4855, #4618, #4469, #4025, #4958)
- prevents scrollbar from displaying unnecessarily (9dd2e354, closes #4308)
- resolves issue with not-found message displaying unnecessarily (281bc521)
- button: Fix button height in Firefox. (aaa89093, closes #3291)
- card: position md-card-footer at bottom of card (156605b8, closes #3144, #4891)
- chips: do not display broken image when no image is provided (315ea48e, closes #4851)
- dialog:
- fabSpeedDial: Make hovering an option via CSS. (bbbc475c, closes #4259, #4847)
- gridList:
- icon:
- Update demo fonts from 21px to 24px. (3f9fce09, closes #4569, #4799)
- adds check for
el
before checking its tagName
(43264909)
- Fix bug that prevented custom default fontset from being applied. (b24f55fa, closes #4349, #4829)
- input:
- inputs: Fix floating label and char counter positions. (db99d5ac, closes #4872, #4915)
- interimElement: Removed unnecessary resolve fallback values (eae9eead, closes #4094, #4150, #4982)
- layout:
- disable
offset
directive (af45a22d)
- deprecate
offset
attribute in lieu of flex-offset
(ad1b78bf)
- Fix IE align-items: center issue. (1aa95f98, closes #5089)
- interpolated values, validations, test & CSS fixes (2478f1d2, closes #5076, #5054, #4994, #4959, #4902, #2954, #5014, #5090)
- mdListItem: Fixed integration with checkbox and added icon avatar (88952d6c, closes #3784, #3186, #5054)
- tabs:
- overrides icon color when used within tab label (3bc36688, closes #3879)
- fixes
md-stretch-tabs
functionality (3c7f9faa, closes #5048)
- adds proper detection for bodyless tabs (054c066b, closes #4120)
- fixes tab sizing issues with and without pagination (ed80df79, closes #4065, #4834, #4873)
- inkbar is now visible in Firefox when using centered tabs (bb8fd26d, closes #4367)
- tabs now work properly with
md-dynamic-height
and md-align-tabs="bottom"
(01b7af30, closes #4368)
- toast.scss: Change height to defined for IE11 (8cc6b848, closes #4946, #5057)
<a name"0.11.2">
0.11.2 (2015-10-01)
Bug Fixes
- checkbox: prevent ng-click firing on didabled checkboxes. Fixes (1cae87c2)
- datepicker: stop calendar going off-screen if body is scrollable.. (3c876c1b, closes #4781)
- layout:
- add border-box style to to all
.flex
variants (b1974bb0)
- resolve minify bug with flex css (b1fb32c7)
- conflict with [flex='initial'] (f636bcc8)
- improve logic for
layout > flex
specificities (77c050ae)
- improved css specificity for layout (381a0baf)
- select:
- sidenav: resolve jQuery conflict with handler (1a61e2ea, closes #4876)
<a name"0.11.1">
0.11.1 (2015-09-25)
This release resolves many issues and include the following notable changes:
- Fixes to support browser navigation (or $location changes)
- properly close Menu, Select, Dialog, Bottomsheet, and Toast components in open states.
- Dialog components enhanced
- support adding dialog custom CSS
- dialog resizing as the browser window resize
- auto closes during navigation changes
- Layout (flexbox) features have been improved with
- a smaller CSS footprint,
- better support for media triggers,
- improved specificity for hide- and show- flags
- Fixes media trigger
.layout-<xxx>-row
and .layout-<xxx>-column
layouts
- Add support for to observe and interpolate Layout Attribute values
- Allow flex-order to be negative
- apply flexbox workarounds per Flexbox Workarounds: use flex longhand notations with workarounds
- add support for flex="1", flex="auto", and flex
- add references to online specs/resources
- fix flex-33 and flex-67 max-width and max-heights
- fix layout-align to use max-width
- A consistent API is now provided for flushing animation states during testing.
- CI testing now performs sandbox testing for Angular 1.3.x, 1.4.x, and 1.5.x.
Developers are requested to always test with the latest versions. And any CodePens provided in issue reports should use:
- Angular Material HEAD (0.11.1 or greater)
- AngularJS Latest Release versions:
- Angular 1.3.19 (or greater)
- Angular 1.4.6 (or greater).
Features
- datepicker:
- dialog: allow specifying parent by string selector. support to add dialog custom CSS and dialog resizing as the browser window resize. (5551699c)
- layout: support to disable attribute translation to class notations. restore max-width for layouts (bf77109c)
- input: Add support for both labels and placeholders. (b5dd1507, closes #4462, #4258, #4623)
Bug Fixes
- autocomplete: re-adds support for custom item names in autocomplete templates (8849213c, closes #4667)
- codepen: improve use of external css (cdcf31d6)
- dateLocale: guard for setting midnight to null. (65abc82c, closes #4780)
- datepicker:
- prevent calendar clipping on small screens. For #4558 (64fb8037)
- ngModel updates for empty input. (416dc4c0, closes #4643, #4648)
- make dark theme picker not terrible. (e80c6214, closes #4614)
- handle DST incocnsistency encountered in some timezones.. (562e41a6, closes #4215)
- dialog:
- resolves issue where dialog templates were displaying HTML as text (ea9890f1)
- resize top and height on window resize (3e34e021, closes #4513)
- incorrect dialog placement if page is scrolled (1fc76229, closes #4115)
- fabSpeedDial: remove keyboard handlers on scope destroy (3516a85b, closes #4681)
- general: common disabled behavior for switch/slider/select. (86d876bf, closes #3797, #4654)
- gridlist: improve getTileStyle() to use rowCount (0853f2c8, closes #2741)
- input:
- interimElement:
- layout:
- prevents missing body error in unit tests (c3a2adaa)
- resolve incorrect and duplicate layout tests (5d9f9607, closes #4740)
- restrict directives to attributes only (e8b60de9)
- device size attributes should not set max-width or max-height (8b210c38)
- list:
- listItem: fix menu triggering proxy elements (c7ff50ca, closes #4303)
- menu:
- ripple: ripple will no longer be triggered on disabled elements (313342cf, closes #5445)
- select:
- multiple no longer sets form to $dirty (09bd5a3b, closes #3933)
- fix undefined class on select container (5ca0b2b6, closes #4184)
- fix options not closing with explicit md-select-label (3c0d21ef, closes #4387)
- sidenav: binds remove function to prevent errors (5346de47)
- switch: inverted logic in md-switch dragging (316b4c82, closes #4549, #4560)
- tabs: addresses potential
$digest already in progress
error (4a16038b, closes #4743)
- theme: input placeholder color style fixed for Chrome (85dceef4, closes #4162)
- tooltip:
- util: improve parse logic in supplant() (81b633c1, closes #4511)
- utils: extractElementByName() and findFocusTarget() logic improved (a5d84c37, closes #4532, #4497)
- virtualRepeat: prevents digest if digest is already in progress (acbf293d)
- whiteframe: working with dp insted of z-index (b37ac3ad, closes #4706)
<a name"0.11.0-rc2">
0.11.0 (2015-09-08)
This release includes all changes from RC1 and RC2.
<a name"0.11.0-rc2">
0.11.0-rc2 (2015-09-03)
This release is comprised of 1 major effort:
- Performance and API improvements for ProgressLinear and ProgressCircular
Features
- progressCircular: css reduction with js animations (b1f7dc41)
- progressLinear, progressCircular sync logic, fix linear animations, performance upgrades (d74f93a84)
- synchronize progressLinear with similar logic used in progressCircular.
- improve animation performances
- watch md-mode for changes
- refactor animation SCSS
- enable hiding and no-animations with undefined/empty md-mode attributes
- for both indicators, use
display:block;
- update demos with enable switch
- fix query mode
- update Select to use enhanced progressCircular component
- fix autocomplete styling of progress-linear.md-mode-indeterminate
- auto-inject md-mode attribute if missing
- use 'determinate' if value attribute is defined
- otherwise use 'indeterminate'
- $log.debug() notify user (via $log.debug) of injection
- add API doc details regarding md-mode auto-injection
- fix tests
Fixes #4421. Fixes #4409. Fixes #2540. Fixes #2364. Fixes #1926. Fixes #3802. Closes #4454.
Breaking Changes
- progressLinear and progressCircular indicators explicitly set
display
and position
styles
Before:
md-progress-linear {
display: block;
}
md-progress-circular {
// display not set
// position not set
}
md-progress-linear {
display: block;
position: relative;
}
md-progress-circular {
display: block;
position: relative;
}
Bug Fixes
- dialog:
- allow Confirm dialogs to have empty/undefined content (ffbcff39, closes #4429)
- gesture: fix overzealous preventDefault on label+input clicks. (912bcefd, closes #4110, #4110, #4223)
- mdSubheader: Non top-level md-content causes incorrect position. (391479b0, closes #4420, #4439)
- mdToolbar:
- ripple:
- fixes ripple when jQuery is loaded (4e048ff8, closes #4375)
- fixes js error on button click for date picker (be4311ac)
<a name"0.11.0-rc1">
0.11.0-rc1 (2015-09-01)
This release is comprised of three major efforts:
- Release of new components: DatePicker and MenuBar
- Performance improvements to Layout and use of Flexbox
- Performance improvements to Ripple
Features
- calendar:
- Add date completion detection (d6457e27)
- more fine-tuned a11y (c3bf8400)
- cleanup and i18n (0e8be31e)
- Add metaKey keyboard shortcuts (733431b4)
- change coors to be in terms of the theme (78f8eea0)
- improve datepicker css (56df8d51)
- add clickable arrow button and placeholder (c9a23242)
- add calendar icon and associated styles (24ae0fa3)
- implement virtual scrolling in calendar (34eb48cf)
- fix up $$mdDateLocaleProvider and use in calendar. (36eae116)
- starting work for date-picker. (b158d15b)
- fix up $$mdDateLocaleProvider and use in calendar. (b789eef8)
- starting work for date-picker. (7b70d74e)
- fix up $$mdDateLocaleProvider and use in calendar. (f3457b86)
- starting work for date-picker. (9b0b861e)
- chips: Add
md-on-remove
attribute. (7037b394, closes #3190)
- contactChips: Add md-highlight-flags support. (00474c39, closes #3182, #4278)
- datepicker:
- Add min/max dates in datepicker (cecba236, closes #4158, #4306)
- Add theme color and border width on focused datepicker (1fcd0179)
- Debounce datepicker input element event (5d088d3a)
- Add invalid class for datepicker (40c7a8f5)
- add docs with usage for $mdDateLocale (bd4dc668)
- add documentation for datepicker (4211d212)
- a11y experimentation (1400d25e)
- fixes for a11y (6480d710)
- opening animation and better shadow (a1844f71)
- change colors to theme (26dbbf8b)
- floating calendar panel for date picker. (e6b1d239)
- binding for the date-picker (cc10fa94)
- floating calendar panel for date picker. (a324e66c)
- floating calendar panel for date picker. (b1f6e1a0)
- binding for the date-picker (8a8824a1)
- mdChips: Add
md-on-select
expression support. (333984f2, closes #4088)
- mdToolbar: Vary height depending upon device width/orientation. (b6e10989, closes #2047, #4161)
- menuBar: add menu bar component (d9ba0e13, closes #78)
- theming: add hue-specific contrast support (c4f9f504)
- virtualRepeat: Infinite scroll and deferred data loading (d68b4f6f, closes #4002)
Breaking Changes
Layout (flex, layout, etc) use Class selectors instead of Attribute selectors
Backdrop animates opacity instead of background-color
Menu button ripples inherit border-radius.
ProgressCircular uses class selectors instead of attribute selectors
Ripples are completely rewritten
modify scope of box-sizing: border-box
to be specific to only to elements owned by ngMaterial.
Before:
*,*:before,*:after {
box-sizing: border-box;
}
.md-container { }
After
.md-container {
box-sizing: border-box;
}
Refs #3516. Closes #4222
(fbb6b28c)
- dialog content text is now injected into div.md-dialog-content-body
Before the template used was:
<md-dialog-content>
<h2></h2>
<p></p>
</md-dialog-content>
Now uses:
<md-dialog-content>
<h2></h2>
<div class="md-dialog-content-body">
<p></p>
</div>
</md-dialog-content>
Fixes #1495.
(81e94b4f)
Bug Fixes
- autocomplete: not found message no longer gets stuck (f2e6b162, closes #4309)
- build:
- lock CI tests to use Angular 1.4.4 (8157dece)
- correct detection and generation ngMaterial module definition (d85e14af)
- parse module definitions for material only or general (e4ca61f0)
- buildNgMaterialDefinition RegExp updated (391cff58, closes #4305)
- calendar:
- ensure all instances are removed from DOM after tests. (e314072e)
- Update ngModel instead of ctrl.date on input change (36d355a9)
- fix broken unit tests (b60bd35c)
- fix incorrect angular.bind use (70467da3)
- remove non-working VoiceOver fix hack (a22b002b)
- clean-up code after a11y experiments (0777cd98)
- fix voiceover scrolling already-scrolled calendar. (db3d06e9)
- fix broken unit tests for component rename and focus changes. (a3786ce7)
- fix focus behavior on open (fa7b3830)
- add remaining missing tests for dateUtil (8443fd5a)
- Make calendar directive IDs unique (406ffe6a)
- Make calendar directive IDs unique (cde67d61)
- add remaining missing tests for dateUtil (7fe79319)
- chips:
- Fix styling issues with padding & remove. (af3ef522, closes #4264, #3276, #2410, #4275)
- interaction with Autocomplete (86db4db9, closes #3475, #4108)
- item name in autcomplete (dc5357de, closes #4109, #4111)
- cursor style on static chips (6726eca9, closes #3253, #4114)
- adjust chips css. (565b7b46, closes #3402, #4117)
- hide remove button on custom template when readonly (3fdb3140, closes #3697, #4090)
- css: remove styles that could apply to user-controlled elements. (fbb6b28c, closes #4222)
- datepicker:
- fix bad valid date check and resize-on-open. (1fb8ab5a, closes #4270)
- update input size and invalid class on calendar click (18458b74, closes #4262)
- fix error w/ null date model value. (bafbacb3, closes #4232)
- add missing type="button" and check for pane being in the DOM before removing. a (314a05df, closes #4214)
- fix oblong open button. (db815dba)
- fix ngDisabled not working with jQuery. (51436568)
- prevent scrolling while calendar pane is open. (e6053736)
- fix pane position when pinch-zoomed (1e28d521)
- dialog:
- improve support for template and templateUrl options (22c34bad, closes #3191, #4206)
- enable support for html content for alert and confirm dialogs (81e94b4f, closes #1495)
- docs: Build on Windows results in broken docs site (35ce9b8f, closes #4226, #4227)
- fabSpeedDial: support all ng-repeat variants, fix CSS height (17676e6f, closes #3632, #3370, #3796, #4006)
- fabToolbar:
- font: use Roboto font instead of RobotoDraft (aa7f83aa, closes #4063, #4064)
- gesture: fix overzealous preventDefault on label+input clicks. (912bcefd, closes #4110, #4110, #4223)
- icon:
- Log network errors without throwing exceptions. (e2a8f292, closes #2530, #3718)
- don't guard adding icon class on presence of class attr. (1daa8bce)
- input: fix bad label initialization when using static value. Fixes (f98e8514)
- layout: corrections to
material.core.layout
module and tests (46b5500c)
- md-month: fix overwriting offset for initial months. (3598e6d9)
- mdBottomSheet: Enable touch interaction on mobile devices (1a90a727, closes #4327)
- mdChips:
- Backspace key and custom input focus/blur. (703f2c8a, closes #3562, #3960, #2607, #4359)
- Fix error with audocomplete inside readonly chips and allow usage inside ng-repe (3e8c9945, closes #2841, #3482, #4133)
- Run duplicate check after mdOnAppend. (44ab0722, closes #2748, #4113)
- Allow custom $interpolate start/end symbols. (6fd31c9a, closes #2958, #4136)
- mdSelect:
- mdToolbar: Allow md-scroll-shrink usage with ng-if. (9b861fdb, closes #2751, #4394)
- progressCircular: css reduction with js animations (b1f7dc41)
- ripple:
- fixes ripple when jQuery is loaded (4e048ff8, closes #4375)
- fixes js error on button click for date picker (be4311ac)
- select:
- sidenav: add valid transition to close animations (e26a2754, closes #3576)
- slider: Update CSS to better conform to spec. (7fd8b098, closes #2427)
- sticky: improve onScroll logic (40e5469d)
- subheader:
- tabs: Fix 0-height animation on iOS devices. (9ac7496e, closes #4339, #4341)
- tooltip: Fix md-tooltip showing when window receives focus (954cab5e, closes #3035, #4191)
- virtualRepeat: Virtual repeat starting off empty #3807 (38f2c35d, closes #4112, #3807)
<a name"0.10.1">
0.10.1 (2015-08-11)
Features
- autocomplete:
- adds
md-input-id
to allow the user to provide a custom ID for autocomplete inp (9931e2a8, closes #3481)
- adds a new attribute option
md-select-on-match
(d16d2b66, closes #3324, #3825)
- Add promise support to md-item-text (7430e687)
- menu: do not propagate event in mdOpenMenu (b8045df5, closes #3296, #3332)
- select:
- tabs: setting
md-selected
to -1
will allow md-tabs
to function without forcing a (27783df9, closes #3172)
- virtualRepeat:
- Add md-auto-shrink and md-auto-shrink-min (79dcbf73, closes #3536)
- add md-start-index attribute. (9a045fb7)
- allow for scrolling areas larger than the browser's maximum element size. (98e91ae2)
Breaking Changes
input: change min-height
for textarea to one row
(and remove extra padding space); set rows=1
since it defaults to 2
(2132cd29)
css: media queries for sm
, lg
, and md
have
modified max-width
values
(51dbd402)
button: md-button
class now uses display:
inline-block
instead of display: flex
; removes associated flexbox
styles
(fd331c87)
dialog: changes classes transition-in
and
transition-out
to md-transition-in
and md-transition-out
(4210ade7)
md-select-label
has been removed. Users must use
md-input-container
and label
going forward.
(712bc721)
Bug Fixes
- ** sidenav:** corrected use of internal $toggleOpen() (6f72befb)
- $mdConstant: fix overlapping in media-queries (61a0e539, closes #3423, #3451)
- autocomplete:
- hitting escape once again clears the search text (99e8e2c2, closes #3847)
- re-adds
preventDefault
calls to keydown event (d52e9c29)
- keyboard input used by autocomplete will now call
$event.stopPropagation()
to (2781eac5, closes #2931)
- promises that resolve immediately will work properly (b316bba9, closes #3117)
- changing windows while typing (with no results) no longer breaks scrolling (c0659cc8, closes #3546)
- addresses bug with AngularJS 1.4.1 (a52c943a, closes #3637)
- fixes z-index issues with autocomplete menu (d75b5924)
- tests wait for promises to complete now (9990e618, closes #2462, #2710)
- fixes infinite digest issue in IE11 (f5959cc2, closes #3101)
- selecting an item while loading will now hide the progress bar (7314e12d, closes #3478)
- ngMessages should once again work with mdAutocomplete (2ccbc9da, closes #3401)
- fixes issue in Firefox/Linux where textChange is not a function (1be46cb9)
- backdrop:
- use absolute positioning and anchors (87bdf36a)
- set css
position: fixed
to md-backdrop
(4011df9c)
- build: reset to using Angular v1.3.15 until animation issues resolve (17490baf)
- button:
- chips:
- prevents unnecessary ellipsis in chips (7fed14eb, closes #2688)
- prevents styling issues caused by extremely long text (e9b4de54, closes #3523)
- makes sure that input is cleared when selecting a chip (ee1fed19, closes #3575)
- compiler:
- css:
- global page style improvements for min-height and text (76cfd706)
- stop using @extend for rules in a different module. (fb7b9b39, closes #3400)
- demo: button needs layout-wrap attribute (0d6e5acb, closes #3687)
- dialog:
- adds logic to account for image load delays that could impact content height (3aab9e4e)
- set css
position: fixed
to .md-dialog-container
(01859080)
- autoclose fixed and close animation shrinks to originating element poisition. (94341209, closes #3555, #3541, #2479)
- switch dialog to use disableScroll, fix focus trap (862444a8, closes #2443)
- disableScroll:
- fix z-index getting set too large (44fda3d7, closes #3501)
- fix disable scroll breaking layout for fixed page layouts (ddfe5230)
- fix disable scroll creating scrollbar when none existed (7fe482cf)
- fix scroll mask z-index blocking backdrops (b4eac137, closes #3283, #3269, #3245)
- docs: style tables w/ css class instead of element. (605cd94a)
- fabActions: corrected use of postLink (f91a3845)
- fabSpeedDial:
- ng-hide, ng-repeat, animation bug (5e3a651f, closes #3313, #3224, #3349, #3600)
- fix many visual issues (288285c4, closes #3213, #3338, #3277, #3236, #3375, #3468)
- fabToolbar: fail gracefully if no icon used in trigger (5d2bcbf9, closes #3223, #3601)
- highlightText: changes to the template data will update the generated HTML (eda47822, closes #3550)
- icon: when specified, the defaultFontSet class should be used. (f5a9101a)
- icons: improve use of material-icons style (dab30b34, closes #3333)
- input: textarea with rows provided will no longer throw an error (e38a2c82)
- interimElement:
- layout: explicitly adds webkit prefix for safari (778af934)
- mdTooltip: fix regression that broke tooltips on Firefox (6fc9212c, closes #3047, #3250, #3430, #3467)
- mdUtil: fix double scrollbar (7ed0af6b, closes #3382)
- menu:
- ensure menu button is type=button (d203d722, closes #3821)
- fix memory leak on component destroy (1a9a5300, closes #3775)
- cleanup click listeners on close (9b57c2ec)
- fix menu positioning when using display:none items (8609318f, closes #3444)
- fix scrolling menu always showing scrollbar (86e9bf0d)
- make menu close with ui-sref and ng-href (dc011491, closes #3397)
- menu not closing with clicks that disable element (c7c7180a, closes #3288)
- fix potential scoping issues on mdMenu (4a6cd566)
- fix error on clicking on menu container element (f94820e6, closes #3252, #3369)
- fix options with x-ng-click and data-ng-click not working (17f38b0b, closes #3258)
- prevents scrollbar from unnecessarily showing up on the body (5c08d5c9, closes #3266)
- ripple: fixes typo in ripple code (c93ba5c9)
- select:
- interimElement will resolve its promise even when transition end event is not fi (d6a938e9, closes #3704, #3780, #3800, #3794)
- restore ngModel functionality (86a4ca99, closes #3767)
- fix slight pixel miss-alignment on select open (2b423587, closes #3594)
- fix positioning when using option groups (d8d3e4ca)
- remove correct controller from formCtrl w/ name (ed6b45c7, closes #3062, #3671)
- fix select value not filling parent (14786283)
- fix duplicate keydown listeners after select shown (3e3eb9ef, closes #2616)
- fix cycle option focus after keyboard search (cc8850b3)
- fix select-menu width being incorrectly computed (18d8ae03)
- fix select-value label not filling select width (ba60122e)
- fix empty attribute for selected not selecting options (4f7af228, closes #2114)
- mdInputContainer not realizing select had value (1a8acd02)
- fix double label issue using placeholder in md-input-container (cbbb4b98)
- fix menu positioning inside fixed elements (044dbdc3)
- fix md-select with no placeholder outside of md-input-container (4be344bb, closes #3483)
- refresh optionNodes reference (05119a71, closes #2109)
- IE down arrow key error resolved (c183e9b4, closes #2109)
- make select popup inherit theming (691dd2fa, closes #2483)
- slider:
- check for invalid discrete step value (273fff4c, closes #3590)
- render issues with ticks that occur when parent elements are resized (5b0c256a, closes #1996, #2764)
- tabs:
- fixes size logic for centered tabs (5722449b)
- removes scope disconnect logic from tab templates (2976add7, closes #3692)
- theme palettes will no longer be inherited from parent elements (0667380d, closes #3150)
- fixes errors thrown when user-defined click events triggered their own digest cy (1b984ed6)
- internal scope will now be the same as external scope (c5c148df, closes #3300)
- prevents error when navigating away from tabs section while using Angular 1.4.x (31bb1210)
- focused item will once again scroll into view properly on focus (5616f48f)
- fixes
md-swipe-content
support (0982c76a, closes #3225)
md-center-tabs
should work now (aa1e47d3)
- limits the width of tabs to the width of
md-tab-canvas
(46ffa9eb, closes #3577)
- reduces the number of watchers by using bind-once syntax for non-changing items (6f63d708)
- properly sets initial styles for inkbar when using centered tabs (8ccf67e5)
- fixes
md-stretch-tabs
with one-way binding (cd3e8a1c, closes #3547)
- fixes
md-center-tabs
support with recent changes (4867e318, closes #3549)
- prevents an error from being thrown if an empty attribute
md-selected
is added (f5cd5a07, closes #3537)
- improves performance by reducing the number of digests caused by tabs (556be5fb)
- prevents error on empty tab list (3e7ff23c, closes #3264)
- tests:
- textarea: Start at a height of one line (52ca5e5a, closes #2953, #2154)
- theming: make theme inheritance not depend on DOM order (73b1df4b)
- toast:
- differentiate between hide action clicks and hide timeouts (285ac72d, closes #3745)
- replace cancel with hide on hideDelay (2b687133, closes #3558)
- util: fix timeouts in transitionEndPromise() (602f4904)
- utils: update for Angular 1.4.1 compatibility (7ca139af, closes #3315, #3325)
<a name"0.10.0">
0.10.0 (2015-06-15)
Features
- fabSpeedDial: adds fabSpeedDial component (e813dcdb)
- fabToolbar: adds fabToolbar component (30a53c30)
- menu: add a basic dropdown menu component (3f6b4af4, closes #3173)
- select: add mdOnClose expression eval event (d7bfc86f, closes #3217)
- tabs:
- replaces unnecessary watches with getter/setter syntax for improved performance (c806e8be)
- adds support for
md-autoselect
(8285e2d0)
Breaking Changes
Bug Fixes
- autocomplete:
- prevents an error when passing null instead of an array (afa213df)
- waits for screen to reposition on focus before locking scrolling (6bfc31ea, closes #2973)
- fixes typo in autocomplete mouseup method (67817713)
- locks scrolling while autocomplete menu is visible (deae957b, closes #2973)
- fixes issue where setting a min-length of 0 was not working (d3f65195)
- button: fixes style inconsistencies between
md-buttons
using a
and button
under th (cc07e63d, closes #2440)
- checkbox: adds ability to click links within checkbox (999e0da2, closes #852)
- icon: Change iconSize param to viewBoxSize. (f93e117a, closes #1679, #3123)
- icons: support for ngDirectives using compile phase (9521a1e0)
- mdMenu:
- radioButton: fixes potential theming bug due to CSS specificity (e8ec2b5e)
- select:
- tabs:
- programmatically changing tabs will now adjust pagination to show the selected t (6d45f104, closes #3139)
- calls on-select for the initially selected item (cc1d9d2b, closes #3169)
- fixes CSS to respect non-truthy values for
md-dynamic-height
(60197180, closes #3184)
- fixes centered tabs for Safari (25526864, closes #3198)
- nested tabs should now work properly when using md-tab-label and md-tab-body (e3e52c2c, closes #3206)
- fixes infinite digests bug in Firefox (781929d7)
- fixes issue with tab pagination in Angular 1.4 (4273f52b)
- theming: fixes bugs with progress circular and select theming (3ac50acc)
0.9.8 (2015-06-08)
Bug Fixes
- tabs:
- prevents tabs from shrinking when used with flexbox (dd041927, closes #3011)
- prevents select/deselect events from firing on destroy (1ba0686e)
0.9.8-rc1 (2015-06-05)
Features
- autocomplete: custom template demo (7d2deb7e, closes #2505)
- docs:
- icons: api changes for font-icons (498048dc)
- tabs:
- adds an opt-out option for disconnecting tab scopes (4c1bf4b6)
- makes swipe gestures on the content area opt-in (03d01e96, closes #2331)
- theming: reduce specificity of default-theme selectors (8468c600)
Breaking Changes
Bug Fixes
- add missing alt attribute to logo in docs (19ad66d1)
- autocomplete:
- selecting an item will hide the menu in IE11 (0c073d10, closes #2188, #3008)
- removes flicker of 'not found' message with async results (08532b40)
- adds cleanup step when autocomplete is destroyed (e3a82c92, closes #2624)
- fixes positioning of progress bar (85a75909, closes #3115)
- updates docs, removes
clear
button when using a floating label (86b4afab, closes #2727)
- selecting a value will now flag the form/input as
$dirty
(217cae1f, closes #2753)
- list: support empty list-item(s) (e9ad5491, closes #2649)
- slider:
- fix for attributes being ignored (07295879)
- increment the value properly when step is a decimal number (476d068c, closes #2015)
- styles: fixes theming specificy regarding border colors (264f043e)
- tabs: fixes continuous
$digest
bug in Firefox when using md-stretch-tabs
(5372710a, closes #3101)
- tooltip:
- moves tooltip to the $rootElement rather than body or md-content (32b0facc)
- tooltip will attach to the body rather than $rootElement (24ca2966)
0.9.7 (2015-06-01)
Features
- autocomplete: adds support for validation/ng-messages (1f0a8450, closes #2808, #2664)
- icons: add support for font-icons with ligatures and Material-Icon demos (a1074907, closes #3059)
Breaking Changes
- autocomplete:
name
attribute has been changed to input-name
to more clearly show its purpose
Bug Fixes
- autocomplete:
- only 2 messages will be displayed at any given time for autocomplete (6b4e95ce, closes #2785)
- prevents text from going under the
clear
button (73e03a70, closes #2193, #2578)
- prevents error on keydown when menu is hidden (a7dcfb6d, closes #2774)
- autocomplete will no longer show the dropdown on value changes when not focused (c3ec08d8, closes #2756)
- input: update disabled underline styles (8f2b2c68, closes #2870)
- progressLinear: rewrites animation for progress linear (1d478ebd, closes #2762)
- tabs:
- adds ui-sref/ng-href support to tabs (6c53d112, closes #2344)
- updating dynamic tab labels will now be reflected (8ac4fa1b)
- select/deselect events will now fire when a tab is removed but the index does no (5e47b52b, closes #2837)
- initial state will now scroll to selected tab (120c271b, closes #2838)
- toolbar: add h1 to toolbar tools headings (c100ef10)
- tooltip:
- pointer-events 'none' used properly with activate events (667e4c24)
- hide tooltip after mouseleave if focus is achieved through mousedown (e73d290c)
0.9.6 (2015-05-28)
Bug Fixes
- build: fixes bug where versions in 0.9.5 comments were wrong. (7a1ad41f)
- closure: fixes issue in core.js where multiple
goog.provide
lines were included
0.9.5 (2015-05-28)
Features
- accessibility: additional Windows high-contrast styles (37bc5b6f)
- button: md-icon-button to use round ripple (ab1e9e05)
- listItem: allow use of own md-buttons (0ef4b79f)
Breaking Changes
Removed attach(button|tab|checkbox|list)Behavior
in favor of composing an injectable ripple service specific to
your target. $mdInkRipple was too aware of how to configure
components. You now have access to $mdButtonInkRipple,
$mdTabInkRipple, $mdListInkRipple, $mdCheckboxInkRipple.
Change your code from this:
function MyService($mdInkRipple) {
$mdInkRipple.attachButtonBehavior(scope, element, options);
}
To this:
function MyService($mdButtonInkRipple) {
$mdButtonInkRipple.attach(scope, element, options);
}
- icons: Default size for
md-icon
has been changed from 28px
to 24px
tabs: Replaces pagination transition with transform
rather than left
for performance
(3b0f12e3)
Bug Fixes
- autocomplete:
- uses $attr to support
data-
prefixed attributes (1dc56a6c, closes #2798)
- resolves xss bug with autocomplete text highlighter (1538ebe9, closes #2901)
- pulls in text content as HTML to prevent it from being un-escaped (33ac259d)
- build:
- build will now update CHANGELOG in master (859ceb18)
- fixes issue where release tag doesn't match release branch (5f7b1e91)
- button: makes icon-buttons round for ripple and focus state (98025aaf)
- chips: removes box-shadow from inline autocomplete (bc407590)
- demo: use relative path to img src (175fd54d, closes #2916)
- docs:
- list: correctly proxy ng-disabled attrs (a25bc0ea)
- listItem: fix ng-enter having animation (41953d5a)
- md-icon: change icon size back to 24px (3b305a3d, closes #2992)
- minify: tabsDirective template function works when minified (c7ea4a78)
- select:
- respect id attributes if assigned (fc90fd31)
- label not updating after objects resolved via promise (74259976)
- subheader: theme is applied to sticky clone (e92686f0, closes #2779)
- tabs:
- re-adds disconnected scopes for tab content (e6f19d48)
- uses
ng-if
to remove inactive tabs once their animation is complete (8dcaea8a)
- replaces pagination transition with
transform
rather than left
for performan (a8ff2ad1)
- fix missing dependency (0b35c9b4, closes #2460)
- theming: remove bogus hue value from grey palette (0c28cee2)
- tooltip: use label instead of aria-describedby (198199c1)
0.9.4 (2015-05-15)
This interim release fixes an incorrect deployment of angular-material.js
; which added the Closure Library Namespace features using goog.provide()
. Only source in /modules/closure/**.js
should use this namespacing.
Features
Bug Fixes
- build: fixes issue where JS files were being generated with Closure code (ca940384), closes #2852)
0.9.3 (2015-05-14)
This release is also using enhanced scripting to automate the build and release processes. Releases will now also deploy versioned docs to http://github.com/angular/code.material.angularjs.org.
Bug Fixes
- update rems to pixels (08b89921)
- autocomplete: prevents
not found
message from displaying while results are loading (3d5bd948)
- build: enable build of component modules. (8a886d79)
- codepen:
- dialog:
- gesture: fix conflicts with Ionic (05788d24, closes #1528, #1528)
- list:
- tabs:
- corrects css bug with tab-data positioning (a8fd0f4d)
- reordering tabs should now work (5bc3f232)
- tests: performance improvements and fixes to jasmine testing (786b0ed3, closes #2800)
- toolbar: align last icon button to spec (f988255d, closes #2497)
- tooltip: update to spec, remove max-width (8c60d9c7, closes #656)
Features
0.9.0 (2015-05-04)
Features
- autocomplete: adds support for messages to be displayed when no results are found (e057e271, closes #2574, #1525)
Breaking Changes
- styles: removes global
line-height
and font-size
from html
and body
(666e3311)
- icons: namespaces built-in icons (539ec5e3)
- gridlist:
md-grid-tiles
must be direct children of md-grid-list
(5d9142ea)
Bug Fixes
- autocomplete:
- improves logic behind scrolling items into view on keyboard navigation (211a31ea, closes #2615)
- addresses issue where dropdown shows if there is an initial value (85846922, closes #2517)
- fixes positioning issue with clear button (1fcb79a6, closes #2593)
- button: disable warn and accent buttons (973c4d75, closes #2586)
- compiler: make bindToController vars available to instantiation fn (e414091a)
- dialog: makes sure that body is not more than 100% height when dialog is showing (6806f554)
- gridlist: noops layoutDelegate (2b6dd4dc, closes #2613)
- icons: namespaces built-in icons (539ec5e3)
- input:
- list: Do not ignore spaces in descendant textareas. (f737fb04)
- select:
- slider: adds box-sizing to fix slider ripple positioning (e982547b)
- styles: fixes rem syntax for negative values (2fef6cad)
- tabs:
- toolbar:
- prevents transition lag on ng-if/ng-hide/ng-show (544cb270, closes #2663)
- adds shadow when content moves under 'scroll shrink' toolbar (92ed4657)
- sets icon color to primary contrast color within toolbars (8ea0dc1d, closes #2622)
0.9.0-rc3 (2015-04-28)
Features
- autocomplete: allows tab or enter to select an item (59015b09)
- button: support angular-new-router ng-link (4b9dcab5, closes #2478)
- tooltip: Support hide-* show-* and user defined css using "display: none;" (08132848, closes #2386)
Breaking Changes
- content containers for
md-dialog
now require md-dialog-content
to be more flexible with child content containers. This is more consistent with md-card
, which uses md-card-content
. (9dc62403)
- md-input-containers no longer allow both label and placeholder to be used simultaneously. Now the placeholder value (if present) is transcluded as a label or ignored. When the placeholder value is ignored, a warning will be logged. (d931c0d2)
Bug Fixes
- autocomplete:
- adds support for the new
$animate.pin()
in `ng-animate@1.4.0-rc.1` (790ccca6)
- adds watcher for ngDisabled rather than 2-way binding (973a2fca, closes #2160)
- allow undefined
searchText
and selectedItem
(8fb60c34, closes #2515)
- fixes issue where autocomplete suggestions were not hiding (da0a4f06)
- fixes bug that prevented autocomplete results from displaying on focus if min-le (5e72bb3d)
- bottomsheet: fix button styles (7bd97acc)
- build:
- adds missing quotes for closure build (041ffe94)
- adds method that was missing from previous update (77420942)
- button:
- card: md-action-bar renamed to .md-actions (5610dc98, closes #2472)
- chips:
- fix $apply already in progress (daf680f0, closes #2458)
- removes flicker when switching selected chip (55fa76a0)
- demo: fix list demo secondary action. (7e5d5e34, closes #2471)
- dialog:
- docs: fix doc app toolbar breadcrumb when using back button (58f2c481, closes #2464)
- gridlist: Tile ordering improved (5d9142ea, closes #2553, #NaN)
- highlight: adds missing characters to sanitize method (ef0dce07, closes #2292)
- icon: rem sizes, line-height for font icons (860d1f67, closes #2597)
- input: improve layout when md-input-container has nested md-icon. (2dbe6a97, closes #2452)
- interimElement: fix default parent grabbing svg body (952d5f50)
- list:
- prevents error when there are no child elements (f66e4718)
- fixes line-height issues with list items and checkboxes/icons/switches (4b045b58)
- fixes checkbox styles for list items (6a0b7015)
- mdUtil:
- move comment nodes as well when reenabling scroll (6a5a6a77, closes #2592)
- move comment nodes as well when disabling scroll (160df4cf, closes #2456)
- select:
- add support for non-scrolling md-content (88612d65)
- fix window resize listeners breaking after select shown (7c74050f)
- fix error when removing node on route change (9d761878)
- tabs:
- select/deselect methods will now be called in the proper scope (02a4af56, closes #2489)
- removes top border radius when tabs immediately follows md-toolbar (6372111c, closes #2394)
- fixes styles for Firefox (6996edd3, closes #2543)
- tests: support for Angular 1.4 and improved use of angular-mocks. (48ee9867)
0.9.0-rc2 (2015-04-20)
This RC2 release contains more polish and bug fixes to stabilize performance, layout, and improve the UX for Chips, List, Select, and Tabs.
Features
- chips:
- allows user to require a matched item - used with autocomplete (736cbdb0)
- adds keyboard shortcuts to chips component (c62d4dfd)
- list:
- mdUtil: add md-overflow-wrapper-shown class to DOM (5a028092)
Breaking Changes
Bug Fixes
- autocomplete: fixes positioning logic to fire at the correct time (8946322b, closes #2298)
- button:
- card: action bar spacing, remove order attrs (50ce4e8b, closes #2403)
- checkbox: style checkbox without visual label (ab264807, closes #2175)
- chips:
- adds better focus handling for chips (def6d3a4)
- fixes issue where arrow keys switch active chip while editing input field (1f261440)
- fixes issue with deletion logic (6d4ecbee)
- fixes shift+tab interaction with
md-chips
(314aae1c)
- adds aria-hidden to remove buttons (79b07399, closes #2345)
- adds slightly better support for input types other than
text
(d885d638)
- prevents item deletion when text is selected (b65236b7, closes #2322)
- dialog: action spacing matches spec (d7b23763, closes #2389)
- input: expect input container to use placeholder for label fallback (8410c0d6, closes #2397)
- inputContainer: style ng-messages as both element and attr (a5d09af5)
- interimElement: add fallback to document.body if root node removed (3b3d0205)
- list:
- check child element length before detecting proxies (c964609e)
- add ripple, inherit from .md-button (25cc5e8a, closes #2395)
- fix key hijacking (e1ca13fd)
- mdList: remove focus state on blur (588e58cf, closes #2339)
- select:
- fix scrollbars not respecting parent overflow hidden (b9ee6121)
- fix select backdrop closing when parent is destroyed (2d66368c)
- fix infinite loop condition (6e3b43cc)
- fix 1px error to match md-input-container style (bd566a52)
- add tabindex, aria-disabled support (40924003, closes #2308)
- fix restore focus on select close (f55eeba0)
- remove broken ARIA attributes (aaa6e5aa)
- improve keyboard filtering (f3c113c9)
- improve disable scroll layout (68395a25)
- tabs:
- tabs will no longer assume that all tabs have no content if the first one doesn't (1b789fed, closes #2398)
- adds a queue for delayed function calls (0e2ccd23, closes #2402)
- resolves issue where
md-tabs
is used within ui-view
by removing hard require (43508032, closes #2414)
- apply ARIA only to dummy tabs (5ad44728)
- cleans up label/template fetch logic (17aecd2d)
- id's should no longer cause issues when used within tab labels or contents (ea185eab, closes #2326)
- tests: mock .flush() added for Angular 1.4.x (1e3f1a59)
- textfield: removed unstable, deprecated textfield component Replaced with md-input-container (b5c4390b)
0.9.0-rc1 (2015-04-14)
The release of 0.9 is primarily focused on bug fixes and polish efforts. Also included in this upcoming release will be added support for List items and controls, Chips, re-architected Tabs, and improvements to Gesture support and documentation.
Features
- autocomplete:
- adds
md-menu-class
to allow users to add a class to the dropdown menu for cust (860897d9)
- dropdown will now stretch to accomodate longer text (b1343704)
- adds support for
md-autocomplete-snap
to specify parent element for autocomple (15d1db73)
md-highlight-text
now supports custom flags (1ac0c93c, closes #1799)
- adds support for
name
attribute (ebca76da)
- adds support for floating labels (f487248a)
- button: support for link icon buttons (1b9bafb5, closes #2265)
- card: add default background color (3bc8b27b, closes #1846)
- chips: initial commit Supports basic list mutation (add, remove items). (713f7b67, closes #2030)
- gestures: add provider to all config and optional skipClickHijack() (f28393df)
- layout: re-add offset attribute (fecceeb5)
- list: BREAKING: add list controls (abb807d0, closes #2021)
- mdButton: add icon button for toolbars, etc. (6ee9a190, closes #2091, #NaN)
- mdCard: support md-card-footer (ff794eca, closes #1474)
- radioButton: allow theming on radio group (30d0cc44, closes #1746)
- script: Set ngModule to Closure namespace. (ade76f95, closes #1709)
- select:
- truncate string to fit in single line (1a81f0c6)
- add auto-inference of option value (342af6a8)
- add psuedo-element to make auto complete work (aa440efc)
- add support to select/focus by typing options (f5d905a2)
- add ngMultiple support to select (9956f62d)
- add styles for invalid (ddf1198f)
- sidenav:
- add focus override option and demo (3ca2a637, closes #1891)
- add promise-based lookup .then(callbackFn) for deferred instances (076a97db, closes #1311)
- tabs:
- adds support for
md-no-pagination
(d0ddad1f, closes #1189)
- adds support for
md-center-tabs
(2de0cf26, closes #1992)
- adds support for
label
attribute without tab content (faab8883, closes #2068)
- adds support for dynamic height based on tab contents (efde63c4, closes #2088)
- refactors tabs to function closer to spec (f34eb800, closes #1087, #1107, #1140, #1247, #1261, #1380, #1387, #1403, #1443, #1505, #1506, #1516, #1518, #1564, #1570, #1620, #1626, #1698, #1777, #1788, #1850, #1959, #1986, #2020, #1944)
- tooltip: adds
md-autohide
functionality (b682e36a, closes #1689)
Breaking Changes
Generated HTML and style improvements:
CSS
- CSS Focus outlines not prevented by default
- Box-sizing removed from body, applied to components
textRendering: optimizeLegibility
removed from body, applied to a subset of elements
- Font sizes, margins, padding in
rem
units
- Roboto webfont included in SCSS
- Typography: classes introduced for headings and body copy
- High-contrast mode supported on Windows
HTML
- Docs: Pinch and zoom re-enabled in viewport
Bugs fixed:
- #1087, #1107, #1140, #1247, #1261
- #1380, #1387, #1403, #1443, #1505
- #1506, #1516, #1518, #1564, #1570
- #1620, #1626, #1698, #1777, #1788
- #1850, #1959, #1986, #2020
(f34eb800)
Bug Fixes
- include Roboto as non-blocking <link> (5936f7a0, closes #2247, #NaN)
- switch focus on keyboard, use .md-focused (0e916bfc, closes #1336)
- limit global list styles (fde08cc1)
- refactor global CSS styles (6af1546d, closes #1442, #NaN)
- autocomplete:
- fixes menu flicker (9b2dc2c4)
- updates the z-index to account for use within sidenav or dialog (3cc914d7, closes #2202)
- hitting enter with an item selected no longer resets the selected item (7e666ab4, closes #2183)
- dropdown will shift if there is not enough space (0b15c976, closes #2004)
- moves autocomplete dropdown to nearest content container (7f355f6d, closes #2013, #1961, #1670)
md-min-length
now supports 0 as a value and will show dropdown on focus (dcf92682)
md-search-text-change
now fires when content is deleted from text (f308779a, closes #2061)
- item templates now handle child bindings in the correct scope (2e157d2b, closes #2065)
- adds a minimum width (66fe5757, closes #1853)
- hides cancel button when field is disabled (936b8816, closes #1710)
- adds support for
md-autofocus
(c6374d9b, closes #1764)
- accepts pre-selected values (c3fcd0d8, closes #1779)
- will no longer query when item is selected (5f141269, closes #1835, #1732)
- disables browser autocomplete (1a8b5658, closes #1849)
- autocomplete now selects the first item by default and no longer hides results w (4c2b086a, closes #1858)
- adds support for
$http
promises (de423ae4, closes #1798)
- bottomSheet: make bottom sheet work with new md-list (bc32eb4c)
- bower: fixes bower warning (c4979d68, closes #2165)
- build:
- do not bower install in github hook script (859ecb56)
- remove bower dependency, update npm to install angular, update Jasmine 2 (9398a7a9, closes #1962)
- button:
- card: add correct themed background color (9af45d37)
- checkbox:
- chips:
- sets
md-autoselect
for contact chips (eb9f5646, closes #2294)
- fixes issue when removing chips via button (59d359ce, closes #74)
- when adding items, duplicates will now be skipped (1ba926bc)
- only add chip item if it is truthy. fixes #2116 (d154a8e4, closes #2120)
- dialog:
- divider: make divider work with new md-list (ebcd7f04)
- docs: use node_modules/angularytics (b8cc062a)
- gesture: don't stop hijacking clicks on ios & android when jquery is loaded (81bcf7fd, closes #1869, #1842)
- gestures:
- attach event listeners once when multiple ng-apps are running (6d566762, closes #2173)
- disable click hijack on mobile if jQuery is present (2c57a828, closes #1915)
- gestures initialize only on use instead of load (63c87096, closes #2074)
- gridlist:
- icon:
- remove invalid danger style (360e2b60)
- Fix issue with resizing SVGs when jQuery included. (c4e8c1c4, closes #1803)
- icons:
- disable pointer events on SVG(s). (a7d9fa32, closes #2048)
- fix default icon color to match spec (6fc26fab)
- input:
- float labels support dir=rtl (b88b744f, closes #964)
- Only make invalid input label red when it's floating (6d368505, closes #1928)
- delegate clicks in IE10 (d0b427d6, closes #1394)
- improve textarea appearance on firefox and IE (a693dabd, closes #1157)
- input validation and visual error indicators fixed (c818da75, closes #1606)
- list:
- add missing interpolation character (07e82015)
- focus covers whole row, IE11 layout fix (b47a8787, closes #2222)
- adds role attributes in compile rather than link for performance improvements (38f04230)
- md-select: Track disabled state (dc93bffe)
- mdButton: focus styles only on keyboard (dfb4d1ab, closes #1423)
- progressCircular: fixes animation in IE11 (d5b77bdc, closes #387)
- radioButton: fix googly eyed radio-buttons (bffa15ab)
- ripple:
- select:
- greatly improve scroll disable compatability (614630d7)
- fix invalid css (2f9eef70)
- make select focus states match ui-spec (42db19dd)
- bug using select attr with inferred value (e20b1906)
- fix scrollbar margin of select parent (f3cd5b9c)
- make select positioning factor in scroll bar width (e18450fb)
- reposition select on resize events (0fe35cc8)
- fix md-on-show not hiding spinner for non-async (13b9c697)
- make constrained select fit to top/left first (f6f2187c)
- BREAKING: make select more inline with md-input-container styles (a67a6a2e)
- fix alignment of select dropdown arrow (5c853e66)
- fix firefox select positioning, page moving on open (a15347cd)
- sidenav: improve API usage for $animate enter/leave (4245bcf7, closes #2261)
- subheader: fix width styling while scrolling (2f335732)
- tabs:
- resets offset if the user resizes causing pagination to no longer be necessary (bd1c973a)
- fixes styles for
md-align-tabs="bottom"
(0dabfc5c)
- fixes Safari issue regarding dynamic tabs transitions (4ac7dc03)
- fixes flicker issue with dynamic height (48eeb627)
- fixes styles for
md-border-bottom
and md-align-tabs
(9affd121, closes #2119)
- adds support for height changes in between tab switches (64c4585b, closes #2088, #2177)
- resolves issue where code was attempting to fire after the tabs array had been r (f15fd050)
- re-added
md-on-select
and md-on-deselect
events to md-tab
directive (c84899df)
- applies correct styles for tabs living inside md-toolbar (4c59c5c5, closes #2067)
- updates CSS so that tabs support scrolling when necessary (9f0d428c, closes #2088)
- theming:
- fix theming in safari (1ebc42ec)
- add support for background hues (0df4b16e)
- change default background palette, document theming (57deba10)
- toast: style tweaks for desktop rendering, fix opacity (860a55ec)
- toolbar: md-button style cleanup (1c19272a, closes #2267, #2146)
- tooltip:
- fixes positioning bug in Safari (f62fd480, closes #1883)
- tooltip will no longer be pushed up if there is room for it within its `offsetPa (6e576c02)
- fixes tooltip position when body has a margin (00f4cc6d, closes #1883)
*
0.8.3 (2015-03-03)
Features
Bug Fixes
- autocomplete: clicking on the scrollbar in the dropdown will no longer cause the list to hide (2731f107, closes #1739)
- gestures: resolves jQuery conflict with $mdGesture (79505888)
- select:
- support rtl direction (59e30a39)
- make md-option work with ng-selected (425a76a3)
- make select work with ng-disabled (60514054)
- fix select not setting initial value (6dc46d52)
- fix closing select a second time on firefox (e49a20e8)
- fix positioning / sizing on firefox (67618dc8)
- fix resetting value for selects without placeholder (2a0ea163)
- fix empty select breaking page (6e7b36cf)
- make select consistent with md-input (6aa1c8a7)
- positioning when to close to bottom or right (cf78ba9f)
0.8.2 (2015-02-27)
Features
- autocomplete: adds support for
md-delay
to wait until the user stops typing to poll for resu (70a884a1)
Bug Fixes
- autocomplete:
- cleans up watchers when elements are removed (7fc0d02c, closes #1692)
- prevents aria message on selection (e2148f13)
- addresses accessibility issues (0bd7afb8, closes #1473)
- change events will no longer be called on load (c58d930e)
- button: allow attribute syntax for md-button. (fc223b0c, closes #1661)
- core: Remove redeclared variable declaration. (3454db3c, closes #1697)
- input:
- select:
- when nothing selected, focus first option (50b5d923)
- make space not scroll select (b8da17a0)
- make sure arrow keys always focus next/prev option (e441abaf)
- render label on external model updates (6baed64c)
- fix updating of values on change and init (0e21b3bc)
- change placeholder computation to be handled internally (b4c0a86e)
- fix duplicate options when using ng-repeat (9e0ca443)
- fix chrome double scroll bars (4d722ecf)
- tooltip: fixes
md-direction
attribute functionality (93080cae, closes #1673)
0.8.1 (2015-02-24)
Features
Bug Fixes
- select:
- keyboard controls in IE (69053a30)
- fix overflow scroll on IE (c5c5f860)
- prevent select from closing a dialog on click away (c573c8cd)
- stop position from going past bottom of screen (805ed1b4)
- fix select with 0 options positioning (5a82426e)
- support custom interpolate symbols (20b66111)
- remove placeholder for falsey, but defined values (9497f063)
- close md-select-menu if md-select is removed (5e02ad94)
0.8.0 (2015-02-23)
Features
- select:
- autocomplete: added initial files for autocomplete (0bd8cf1c, closes #1418)
- dialog: add ability to specify theme on alert and confirm presets (c97f48b7)
- gridlist: Initial gridList implementation (ef4aff00)
- icon: implemented md-icon for font-faces and svgs (b7d09d7e, closes #1438)
- input: adds
no-float
class to disable floating label animations (33f677e5, closes #201, #1392)
- tabs: changes default state of tabs to be transparent. (732cbc9c, closes #1250, #1393)
- toast:
- add ability to specify theme for simple preset (2fef2207)
- proper toast queing behavior (74fe8706)
- update toast content dynamicly using $mdToast.updateContent (0e161cb7)
- tooltip: adds
md-direction
so that users can specify tooltip direction (9c69c5cd, closes #1220, #1410)
Bug Fixes
- autocomplete:
- hitting Enter will now trigger the submit method on parent form tags (da084fc5, closes #1530)
- fixes issue with click events not firing (e088f6ac, closes #1513)
- dialog: correct opening position for showing a dialog (150efe62)
- docs: toolbar button overlap on mobile (7391cad4)
- gridlist:
- Tile removal now supports ngAnimate (1d8e7832, closes #1559, #1560)
- add ngInject annotation support for GridLayoutFactory - $mdGridLayout (c045f542)
- Throws error on invalid or missing colCount to avoid infinite loops (39f4f26a)
- Adds grid height calculation (0196014d)
- Prevents media from being unwatched immediately (a4104215)
- icon:
- improve error recovery and item caching (603e5d68, closes #1477)
- add support for themes with md-primary, etc. (cdea9a2d)
- input:
- layout: fix responsive breakpoint dead-zones (ecf6edef)
- mdButton: add default color, update docs (a80804b5, closes #1486)
- select: fixes scrollbar and padding issues (5d7b63b0)
- tooltip: content text was semi-opaque (42cff135, closes #1480, #1492)
- autocomplete: selected item now properly updates (1307b945, closes #1468)
- button: remove underline on href button hover (c19cd433)
- card: fixes selector to be more specific (2f840b2a)
- gesture: fix gesture event dispatching with jQuery (88813b78, closes #1367)
- input: check invalid model immediately and setInvalid() if needed (e0f53ddd, closes #372)
- mdIcon:
- mdInput: css cascades from disabled fieldset (66fa1e3e, closes #895)
- mdMedia: fix media listeners not firing on non-chrome browsers (0dfcaf55)
- mdTabs: use md-icon for pagination arrows (517623e7, closes #1464, #1466)
- sidenav: properly sets width of sidenav (0318ca44, closes #957)
- slider:
- subheader: fix subheaders within dialogs (55084143)
- theming: fix typo in warning message (8a6eb7e8)
- toast: fix minified toast controller injections (5c5106e4)
- tooltip: now works inside elements without pointer events (3d010cd8)
0.7.1 (2015-01-30)
Features
- bottomSheet: disable scroll on parent when bottom sheet is shown (8273126c)
- button: adds attribute override for ripple size (b7c43a10, closes #1088)
- gestures: add built in gesture system, remove HammerJS (8364fb57)
- input: make input placeholder attr work (f1d7f830, closes #1279)
- mdInputContainer: add mdIsError expr, defaults to $touched && $invalid (c3cad666, closes #1267)
- sidenav:
- make it thinner on <360px wide screens (6ee3346e)
- expose isLockedOpen for sidenav instances (ba71a598)
- theming:
- add warnings when using unregistered themes (f6f56c98)
- warn for same palette as primary and accent (1c973330)
- fix strong light colors vs normal light colors, as per spec (dd5b9549)
- rename palette methods, change default palettes (0e0846fe, closes #1252)
- change default color of components that should be accent (f2996b73)
- toolbar: add shadow to toolbar (4e47a174)
Breaking Changes
- As per the
spec
this commit changes the default color palette of FABs, checkboxes, radio
buttons, sliders and switches to the accent palette.
closes #1255
(f2996b73)
Bug Fixes
- card: fixes selector to be more specific (2f840b2a)
- gesture:
- make sure clicks properly support keys (c6d24eb2)
- fix firefox keyboard events (79196c3d)
- only hijack click events on mobile devices (ade65b60)
- theming:
- fix warning for
changeTheme
being wrong (f44bf604)
- checkbox:
- make
mdAria
check linked element (3346532c)
- build:
- add annotations to
rAfDecorator
, remove unused args (c4927f9e)
- add annotation to
swipe.js
(22040c77)
- button:
- change default style of fab to white instead of transparent (04feeb83)
- default background-color on fab buttons on toolbar (08ebff44)
- card:
- dialog: fix overlay not covering, dialog position in overlay (1d5ef95d)
- input:
- layout: fix IE11 layout (74fe3eb1, closes #1227)
- mdSwitch: add missing styles to switch (54338d7d, closes #912)
- ripple: fixes size issue with ripple on switches (c435409b)
- slider:
- don't run touchend listener if disabled (5bbd23d6, closes #1308)
- make modelValue be set on pressdown (7028a750, closes #1296)
- fix thumb positioning so that it works when not visible (41c2d65d, closes #1210)
- styles: fix subheader z-index, button md-mini class, md-no-bar. (dde9ab79, closes #1182, #1034, #1173, #1194)
- switch: set tabindex to -1 while disabled (19f47b5d)
- tabs:
- adds fix for css transition on theme change (312dcc6c, closes #1033)
- remove bad opacity on focus state (72ced4b5)
- prevents multiple pagination clicks during animation (299e1556, closes #1207)
- toast:
- fix highlighting of action buttons (53cffe29)
- fix excess padding on md-action (0f40a843)
0.7.0 (2015-01-24)
Bug Fixes
- input:
- fix bug regarding
md-maxlength
value changes (b432277d)
0.7.0-rc3 (2015-01-14)
Bug Fixes
- allow user selection when swipe listener is enabled (520faa72, closes #838)
- button:
- dialog:
- input: fix label inputs with specified types (747c6acb)
- layout: make sure hide-gt-* and show-gt-* work together properly (d149f36b, closes #772)
- radioGroup: fix render call happing before radioGroup init (68e350d1)
- subheader: make content clickable (7178b6d6, closes #554)
- tabs:
- fix overflow leaking out tab-content (dec2ac42)
- factors
me-active
attribute into selection logic to prevent unnecessary `md-on (6a087a01, closes #868)
- adds a delayed call to update the ink bar after a tab is removed (1a1095b0, closes #573)
- theming: make switch, checkbox, radio button default to primary color for consistency (8cbfeadf)
Features
- input: add error states, md-maxlength (a2bc3c68)
- layout: add flex-order-{sm,gt-sm,md,gt-md,lg,gt-lg} attributes (3e453078)
- tooltip: add configurable md-delay attr, default 400ms. (e4ed530d, closes #713)
0.7.0-rc2 (2015-01-08)
Bug Fixes
- $mdUtil: fix bugs in iterator's
next()
/previous()
methods Refactor for DRY-ness `next (124466e7)
- $mdComponentRegistry: gracefully recover if no md-component-id is specified (bf2266f1)
- demos: tab dynamic demo removes use of on-select expressions (4db16c17)
- mdDialog:
- fix dialog border radius visual overflow glitch (9b162202, closes #1015)
- prevent null-pointer error with popInTarget (b36282a5, closes #1061)
- input: fix height on IE11 (dc31ee53)
- layout:
- fix 'layout-padding' rule not having comma (b35be936, closes #952)
- layout-fill in firefox (31d3c123)
- layout-wrap fixed and documented (8f937bd2)
- mdButton:
- mdCard: add an md-card-content container inside md-card for content (28a4f8ff, closes #265)
- mdMedia: avoid unnecessary digest and make changes apply quicker (98247bcf, closes #978)
- mdRadioButton: Loosen equality check (ca3e4c30, closes #1112)
- mdToolbar: Toolbar flow on medium screens (bfc947f6)
- mdUtil:
- fix
throttle()
delay check (fdb923e4, closes #977)
- remove/delete cacheFactory keys when clearing/destroying cache (8736c7cc)
- mdRadioButton: arrowkey navigation with disabled buttons (f520d507, closes #1040)
- mdSidenav: Fix tests and typo (c0e2b0fb)
- mdTabs:
- make md-tab-label visible on IE11 (b85ad629, closes #1057)
- pagination only call watcher() when it's a function (e952ab41, closes #1073)
- delays disconnect until after the digest is finished (78ba497e, closes #1048)
- theming:
- switch accent palette to use accent hues (002d8bfd)
- allow hex values with uppercase letters (9b45af50, closes #1014)
Features
- mdDialog: disable scrolling on parent while showing dialog (993fa2bc)
- input:
- textarea: make textarea autogrow with size of content (1c653696, closes #565)
- layout: add layout-align-{sm,gt-sm,md,gt-md,lg,gt-lg} attrs (8550bd6c, closes #631)
- mdRadioGroup: Radio submits on keydown/enter (03c75927, closes #577)
- mdSlider: make discrete track ticks themable (91bc598f, closes #621)
- mdSwitch: add grab/grabbing cursor during drag (c60640bf, closes #983)
- mdTabs: adds default transitions for tab content (3ee83a64, closes #1044, #717, #811)
- $mdToast: add mdToast#showSimple shortcut method (dd960c6f)
Breaking Changes
- md-text-float has been deprecated due to flaws (explanation in #547).
To create an input, you now must use the native <input>
and <textarea>
elements, with a <md-input-container>
parent around each
<input>
or <textarea>
.
Change your code from this:
<md-text-float label="First Name" ng-model="firstName"></md-text-float>
To this:
<md-input-container>
<label>First Name</label>
<input ng-model="firstName">
</md-input-container>
- md-card now requires a separate
md-card-content
element
containing the card's content. This was done to fix padding problems
with the content.
Change your code from this:
<md-card>
<img src="img/washedout.png" alt="Washed Out">
<h2>Paracosm</h2>
<p>
The titles of Washed Out's breakthrough song and the first single from Paracosm share the
two most important words in Ernest Greene's musical language: feel it.
</p>
</md-card>
To this:
<md-card>
<img src="img/washedout.png" alt="Washed Out">
<md-card-content>
<h2>Paracosm</h2>
<p>
The titles of Washed Out's breakthrough song and the first single from Paracosm share the
two most important words in Ernest Greene's musical language: feel it.
</p>
</md-card-content>
</md-card>
(28a4f8ff)
0.7.0-rc1 (2014-12-19)
Bug Fixes
- $$interimElement: make templates work with custom interpolation symbols (d5aa68d1)
- build: correct in buildConfig.js (6caccf75, closes #981)
- button: fix hover on flat buttons (de587772)
- checkbox:
- only add focus border if label is not empty (74973487, closes #944)
- added css support for disabled states (d1920839)
- demo: Update slider demo to work in IE11 (39559808, closes #653)
- filenames: updated component .scss names to match conventions (629b753f)
- layout:
flex="n"
attrs set height for column layout, width for row (d3577798, closes #937)
- mdToast: Puts index above dialog (4ae4e072, closes #903)
- switch: only add focus border if label is not empty (9c24cc93, closes #944)
- tooltip: fix bugs in Safari & Firefox, as well as scrolling bugs (0d265292, closes #593)
Features
- theming: use $mdThemingProvider (47f0d09e)
Breaking Changes
- Themes are no longer defined by linked CSS files.
Themes are now defined through Javascript only. A 'theme template' is
bundled into angular-material.js, and then Javascript is used to
generate theme css for every theme the user defines.
The default
theme is still shipped with angular-material.
If you used another theme (for example, the purple
theme), change your code from this:
<link rel="stylesheet" href="/themes/purple-theme.css">
<div md-theme="purple">
<md-button class="md-primary">Purple</md-button>
</div>
To this:
var app = angular.module('myApp', ['ngMaterial']);
app.config(function($mdThemingProvider) {
$mdThemingProvider.theme('purple')
.primaryColor('purple');
});
<div md-theme="purple">
<md-button class="md-primary">Purple</md-button>
</div>
For more information, read the updated Theme documentation - (47f0d09e)
0.6.1 (2014-12-08)
Bug Fixes
- checkbox:
- fixes issue where double-clicking checkboxes causes text selection (5d2e7d47, closes #588)
- expands the checkbox click radius (9cd24e2e, closes #379)
- compiler: trim whitespace from templates (effects toast, bottomSheet, etc) (3be3a527)
- dialog: transition in and out properly to/from click element (1f5029d0, closes #568)
- layout: make [hide] attr work properly with all device sizes (c0bbad20)
- mdMedia: support all prefixes: sm,gt-sm,md,gt-md,lg,gt-lg (c1cb9951)
- ripple: fixes an error caused when clicking on disabled checkboxes (8a1718d7)
- slider:
- update the thumb text when the model is updated (2ca21f8b, closes #791)
- reposition when min or max is updated (bd6478b9, closes #799)
- tabs:
- do not focus until pagination transition is done (bb9bc82c, closes #781)
- dont use focusin event on firefox (5559ac63, closes #781)
- toolbar: use accent color for buttons inside (12d458e3)
- tooltip: make it appear above dialogs (a3ce7d84, closes #735)
Features
- layout: add both layout-margin and layout-padding attributes (5caa22b2, closes #830)
- toast: simple with content string: '$mdToast.simple('my-content')` (554beff3, closes #833)
0.6.0-rc3 (2014-11-26)
Bug Fixes
- dialog: correct the opening position when opening from a button (22865394, closes #757)
- hide: make hide-gt-* attrs work properly with larger show attrs (7fc6b423)
- ripple: prevent null error while using ripple (6d81ded1)
0.6.0-rc2 (2014-11-24)
This version introduces more breaking layout changes, ripple improvements,
aria improvements, bug fixes, and documentation enhancements.
Bug Fixes
- button: add override for transitions on ng-hide (8fa652cf, closes #678)
- layout: add [flex-{sm,md,etc}] attr for 100% flex on screen size (7acca432, closes #706)
- ripple:
- fix ripple bug with checkboxes in lists (7d99f701, closes #679)
- fix bug with vertical ripple alignment (5cdcf29a, closes #725)
- sidenav: use flex display when opened (ae1c1528, closes #737)
Features
- mdAria: checks child nodes for aria-label (d515a6c2, closes #567)
- mdBottomSheet: add escape to close functionality (d4b4480e)
- tabs: ink ripple color syncs with ink bar (9c56383b)
Breaking Changes
The -phone, -tablet, -pc, and -tablet-landscape
attribute suffixes have been removed and replaced with -sm, -md, and -lg
attributes.
hide-sm means hide only on small devices (phones).
- hide-md means hide only on medium devices (tablets)
- hide-lg means hide only on large devices (rotated tablets).
Additionally, three new attribute suffixes have been provided for more flexibility:
- hide-gt-sm means hide on devices with size greater than small
(bigger than phones).
- hide-gt-md means hide on devices with size greater than medium
(bigger than tablets)
- hide-gt-lg means hide on devices with size greater than large
(bigger than rotated tablets).
See the layout options
section
of the website for up-to-date information.
(a659c543)
0.6.0-rc1 (2014-11-18)
v0.6.0-rc1 releases the following changes:
- improvements to the ink Ripple effects
- namespace prefixing Material attributes
- revised the Layout system to be more intuitive and responsive
- added enhancements for modular builds and distrbution for each component
- improved minification and SHA tags for each deployed .js and .css file
- numerous bug fixes to improve stability, adds responsive features, and enhances API documentation.
Bug Fixes
- button: fix css for md-fab icon position when href is present (a7763fde, closes #591)
- card: make md-card themeable (55cdb5b7, closes #619)
- demos: dialog, bottomsheet, and toast now display within properly within the bounding d (5909f0a5)
- docs:
- layout: updates layout attributes in index template (669d0048)
- md-button: improve a11y: make title, aria-label work (ff576289, closes #512)
- ripple: fix ripple sometimes appearing when the element is disabled (58eaef49)
- sidenav:
- make backdrop invisible when sidenav is locked-open (4a75d599)
- clean registry when element is destroyed (e7a3bd8d, closes #473)
- slider: update discrete slider thumb text while dragging (2877585e, closes #622)
- themes: bring blue, red, and green colors up to latest spec (de3ff4b8)
Features
Breaking Changes
- To provide improved clarity and easier usages, the Layout system has been revised (d51a44c5).
See the updated Layout sections for details. We associate labels with specific breakpoints:
Label |
Size (dp) |
Attribute |
Phone |
0 <= size <= 600 |
layout-sm |
Tablet |
600 > size <= 960 |
layout-md |
Tablet-Landscape |
960 >= size <= 1200 |
layout-lg |
PC |
> 1200 |
layout-gt-lg |
Example 1: To use a horizontal layout and responsively change to vertical for screen sizes < 600 dp:
`
html
> ```
>
> **
Example 2**: To use a *horizontal* layout and change to *vertical* for *phone* and *tablet* screen sizes:
>```html
```
> **
Example 3**: To show an element except when on a *phone* (or smaller) screen size:
>```html
```
> **
Example 4**: To always hide an element, but show it only on phone (or smaller) devices:
>```html
```
For performance, the disabled attribute is no longer supported; instead the ng-disabled attribute is now read to check if a component is disabled. (2ece8cd7)
If you use the disabled
attribute on a component to set whether
it is disabled, change it to an ng-disabled expression.
Change your code from this:
<md-checkbox disabled></md-checkbox>
To this:
<md-checkbox ng-disabled="true"></md-checkbox>
All material component attributes and are now namespaced with the md-
prefix; these changes do not affect ng- prefixes or standard html5 prefixes (eb2f2f8a). Affected attributes:
- <md-button md-no-ink="" >
- <md-content> (92b76435)
- md-scroll-x
- md-scroll-y
- md-scroll-xy
- <md-divider md-inset="" >
- <md-linear-progress md-buffer-value="someValue" md-mode="query" >
- <md-circular-rogress md-mode="query" md-diameter="60" >
- <md-sidenav>
- md-is-open="isOpen"
- md-is-locked-open="isLockedOpen"
- md-component-id="my-sidenav"
- <md-tabs>
- md-selected="selectedIndex"
- md-on-select="doSomething()"
- md-on-deselect="doSomething()"
- md-active="tabIsActive"
- <md-text-float md-fid="someId">
When using the <md-button>
directive, the compiled element will now be a normal <a>
or <button>
element with the class="md-button" attribute. (d835f9ee)
Any css referencing the md-button
element selector
should now reference the .md-button
class selector. Change your CSS overrides from this:
md-button {
color: red;
}
To this:
.md-button {
color: red;
}
0.5.1 (2014-10-31)
Version 0.5.0 introduces theming support, improves stability, adds responsive features, and enhances API documentation.
Features
Bug Fixes
- mdAria: add better warnings (3368c931, closes #366)
- md-input-group: disable with ARIA (72bad32a)
- slider: slider default value in ng-repeat corrected (b652d863, closes #479)
- css:
- add autoprefixer support for firefox and ie (a1bea485)
- fix invalid flex properties (c1d9b5a2)
- remove deprecated css properties (c7e3a83c)
- textFloat:
- improved logic to determine if md-input has a value (5c407b5f)
- improve ARIA pairing links between label and input (457b3750, closes #483)
- added support for label/hint expressions (3674a514, closes #462)
- fix keyboard tabbing support (27f43751, closes #458)
Breaking Changes
- colors:
- The
md-theme-*
classes have all been removed, in favor of themes.
- Instead, use
md-primary
and md-warn
classes on an element when a theme is set.
- bottomSheet:
list
class has been renamed to md-list
grid
class has been renamed to md-grid
has-header
class has been renamed to md-has-header
grid-text
class has been renamed to md-grid-text
.
- button:
md-button-colored
class has been changed to md-primary
and md-warn
color classes.
- All classes that start with
md-button-fab
now start with md-fab
.
md-button-fab
to md-fab
.
md-button-fab-top-left
to md-fab-top-left
md-button-fab-top-right
to md-fab-top-right
md-button-fab-bottom-left
to md-fab-bottom-left
md-button-fab-bottom-right
to md-fab-bottom-right
md-button-cornered
class has been changed to md-cornered
md-button-icon
class has been changed to md-icon
md-button-raised
class has been changed to md-raised
- content:
md-content-padding
class has been renamed to md-padding
.
- dialog:
dialog-content
class has been removed. Use an md-content
element instead.
dialog-actions
has been renamed to md-actions
- subheader:
md-subheader-colored
is now md-primary
.
- textFloat:
- use of
<md-input-group>
is deprecated, <md-text-float>
markup can be used for most cases
- toast:
toast-action
has been renamed to md-action
- toolbar:
md-toolbar-tall
class has been renamed to md-tall
md-toolbar-medium-tall
class has been renamed to md-medium-tall
- whiteframe: md-whiteframe-z* classes no longer set z-index, only shadow
0.4.2 (2014-10-16)
This release adds support for the official Angular 1.3 release and includes improvements to both the document generator and component demos.
Note that <md-input-group>
and <md-input>
are deprecated in favor on <md-text-float>
. While both directives are still available for more granular control, developers are encouraged to use the <md-text-float>
directive whenever possible.
Features
- text-float: Add floating label text field (25cf6f1)
Bug Fixes
- Focus management for docs views (9afe28a8)
- bottomSheet: use position:fixed so it does not move (bfaf96d8)
- ripple: use contentParent scroll offset (4c0c50e4, closes #416)
- slider:
- disabled sliders still usable w/ keys (f78f1b34)
- disabled discrete sliders still usable (1f5ce090)
- subheader: sort items correctly in browsers that dont support true/false (d8e5079e, closes #438)
- tabs: remove tabs all at once on controller destroy (7237767d, closes #437)
0.4.1 (2014-10-15)
Version 0.4.1 changes the prefix for all services and directives from 'material' to 'md'.
To migrate your code, replace all instances of 'material' in your project with 'md':
sed -i '' 's/material/md/g' $(echo my-material-project/app/**/*.{js,html,css})
Additionally, material-linear-progress
has been renamed to md-progress-linear
and material-circular-progress
has been renamed to md-progress-circular
.
angular-aria
is now a dependency. Be sure to include angular-aria.js before angular-material. See https://github.com/angular/bower-material#usage.
0.4.0 (2014-10-06)
Version 0.4 incorporates four (4) new components: circular progress, subheader, tooltip and bottom sheet. A new API has also been introduced for $materialDialog
and $materialToast
. Additionally, many small component functionality and performance issues have been resolved.
v0.4 is tested on desktop Chrome, Safari and Firefox, as well as Android 4.4+ and iOS7.
Breaking Changes
The services $materialDialog
and $materialToast
have changed API(s). See section at bottom for Change Details.
Bug Fixes
- button:
- no underline when button has a href (948aef0d)
- disabled raised and fab buttons don't hover on focus (6d0ca8fb, closes #358)
- checkbox: resolve TypeError for inputDirective.link (4da56732)
- dialog: cancel instead of hiding when user escapes/clicks out (0cc21d47)
- interimElement: make cancel and hide not fail when no element is shown (6162156d)
- progress-linear: Add aria, tests and better animations (3b386276, closes #297)
- radio: Radio button a11y (05ed42de, closes #310)
- toolbar: Demo correct heading levels (fd7697d6)
- ripple:
- make detach method work properly (c3d858a2)
- ripple container self-removal NPE fixed. (664ab996)
- sidenav:
- add
display: none;
while closed (8f104012, closes #300)
- always leave >=56px of room, no matter the screensize (13a26670, closes #346)
- slider: discrete mode supports live dragging and snap-to (b231f1c0, closes #331)
- textfield:
- ng-model bindings now working and demo rendering fixed. (e8f456fc)
- match float-label (light theme) specifications (63eeb47f)
Features
- progress-circular: Add circular progress component (07d56533, closes #365)
- subheader: add subheader component with sticky scroll (7787c9cc, closes #216)
- tooltip: add tooltip component (9f9b0897, closes #354)
- bottomSheet add bottomSheet component (3be359c)
#### Details on Breaking Changes
1) $materialDialog:
Change your code from this:
var hideDialog = $materialDialog(options);
hideDialog();
To this:
$materialDialog
.show(options)
.then(
function success(response) {},
function cancelled(reason) {}
);
$materialDialog.hide(response);
$materialDialog.cancel(reason);
Note: If you previously provided a controller
option to $materialDialog
, that controller would be injected with a $hideDialog
function. This feature no longer exists; use $materialDialog.hide()
.
2) $materialToast:
Change your code from this:
var hideToast = $materialToast(options);
hideToast();
To this:
$materialToast
.show(options)
.then(
function success(response) {},
function cancelled(reason) {}
);
$materialToast.hide(response);
$materialToast.cancel(reason);
Note: If you previously provided a `controller` option to `$materialToast`, that controller would be injected with a `$hideToast` function. This feature no longer exists; use `$materialToast.hide()`.
v0.0.3 (2014-09-19)
v0.0.3 includes many bug fixes, performance, and usability improvements to existing components, as well as introducing the slider, switch, divider, and linear progress components.
Additionally, accessibility support is added to material-button, material-checkbox, material-radio-button, material-slider, material-dialog and material-list. With added ARIA support including roles, states and properties, Angular Material directives now also communicate to users of assistive technologies. Additionally, tabIndex and focus management are handled dynamically where appropriate.
0.0.3 is tested on desktop Chrome, Safari and Firefox, as well as Android 4.4+ and iOS 7+. Also tested with VoiceOver on OSX and iOS7, ChromeVox, JAWS, NVDA and ZoomText.
Bug Fixes
- button: don't use angular transclusion at all, manual only (6b322729)
- card: make it use up proper width with margin (f33185ff, closes #247)
- demo: tab demos improved layout and accessibility (8915c324)
- dialog: use position:fixed instead of absolute (6ba874d8, closes #249)
- iterator: update add()/remove() logic (6a596b32)
- material-dialog: Focus mgmt, ARIA attributes (fe054ae6)
- material-list: Add semantics (6e48cd35)
- material-slider: Adds missing ARIA role (903cbc06)
- ripple:
- fix bug with ripple and many clicks (c2105c05)
- make checkbox only scale up to 1.0, looks good on ios (ed65da9b)
- use css animations for performance (96014e08)
- slider: watch ngDisabled expr on non-isolate parent scope (5f1923d5, closes #272)
- switch: correctly adjust when label will not fit on one line (e912a838, closes #80)
- tabs:
- make the ink ripple use the color of the ink bar. (c5ca159a, closes #280)
- don't paginate on initial load when width is 0 (5f5435d1, closes #271)
- use position: absolute container to fix ios bugs (7d0a282f, closes #220)
- Tab pagination/selection now works properly on iOS (3410650d, closes #220, #231)
- Tab pagination/selection now works properly on iOS (c77c0e26, closes #220, #231)
- remove window resize listener on $destroy (4b887f1e, closes #254)
- toolbar:
- make scrollShrink work with transforms, better performance (cf1ab59f, closes #295)
- typo onScroll -> onContentScroll (cf31b1a5)
Features
- add hammerjs dependency (e383e4f4)
- $materialToast: add swipe-to-close functionality (22285dc4)
- divider: add implementation of the divider component (e3aceeae, closes #194)
- docs: added support for the doc app to show its associated Git SHA id/link (02d2e5d2)
- progressLinear: Add linear progress indicator (f87d0452, closes #187)
- material-dialog: on open focus
.dialog-close
or the last button (8f756fc6, closes #222)
- material-switch: add switch component (4975c743, closes #80)
- slider: add full-featured slider component (5ea4dbc2, closes #260, #31)
- switch: add focus styles (8878ca7a)
- tabs: improvements to pagination, disabled tabs, and tab navigation. (b4244bf3)