Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#14395 closed defect (fixed)

[regression] LinkDialog on IE double click issue

Reported by: dmeunier Owned by: bill
Priority: high Milestone: 1.7.1
Component: Editor Version: 1.7.0
Keywords: Editor LinkDialog doubleClick Cc:
Blocked By: Blocking:

Description

This bug is present only in IE, load the page dijit/tests/editor/test_LinkDialog.html create a link, then when its finished double click it.

As you can see, any mouseDown, anywhere into the page (even into the popup) will close the popup.

In result it is impossible to modify the properties of a link by double clicking it.

Change History (4)

comment:1 Changed 8 years ago by bill

Component: GeneralEditor
Milestone: 1.7.1
Owner: set to bill
Status: newassigned

Oof, good catch, OK I will fix.

Notes about cause of the problem:

  1. Double-clicking a link:
    1. fires onDisplayChanged(), thus starting a setTimeout() to call onNormalizedDisplayChanged()
    2. opens the dialog, focusing the first <input>
    3. on IE, thus losing the caret/selection from the <iframe>
  2. After 200ms, onNormalizedDisplayChanged() runs, which calls updateState() on each plugin.
  3. LinkDialog.updateState() calls RichText._browserQueryCommandEnabled("createlink") which executes:
    var elem = has("ie") ? this.document.selection.createRange() : this.document;
    		try{
    			return elem.queryCommandEnabled(command);
    ...
    
  4. Since there's no selection, not even an empty selection, the LinkDialog toolbar button, along with all the other toolbar buttons, gets a disabled state.
  5. User clicks the <input>.
  6. For forgotten reasons focus.js doesn't consider disabled widgets as part of the focus chain, so the LinkDialog button gets an _onBlur() event
  7. LinkDialog button (in it's role as a DropDownButton) closes the popup
Last edited 8 years ago by bill (previous) (diff)

comment:2 Changed 8 years ago by bill

Summary: LinkDialog on IE double click issue[regression] LinkDialog on IE double click issue

comment:3 Changed 8 years ago by bill

Resolution: fixed
Status: assignedclosed

In [27285]:

On IE, doubleclicking a link would open the LinkDialog TooltipDialog, but then clicking the dialog would make it close. Fixes #14395 !strict on trunk/.

comment:4 Changed 8 years ago by bill

In [27287]:

On IE, doubleclicking a link would open the LinkDialog TooltipDialog, but then clicking the dialog would make it close. Fixes #14395 !strict on 1.7/ branch.

Note: See TracTickets for help on using tickets.