Material Versions Save

Material design for AngularJS

v1.1.24

3 years ago

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:

Splaktar mmalerba
Splaktar mmalerba

v1.1.23

3 years ago

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

  • codepen: update for AngularJS 1.8.0
  • security: added Security Policy
  • tabs: improve correctness of API docs and types a17ef4f, closes #10407

Contributors

Thank you to the contributors who helped with the v1.1.23 release:

Splaktar crisbeto marosoft nnmrts Thaina chmelevskij
Splaktar crisbeto marosoft nnmrts Thaina chmelevskij

v1.1.22

4 years ago

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:

Splaktar marosoft oliversalzburg andrewseguin free-easy nathanael-bice
Splaktar marosoft oliversalzburg andrewseguin free-easy nathanael-bice
psamim qubiack
psamim qubiack

v1.1.22-rc.0

4 years ago

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:

Splaktar marosoft oliversalzburg andrewseguin free-easy nathanael-bice
Splaktar marosoft oliversalzburg andrewseguin free-easy nathanael-bice
psamim qubiack
psamim qubiack

v0.6.0

9 years ago

v0.4

9 years ago

0.4 (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)
  • 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:
    • 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

  • 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()`.