#17732 closed defect (fixed)
dropdowns don't appear on iOS RTL w/zoom, horizontal scrollbar
Reported by: | bill | Owned by: | bill |
---|---|---|---|
Priority: | undecided | Milestone: | 1.7.6 |
Component: | Dijit | Version: | 1.9.2 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description (last modified by )
Try the attached test cases on iPhone/iPad and see that the drop downs don't appear, especially when the screen is zoomed. Actually, the drop downs are appearing, but due to a miscalculation they are positioned offscreen, (for example) at right: -300px
.
This seems partly due to #17330 and #17331, and partly due to a bug in place.js in the code that sets popup.style.right:
s[l ? "left" : "right"] = (l ? best.x : view.w - best.x - best.w) + "px";
Rather than view.w
, it should be using the width of the document, win.body(node.ownerDocument).clientWidth
.
The simplest fix though seems to be to always set style.left, rather than setting style.right when the page is RTL.
Note that this is how place.js used to work. The code to set style.right came from 33dc9b874f74e1bf180f9cb6f3c14d13a0fb7a90 aka [23866] (refs #5777). It was added so popup position would automatically adjust on screen resizes (in the common case), but in 1.9+ it's largely superseded by f7e1c27065a0c3179fe8ec20f68eef11e035b7cb aka [30911] (also refs #5777).
Attachments (2)
Change History (8)
Changed 7 years ago by
Attachment: | DojoTest.html added |
---|
comment:1 Changed 7 years ago by
Description: | modified (diff) |
---|
comment:2 Changed 7 years ago by
Milestone: | tbd → 1.7.6 |
---|---|
Owner: | set to bill |
Status: | new → assigned |
comment:3 Changed 7 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
run on iPhone (portrait mode)