jquery-ui-rails 4.0.0 → 4.2.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of jquery-ui-rails might be problematic. Click here for more details.
- data/.travis.yml +0 -1
- data/Gemfile +1 -1
- data/History.md +44 -0
- data/README.md +16 -4
- data/Rakefile +39 -11
- data/VERSIONS.md +31 -0
- data/app/assets/images/jquery-ui/animated-overlay.gif +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-icons_222222_256x240.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-icons_454545_256x240.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-icons_888888_256x240.png +0 -0
- data/{vendor → app}/assets/images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.accordion.js +17 -18
- data/{vendor → app}/assets/javascripts/jquery.ui.all.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.autocomplete.js +36 -44
- data/{vendor → app}/assets/javascripts/jquery.ui.button.js +23 -47
- data/{vendor → app}/assets/javascripts/jquery.ui.core.js +20 -24
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-af.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ar-DZ.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ar.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-az.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-be.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-bg.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-bs.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ca.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-cs.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-cy-GB.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-da.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-de.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-el.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-AU.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-GB.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-NZ.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-eo.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-es.js +7 -7
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-et.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-eu.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fa.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fi.js +1 -1
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fo.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fr-CA.js +0 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fr-CH.js +23 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fr.js +6 -6
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-gl.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-he.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hi.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hr.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hu.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hy.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-id.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-is.js +1 -1
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-it.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ja.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ka.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-kk.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-km.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ko.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ky.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lb.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lt.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lv.js +4 -4
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-mk.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ml.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ms.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nb.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nl-BE.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nl.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nn.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-no.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pl.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pt-BR.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pt.js +1 -1
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-rm.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ro.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ru.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sk.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sl.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sq.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sr-SR.js +1 -1
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sr.js +1 -1
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sv.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ta.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-th.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-tj.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-tr.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-uk.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-vi.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-CN.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-HK.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-TW.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.datepicker.js +28 -34
- data/{vendor → app}/assets/javascripts/jquery.ui.dialog.js +84 -28
- data/{vendor → app}/assets/javascripts/jquery.ui.draggable.js +96 -84
- data/{vendor → app}/assets/javascripts/jquery.ui.droppable.js +33 -15
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-blind.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-bounce.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-clip.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-drop.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-explode.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-fade.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-fold.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-highlight.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-pulsate.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-scale.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-shake.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-slide.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect-transfer.js +2 -2
- data/{vendor → app}/assets/javascripts/jquery.ui.effect.all.js +0 -0
- data/{vendor → app}/assets/javascripts/jquery.ui.effect.js +94 -73
- data/{vendor → app}/assets/javascripts/jquery.ui.menu.js +15 -9
- data/{vendor → app}/assets/javascripts/jquery.ui.mouse.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.position.js +16 -12
- data/{vendor → app}/assets/javascripts/jquery.ui.progressbar.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.resizable.js +20 -10
- data/{vendor → app}/assets/javascripts/jquery.ui.selectable.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.slider.js +97 -70
- data/{vendor → app}/assets/javascripts/jquery.ui.sortable.js +81 -42
- data/{vendor → app}/assets/javascripts/jquery.ui.spinner.js +10 -5
- data/{vendor → app}/assets/javascripts/jquery.ui.tabs.js +8 -5
- data/{vendor → app}/assets/javascripts/jquery.ui.tooltip.js +3 -3
- data/{vendor → app}/assets/javascripts/jquery.ui.widget.js +5 -5
- data/{vendor → app}/assets/stylesheets/jquery.ui.accordion.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.all.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.autocomplete.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.base.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.button.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.core.css.erb +4 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.datepicker.css.erb +3 -6
- data/{vendor → app}/assets/stylesheets/jquery.ui.dialog.css.erb +5 -4
- data/{vendor → app}/assets/stylesheets/jquery.ui.menu.css.erb +5 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.progressbar.css.erb +9 -4
- data/{vendor → app}/assets/stylesheets/jquery.ui.resizable.css.erb +2 -4
- data/{vendor → app}/assets/stylesheets/jquery.ui.selectable.css.erb +2 -4
- data/{vendor → app}/assets/stylesheets/jquery.ui.slider.css.erb +3 -3
- data/{vendor → app}/assets/stylesheets/jquery.ui.spinner.css.erb +5 -5
- data/{vendor → app}/assets/stylesheets/jquery.ui.tabs.css.erb +9 -10
- data/{vendor → app}/assets/stylesheets/jquery.ui.theme.css.erb +26 -5
- data/{vendor → app}/assets/stylesheets/jquery.ui.tooltip.css.erb +4 -2
- data/lib/jquery/ui/rails/version.rb +2 -1
- metadata +148 -161
- data/vendor/assets/javascripts/jquery.ui.datepicker-fr-CH.js +0 -23
@@ -1,10 +1,10 @@
|
|
1
1
|
//= require jquery.ui.core
|
2
2
|
|
3
3
|
/*!
|
4
|
-
* jQuery UI Datepicker 1.10.
|
4
|
+
* jQuery UI Datepicker 1.10.4
|
5
5
|
* http://jqueryui.com
|
6
6
|
*
|
7
|
-
* Copyright
|
7
|
+
* Copyright 2014 jQuery Foundation and other contributors
|
8
8
|
* Released under the MIT license.
|
9
9
|
* http://jquery.org/license
|
10
10
|
*
|
@@ -15,10 +15,9 @@
|
|
15
15
|
*/
|
16
16
|
(function( $, undefined ) {
|
17
17
|
|
18
|
-
$.extend($.ui, { datepicker: { version: "1.10.
|
18
|
+
$.extend($.ui, { datepicker: { version: "1.10.4" } });
|
19
19
|
|
20
20
|
var PROP_NAME = "datepicker",
|
21
|
-
dpuuid = new Date().getTime(),
|
22
21
|
instActive;
|
23
22
|
|
24
23
|
/* Date picker manager.
|
@@ -755,9 +754,10 @@ $.extend(Datepicker.prototype, {
|
|
755
754
|
inst.dpDiv[showAnim || "show"](showAnim ? duration : null);
|
756
755
|
}
|
757
756
|
|
758
|
-
if (
|
757
|
+
if ( $.datepicker._shouldFocusInput( inst ) ) {
|
759
758
|
inst.input.focus();
|
760
759
|
}
|
760
|
+
|
761
761
|
$.datepicker._curInst = inst;
|
762
762
|
}
|
763
763
|
},
|
@@ -784,10 +784,7 @@ $.extend(Datepicker.prototype, {
|
|
784
784
|
inst.dpDiv[(this._get(inst, "isRTL") ? "add" : "remove") +
|
785
785
|
"Class"]("ui-datepicker-rtl");
|
786
786
|
|
787
|
-
|
788
|
-
// this breaks the change event in IE
|
789
|
-
if (inst === $.datepicker._curInst && $.datepicker._datepickerShowing && inst.input &&
|
790
|
-
inst.input.is(":visible") && !inst.input.is(":disabled") && inst.input[0] !== document.activeElement) {
|
787
|
+
if (inst === $.datepicker._curInst && $.datepicker._datepickerShowing && $.datepicker._shouldFocusInput( inst ) ) {
|
791
788
|
inst.input.focus();
|
792
789
|
}
|
793
790
|
|
@@ -804,16 +801,11 @@ $.extend(Datepicker.prototype, {
|
|
804
801
|
}
|
805
802
|
},
|
806
803
|
|
807
|
-
|
808
|
-
|
809
|
-
|
810
|
-
|
811
|
-
|
812
|
-
var convert = function(value) {
|
813
|
-
return {thin: 1, medium: 2, thick: 3}[value] || value;
|
814
|
-
};
|
815
|
-
return [parseFloat(convert(elem.css("border-left-width"))),
|
816
|
-
parseFloat(convert(elem.css("border-top-width")))];
|
804
|
+
// #6694 - don't focus the input if it's already focused
|
805
|
+
// this breaks the change event in IE
|
806
|
+
// Support: IE and jQuery <1.9
|
807
|
+
_shouldFocusInput: function( inst ) {
|
808
|
+
return inst.input && inst.input.is( ":visible" ) && !inst.input.is( ":disabled" ) && !inst.input.is( ":focus" );
|
817
809
|
},
|
818
810
|
|
819
811
|
/* Check positioning to remain on screen. */
|
@@ -1560,27 +1552,27 @@ $.extend(Datepicker.prototype, {
|
|
1560
1552
|
inst.dpDiv.find("[data-handler]").map(function () {
|
1561
1553
|
var handler = {
|
1562
1554
|
prev: function () {
|
1563
|
-
|
1555
|
+
$.datepicker._adjustDate(id, -stepMonths, "M");
|
1564
1556
|
},
|
1565
1557
|
next: function () {
|
1566
|
-
|
1558
|
+
$.datepicker._adjustDate(id, +stepMonths, "M");
|
1567
1559
|
},
|
1568
1560
|
hide: function () {
|
1569
|
-
|
1561
|
+
$.datepicker._hideDatepicker();
|
1570
1562
|
},
|
1571
1563
|
today: function () {
|
1572
|
-
|
1564
|
+
$.datepicker._gotoToday(id);
|
1573
1565
|
},
|
1574
1566
|
selectDay: function () {
|
1575
|
-
|
1567
|
+
$.datepicker._selectDay(id, +this.getAttribute("data-month"), +this.getAttribute("data-year"), this);
|
1576
1568
|
return false;
|
1577
1569
|
},
|
1578
1570
|
selectMonth: function () {
|
1579
|
-
|
1571
|
+
$.datepicker._selectMonthYear(id, this, "M");
|
1580
1572
|
return false;
|
1581
1573
|
},
|
1582
1574
|
selectYear: function () {
|
1583
|
-
|
1575
|
+
$.datepicker._selectMonthYear(id, this, "Y");
|
1584
1576
|
return false;
|
1585
1577
|
}
|
1586
1578
|
};
|
@@ -1743,7 +1735,7 @@ $.extend(Datepicker.prototype, {
|
|
1743
1735
|
(otherMonth && !showOtherMonths ? "" : " " + daySettings[1] + // highlight custom dates
|
1744
1736
|
(printDate.getTime() === currentDate.getTime() ? " " + this._currentClass : "") + // highlight selected day
|
1745
1737
|
(printDate.getTime() === today.getTime() ? " ui-datepicker-today" : "")) + "'" + // highlight today (if different)
|
1746
|
-
((!otherMonth || showOtherMonths) && daySettings[2] ? " title='" + daySettings[2] + "'" : "") + // cell title
|
1738
|
+
((!otherMonth || showOtherMonths) && daySettings[2] ? " title='" + daySettings[2].replace(/'/g, "'") + "'" : "") + // cell title
|
1747
1739
|
(unselectable ? "" : " data-handler='selectDay' data-event='click' data-month='" + printDate.getMonth() + "' data-year='" + printDate.getFullYear() + "'") + ">" + // actions
|
1748
1740
|
(otherMonth && !showOtherMonths ? " " : // display for other months
|
1749
1741
|
(unselectable ? "<span class='ui-state-default'>" + printDate.getDate() + "</span>" : "<a class='ui-state-default" +
|
@@ -1920,8 +1912,14 @@ $.extend(Datepicker.prototype, {
|
|
1920
1912
|
if (years){
|
1921
1913
|
yearSplit = years.split(":");
|
1922
1914
|
currentYear = new Date().getFullYear();
|
1923
|
-
minYear = parseInt(yearSplit[0], 10)
|
1924
|
-
maxYear = parseInt(yearSplit[1], 10)
|
1915
|
+
minYear = parseInt(yearSplit[0], 10);
|
1916
|
+
maxYear = parseInt(yearSplit[1], 10);
|
1917
|
+
if ( yearSplit[0].match(/[+\-].*/) ) {
|
1918
|
+
minYear += currentYear;
|
1919
|
+
}
|
1920
|
+
if ( yearSplit[1].match(/[+\-].*/) ) {
|
1921
|
+
maxYear += currentYear;
|
1922
|
+
}
|
1925
1923
|
}
|
1926
1924
|
|
1927
1925
|
return ((!minDate || date.getTime() >= minDate.getTime()) &&
|
@@ -2037,10 +2035,6 @@ $.fn.datepicker = function(options){
|
|
2037
2035
|
$.datepicker = new Datepicker(); // singleton instance
|
2038
2036
|
$.datepicker.initialized = false;
|
2039
2037
|
$.datepicker.uuid = new Date().getTime();
|
2040
|
-
$.datepicker.version = "1.10.
|
2041
|
-
|
2042
|
-
// Workaround for #4055
|
2043
|
-
// Add another global to avoid noConflict issues with inline event handlers
|
2044
|
-
window["DP_jQuery_" + dpuuid] = $;
|
2038
|
+
$.datepicker.version = "1.10.4";
|
2045
2039
|
|
2046
2040
|
})(jQuery);
|
@@ -6,10 +6,10 @@
|
|
6
6
|
//= require jquery.ui.resizable
|
7
7
|
|
8
8
|
/*!
|
9
|
-
* jQuery UI Dialog 1.10.
|
9
|
+
* jQuery UI Dialog 1.10.4
|
10
10
|
* http://jqueryui.com
|
11
11
|
*
|
12
|
-
* Copyright
|
12
|
+
* Copyright 2014 jQuery Foundation and other contributors
|
13
13
|
* Released under the MIT license.
|
14
14
|
* http://jquery.org/license
|
15
15
|
*
|
@@ -43,7 +43,7 @@ var sizeRelatedOptions = {
|
|
43
43
|
};
|
44
44
|
|
45
45
|
$.widget( "ui.dialog", {
|
46
|
-
version: "1.10.
|
46
|
+
version: "1.10.4",
|
47
47
|
options: {
|
48
48
|
appendTo: "body",
|
49
49
|
autoOpen: true,
|
@@ -176,7 +176,8 @@ $.widget( "ui.dialog", {
|
|
176
176
|
enable: $.noop,
|
177
177
|
|
178
178
|
close: function( event ) {
|
179
|
-
var
|
179
|
+
var activeElement,
|
180
|
+
that = this;
|
180
181
|
|
181
182
|
if ( !this._isOpen || this._trigger( "beforeClose", event ) === false ) {
|
182
183
|
return;
|
@@ -186,10 +187,22 @@ $.widget( "ui.dialog", {
|
|
186
187
|
this._destroyOverlay();
|
187
188
|
|
188
189
|
if ( !this.opener.filter(":focusable").focus().length ) {
|
189
|
-
|
190
|
-
//
|
191
|
-
//
|
192
|
-
|
190
|
+
|
191
|
+
// support: IE9
|
192
|
+
// IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe>
|
193
|
+
try {
|
194
|
+
activeElement = this.document[ 0 ].activeElement;
|
195
|
+
|
196
|
+
// Support: IE9, IE10
|
197
|
+
// If the <body> is blurred, IE will switch windows, see #4520
|
198
|
+
if ( activeElement && activeElement.nodeName.toLowerCase() !== "body" ) {
|
199
|
+
|
200
|
+
// Hiding a focused element doesn't trigger blur in WebKit
|
201
|
+
// so in case we have nothing to focus on, explicitly blur the active element
|
202
|
+
// https://bugs.webkit.org/show_bug.cgi?id=47182
|
203
|
+
$( activeElement ).blur();
|
204
|
+
}
|
205
|
+
} catch ( error ) {}
|
193
206
|
}
|
194
207
|
|
195
208
|
this._hide( this.uiDialog, this.options.hide, function() {
|
@@ -214,6 +227,7 @@ $.widget( "ui.dialog", {
|
|
214
227
|
},
|
215
228
|
|
216
229
|
open: function() {
|
230
|
+
var that = this;
|
217
231
|
if ( this._isOpen ) {
|
218
232
|
if ( this._moveToTop() ) {
|
219
233
|
this._focusTabbable();
|
@@ -221,19 +235,19 @@ $.widget( "ui.dialog", {
|
|
221
235
|
return;
|
222
236
|
}
|
223
237
|
|
238
|
+
this._isOpen = true;
|
224
239
|
this.opener = $( this.document[0].activeElement );
|
225
240
|
|
226
241
|
this._size();
|
227
242
|
this._position();
|
228
243
|
this._createOverlay();
|
229
244
|
this._moveToTop( null, true );
|
230
|
-
this._show( this.uiDialog, this.options.show )
|
231
|
-
|
232
|
-
|
245
|
+
this._show( this.uiDialog, this.options.show, function() {
|
246
|
+
that._focusTabbable();
|
247
|
+
that._trigger("focus");
|
248
|
+
});
|
233
249
|
|
234
|
-
this._isOpen = true;
|
235
250
|
this._trigger("open");
|
236
|
-
this._trigger("focus");
|
237
251
|
},
|
238
252
|
|
239
253
|
_focusTabbable: function() {
|
@@ -348,7 +362,10 @@ $.widget( "ui.dialog", {
|
|
348
362
|
}
|
349
363
|
});
|
350
364
|
|
351
|
-
|
365
|
+
// support: IE
|
366
|
+
// Use type="button" to prevent enter keypresses in textboxes from closing the
|
367
|
+
// dialog in IE (#9312)
|
368
|
+
this.uiDialogTitlebarClose = $( "<button type='button'></button>" )
|
352
369
|
.button({
|
353
370
|
label: this.options.closeText,
|
354
371
|
icons: {
|
@@ -402,7 +419,7 @@ $.widget( "ui.dialog", {
|
|
402
419
|
this.uiDialogButtonPane.remove();
|
403
420
|
this.uiButtonSet.empty();
|
404
421
|
|
405
|
-
if ( $.isEmptyObject( buttons ) ) {
|
422
|
+
if ( $.isEmptyObject( buttons ) || ($.isArray( buttons ) && !buttons.length) ) {
|
406
423
|
this.uiDialog.removeClass("ui-dialog-buttons");
|
407
424
|
return;
|
408
425
|
}
|
@@ -450,6 +467,7 @@ $.widget( "ui.dialog", {
|
|
450
467
|
containment: "document",
|
451
468
|
start: function( event, ui ) {
|
452
469
|
$( this ).addClass("ui-dialog-dragging");
|
470
|
+
that._blockFrames();
|
453
471
|
that._trigger( "dragStart", event, filteredUi( ui ) );
|
454
472
|
},
|
455
473
|
drag: function( event, ui ) {
|
@@ -461,6 +479,7 @@ $.widget( "ui.dialog", {
|
|
461
479
|
ui.position.top - that.document.scrollTop()
|
462
480
|
];
|
463
481
|
$( this ).removeClass("ui-dialog-dragging");
|
482
|
+
that._unblockFrames();
|
464
483
|
that._trigger( "dragStop", event, filteredUi( ui ) );
|
465
484
|
}
|
466
485
|
});
|
@@ -497,6 +516,7 @@ $.widget( "ui.dialog", {
|
|
497
516
|
handles: resizeHandles,
|
498
517
|
start: function( event, ui ) {
|
499
518
|
$( this ).addClass("ui-dialog-resizing");
|
519
|
+
that._blockFrames();
|
500
520
|
that._trigger( "resizeStart", event, filteredUi( ui ) );
|
501
521
|
},
|
502
522
|
resize: function( event, ui ) {
|
@@ -506,6 +526,7 @@ $.widget( "ui.dialog", {
|
|
506
526
|
options.height = $( this ).height();
|
507
527
|
options.width = $( this ).width();
|
508
528
|
$( this ).removeClass("ui-dialog-resizing");
|
529
|
+
that._unblockFrames();
|
509
530
|
that._trigger( "resizeStop", event, filteredUi( ui ) );
|
510
531
|
}
|
511
532
|
})
|
@@ -558,7 +579,6 @@ $.widget( "ui.dialog", {
|
|
558
579
|
},
|
559
580
|
|
560
581
|
_setOption: function( key, value ) {
|
561
|
-
/*jshint maxcomplexity:15*/
|
562
582
|
var isDraggable, isResizable,
|
563
583
|
uiDialog = this.uiDialog;
|
564
584
|
|
@@ -672,11 +692,45 @@ $.widget( "ui.dialog", {
|
|
672
692
|
}
|
673
693
|
},
|
674
694
|
|
695
|
+
_blockFrames: function() {
|
696
|
+
this.iframeBlocks = this.document.find( "iframe" ).map(function() {
|
697
|
+
var iframe = $( this );
|
698
|
+
|
699
|
+
return $( "<div>" )
|
700
|
+
.css({
|
701
|
+
position: "absolute",
|
702
|
+
width: iframe.outerWidth(),
|
703
|
+
height: iframe.outerHeight()
|
704
|
+
})
|
705
|
+
.appendTo( iframe.parent() )
|
706
|
+
.offset( iframe.offset() )[0];
|
707
|
+
});
|
708
|
+
},
|
709
|
+
|
710
|
+
_unblockFrames: function() {
|
711
|
+
if ( this.iframeBlocks ) {
|
712
|
+
this.iframeBlocks.remove();
|
713
|
+
delete this.iframeBlocks;
|
714
|
+
}
|
715
|
+
},
|
716
|
+
|
717
|
+
_allowInteraction: function( event ) {
|
718
|
+
if ( $( event.target ).closest(".ui-dialog").length ) {
|
719
|
+
return true;
|
720
|
+
}
|
721
|
+
|
722
|
+
// TODO: Remove hack when datepicker implements
|
723
|
+
// the .ui-front logic (#8989)
|
724
|
+
return !!$( event.target ).closest(".ui-datepicker").length;
|
725
|
+
},
|
726
|
+
|
675
727
|
_createOverlay: function() {
|
676
728
|
if ( !this.options.modal ) {
|
677
729
|
return;
|
678
730
|
}
|
679
731
|
|
732
|
+
var that = this,
|
733
|
+
widgetFullName = this.widgetFullName;
|
680
734
|
if ( !$.ui.dialog.overlayInstances ) {
|
681
735
|
// Prevent use of anchors and inputs.
|
682
736
|
// We use a delay in case the overlay is created from an
|
@@ -684,13 +738,11 @@ $.widget( "ui.dialog", {
|
|
684
738
|
this._delay(function() {
|
685
739
|
// Handle .dialog().dialog("close") (#4065)
|
686
740
|
if ( $.ui.dialog.overlayInstances ) {
|
687
|
-
this.
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
.data("ui-dialog")._focusTabbable();
|
693
|
-
}
|
741
|
+
this.document.bind( "focusin.dialog", function( event ) {
|
742
|
+
if ( !that._allowInteraction( event ) ) {
|
743
|
+
event.preventDefault();
|
744
|
+
$(".ui-dialog:visible:last .ui-dialog-content")
|
745
|
+
.data( widgetFullName )._focusTabbable();
|
694
746
|
}
|
695
747
|
});
|
696
748
|
}
|
@@ -699,7 +751,7 @@ $.widget( "ui.dialog", {
|
|
699
751
|
|
700
752
|
this.overlay = $("<div>")
|
701
753
|
.addClass("ui-widget-overlay ui-front")
|
702
|
-
.appendTo( this.
|
754
|
+
.appendTo( this._appendTo() );
|
703
755
|
this._on( this.overlay, {
|
704
756
|
mousedown: "_keepFocus"
|
705
757
|
});
|
@@ -711,11 +763,15 @@ $.widget( "ui.dialog", {
|
|
711
763
|
return;
|
712
764
|
}
|
713
765
|
|
714
|
-
|
715
|
-
|
716
|
-
|
766
|
+
if ( this.overlay ) {
|
767
|
+
$.ui.dialog.overlayInstances--;
|
768
|
+
|
769
|
+
if ( !$.ui.dialog.overlayInstances ) {
|
770
|
+
this.document.unbind( "focusin.dialog" );
|
771
|
+
}
|
772
|
+
this.overlay.remove();
|
773
|
+
this.overlay = null;
|
717
774
|
}
|
718
|
-
this.overlay.remove();
|
719
775
|
}
|
720
776
|
});
|
721
777
|
|