Bug 22496 - [Transforms] Input type=text rendering problems and iphone hang
Summary: [Transforms] Input type=text rendering problems and iphone hang
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Forms (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Nobody
URL:
Keywords: HasReduction
Depends on:
Blocks: 15670
  Show dependency treegraph
 
Reported: 2008-11-25 14:06 PST by Jack Schmidt
Modified: 2008-12-09 16:21 PST (History)
1 user (show)

See Also:


Attachments
Testcase: Expected behavior (bug0) (528 bytes, application/xhtml+xml)
2008-11-25 14:07 PST, Jack Schmidt
no flags Details
Testcase: mild rendering anomaly (bug1) (683 bytes, application/xhtml+xml)
2008-11-25 14:08 PST, Jack Schmidt
no flags Details
Testcase: Severe rendering anomaly (bug2) (756 bytes, application/xhtml+xml)
2008-11-25 14:09 PST, Jack Schmidt
no flags Details
Testcase: Transform damaged (bug3) (883 bytes, application/xhtml+xml)
2008-11-25 14:11 PST, Jack Schmidt
no flags Details
Testcase: Interesting variant, walking input (bug4) (866 bytes, application/xhtml+xml)
2008-11-25 14:13 PST, Jack Schmidt
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jack Schmidt 2008-11-25 14:06:22 PST
-webkit-transform and input type=text do not work together.  Transforms mangle the rendering of the inputs (bug1 and bug2), but also typing into the inputs mangles the transform (bug3 and bug4).  I also include the expected behavior (bug0).

This has been tested on Safari 3.2.1 (5525.27.1) and WebKit-SVN-r38707.dmg on Mac OS X 10.5.5 (intel macbook).

Similar but more severe problems occur in Mobile Safari on iPhone OS 2.1, but I suspect that is outside the scope of this bugzilla.  In case not:  There bug3 and bug4 causes the iPhone to hang (the keyboard shows the letter being selected, but hangs there.  Home key and sleep key are unresponsive; holding sleep then tapping home wakes it up).  This depends on the keybaord being visible.  If the keyboard is hidden (javascript is used to select the input), then bug3 and bug4 on Mobile Safari behave approximately like bug3 on Webkit SVN.
Comment 1 Jack Schmidt 2008-11-25 14:07:32 PST
Created attachment 25499 [details]
Testcase: Expected behavior (bug0)

This is just a simple form.  You should be able to type into the text box without problems.  No transforms have been applied.
Comment 2 Jack Schmidt 2008-11-25 14:08:31 PST
Created attachment 25500 [details]
Testcase: mild rendering anomaly (bug1)

This includes -webkit-transform: translate(0,0) and now there are mild rendering problems with the caret.
Comment 3 Jack Schmidt 2008-11-25 14:09:51 PST
Created attachment 25502 [details]
Testcase: Severe rendering anomaly (bug2)

Now -webkit-transform: translate(-320px,0) causes severe rendering anomalies.  The typed text does not appear after the first letter until the input control is blurred.
Comment 4 Jack Schmidt 2008-11-25 14:11:05 PST
Created attachment 25503 [details]
Testcase: Transform damaged (bug3)

Another severe rendering anomaly.  Now the transformed element is inside a div of fixed with with overflow: hidden.  Once the first letter is typed into the input control, the entire fieldset vanishes.
Comment 5 Jack Schmidt 2008-11-25 14:13:39 PST
Created attachment 25504 [details]
Testcase: Interesting variant, walking input (bug4)

This is an interesting variant where the width of the div is larger than the fieldset.  Now the input "walks" slowly off the screen to the left as text is typed.  One can use javascript to reset the transform to "translate(0,0)", but the result is still a severely translated element (though not at any particularly explainable position).
Comment 6 Simon Fraser (smfr) 2008-12-09 15:22:17 PST
Fixed via bug 15671, bug 21906 and others.
Comment 7 Jack Schmidt 2008-12-09 16:21:00 PST
I confirm the bug is fixed in the WebKit r39090 nightly.  Thanks very much!