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.
The services $materialDialog
and $materialToast
have changed API(s). See section at bottom for Change Details.
- button:
- 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)
- linear-progress: Add aria, tests and better animations (3b386276, closes #297)
- radio: Radio button a11y (05ed42de, closes #310)
- toolbar: Demo correct heading levels (fd7697d6)
- ripple:
- sidenav:
- slider: discrete mode supports live dragging and snap-to (b231f1c0, closes #331)
- textfield:
- circular-progress: 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) {}
);
// Hides the dialog last shown with `show()`
// and resolves the show() promise with `response`
$materialDialog.hide(response);
// Hides the dialog last shown and rejects the `show()`
// promise with the `reason`
$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) {}
);
// Hides the dialog last shown with `show()`
// and resolves the show() promise with `response`
$materialToast.hide(response);
// Hides the dialog last shown and rejects the `show()`
// promise with the `reason`
$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 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.
- 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:
- 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:
- 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)
- linearProgress: 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)