Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#11461 closed defect (fixed)

ComboBox: drop down alignment off due to scrollbar (RTL)

Reported by: bill Owned by: bill
Priority: high Milestone: 1.6
Component: Dijit - Form Version: 1.5
Keywords: Cc:
Blocked By: Blocking:

Description (last modified by bill)

See test_ComboBox.html. On FF and IE, the third drop down is misaligned by the width of the scroll bar:

Also, on IE, after removing the DOCTYPE declaration from _autoComplete.html (forcing it to quirks mode), the second drop down box is slightly misaligned:

I assume this is different than #11376 since it happens when the document isn't scrolled horizontally.

There's also a possibly related problem where click the drop down button makes the document jump back to having no horizontal scroll.

Attachments (2)

combo2.png (13.5 KB) - added by bill 9 years ago.
combo3.png (13.3 KB) - added by bill 9 years ago.

Download all attachments as: .zip

Change History (7)

Changed 9 years ago by bill

Attachment: combo2.png added

Changed 9 years ago by bill

Attachment: combo3.png added

comment:1 Changed 9 years ago by bill

Description: modified (diff)

comment:2 Changed 9 years ago by bill

Summary: drop down alignment problems in RTL modeComboBox: drop down alignment off due to scrollbar (RTL)

I suspect the problem is due to not accounting for the scrollbar (and which side of the drop down it appears on).

comment:3 Changed 9 years ago by bill

Milestone: tbd1.6
Owner: set to bill
Status: newassigned

I'll fix this as part of #9945

comment:4 Changed 9 years ago by bill

Resolution: fixed
Status: assignedclosed

(In [22660]) Convert ComboBox to extend _HasDropDown. The migration involved:

  • make ComboBox use the code in _HasDropDown to open/close/size the drop down, and the code to monitor for clicks/keypresses to open/close drop down
  • a lot of renaming: this._popupWidget --> this.dropDown, this.downArrowNode --> this._buttonNode, this.comboNode --> this.domNode, this._isShowingNow --> this._opened, _onKeyPress --> _onKey, _hideResultList --> closeDropDown
  • removed "state" from _HasDropDown since it conflicted with ValidationTextBox.state and since it had the same meaning as this._opened
  • added maxHeight: -1 setting to _HasDropDown to cap the drop down size to what will fit in the viewport

Since ComboBox's drop down opens asynchronously this was a tricky change, because _HasDropDown wasn't really designed for the drop down to open asynchronously, except for the first time it's shown, when it's loading from an href.

Fixes #9945, #11461 !strict. Refs #10229 but doesn't fix completely.

comment:5 Changed 9 years ago by bill

Component: DijitDijit - Form
Note: See TracTickets for help on using tickets.