Skip to main content

Search and Top Navigation

#10527 closed bug (fixed)

Opened August 08, 2014 10:50PM UTC

Closed August 17, 2014 06:15PM UTC

Last modified September 09, 2014 07:15PM UTC

Draggable: Can't select option in modal dialog (IE8)

Reported by: grea Owned by:
Priority: minor Milestone: 1.11.2
Component: ui.draggable Version: 1.11.0
Keywords: regression Cc:
Blocked by: Blocking:
Description

The bug only appears in a modal dialog (jQuery UI 1.11 + IE8).

Start typing the word and select it with the mouse. Option is not selected.

If you make a long press of the mouse on the menu item, the list will disappear before the event mouseup

http://jsbin.com/igeqam/75/edit

Attachments (0)
Change History (12)

Changed August 09, 2014 03:34PM UTC by tj.vantoll comment:1

keywords: → regression
status: newopen
summary: Mouse not select autocomplete in modal dialog (IE8)Autocomplete: Can't select option in modal dialog (IE8)

Confirmed against master. This works in 1.10.4, IE9, and non-modal dialogs.

So this is indeed specific to modal dialogs in IE8 with 1.11.

Changed August 14, 2014 02:31PM UTC by tj.vantoll comment:2

component: ui.autocompleteui.draggable
summary: Autocomplete: Can't select option in modal dialog (IE8)Draggable: Can't select option in modal dialog (IE8)

I tracked this down to a

$( document.activeElement ).blur()
call in draggable (see https://github.com/jquery/jquery-ui/blob/2d03839c07a33d14ec7b31b2d4290a8ce6fc0cef/ui/draggable.js#L108), that was introduced in https://github.com/jquery/jquery-ui/commit/fcd1cafac8afe3a947676ec018e844eeada5b9de#diff-d41d8cd98f00b204e9800998ecf8427e.

In Chrome and IE8 the

activeElement
is set to the
<input>
, but because IE8—in its infinite wisdom—handles blur calls synchronously, the menu gets closed immediately and the mouse click event never gets to the autocomplete widget. Adding a
setTimeout
fixes the issue, but it crushes my soul a little to add another level of complexity to an already insane block of code—nevertheless I shall. Forgive me internet. Forgive me.

Changed August 14, 2014 02:52PM UTC by tj.vantoll comment:3

Changed August 15, 2014 02:07PM UTC by mikesherov comment:4

Just an update. tj.vantoll and I discovered the true caus eof the bug, which he's working on.

Changed August 15, 2014 03:13PM UTC by tj.vantoll comment:5

Changed August 17, 2014 06:15PM UTC by TJ VanToll comment:6

resolution: → fixed
status: openclosed

Draggable: Only blur the focused element if the event occurs on a handle

Fixes #10527

Changeset: 075421d6d965c66055e47cde477f0ce2e23f1755

Changed August 17, 2014 06:15PM UTC by Mike Sherov comment:7

Draggable: Only focus the draggable if the event occurs on a handle

Refs #10527

Changeset: d10440fe44c840dd5c69c4efb1c06d2636fa11c6

Changed August 17, 2014 06:15PM UTC by mikesherov comment:8

milestone: none1.11.2

Changed August 18, 2014 11:14AM UTC by mikesherov comment:9

#10230 is a duplicate of this ticket.

Changed August 25, 2014 04:53PM UTC by scottgonzalez comment:10

#10567 is a duplicate of this ticket.

Changed September 09, 2014 12:22PM UTC by scottgonzalez comment:11

#10591 is a duplicate of this ticket.

Changed September 09, 2014 07:15PM UTC by tj.vantoll comment:12

#10592 is a duplicate of this ticket.