Skip to content

Commit

Permalink
Merge remote branch 'kborchers/bug_7686'
Browse files Browse the repository at this point in the history
  • Loading branch information
scottgonzalez committed Sep 16, 2011
2 parents cd73501 + af76ad1 commit a60a99e
Showing 1 changed file with 14 additions and 15 deletions.
29 changes: 14 additions & 15 deletions ui/jquery.ui.datepicker.js
Expand Up @@ -636,10 +636,10 @@ $.extend(Datepicker.prototype, {
return;
var inst = $.datepicker._getInst(input);
if ($.datepicker._curInst && $.datepicker._curInst != inst) {
if ( $.datepicker._datepickerShowing ) {
$.datepicker._triggerOnClose($.datepicker._curInst);
}
$.datepicker._curInst.dpDiv.stop(true, true);
if ( inst && $.datepicker._datepickerShowing ) {
$.datepicker._hideDatepicker( $.datepicker._curInst.input[0] );
}
}
var beforeShow = $.datepicker._get(inst, 'beforeShow');
var beforeShowSettings = beforeShow ? beforeShow.apply(input, [input, inst]) : {};
Expand Down Expand Up @@ -790,14 +790,6 @@ $.extend(Datepicker.prototype, {
return [position.left, position.top];
},

/* Trigger custom callback of onClose. */
_triggerOnClose: function(inst) {
var onClose = this._get(inst, 'onClose');
if (onClose)
onClose.apply((inst.input ? inst.input[0] : null),
[(inst.input ? inst.input.val() : ''), inst]);
},

/* Hide the date picker from view.
@param input element - the input field attached to the date picker */
_hideDatepicker: function(input) {
Expand All @@ -820,8 +812,11 @@ $.extend(Datepicker.prototype, {
(showAnim == 'fadeIn' ? 'fadeOut' : 'hide'))]((showAnim ? duration : null), postProcess);
if (!showAnim)
postProcess();
$.datepicker._triggerOnClose(inst);
this._datepickerShowing = false;
var onClose = this._get(inst, 'onClose');
if (onClose)
onClose.apply((inst.input ? inst.input[0] : null),
[(inst.input ? inst.input.val() : ''), inst]);
this._lastInput = null;
if (this._inDialog) {
this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' });
Expand All @@ -843,12 +838,16 @@ $.extend(Datepicker.prototype, {
_checkExternalClick: function(event) {
if (!$.datepicker._curInst)
return;
var $target = $(event.target);
if ($target[0].id != $.datepicker._mainDivId &&

var $target = $(event.target),
inst = $.datepicker._getInst($target[0]);

if ( ( ( $target[0].id != $.datepicker._mainDivId &&
$target.parents('#' + $.datepicker._mainDivId).length == 0 &&
!$target.hasClass($.datepicker.markerClassName) &&
!$target.hasClass($.datepicker._triggerClass) &&
$.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI))
$.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI) ) ) ||
( $target.hasClass($.datepicker.markerClassName) && $.datepicker._curInst != inst ) )
$.datepicker._hideDatepicker();
},

Expand Down

0 comments on commit a60a99e

Please sign in to comment.