Summary: | REGRESSION(r139282): Old caret sometimes gets "stuck" (not repainted) in contenteditable elements. | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Andreas Kling <kling> | ||||||||||||||||
Component: | HTML Editing | Assignee: | Andreas Kling <kling> | ||||||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||||||
Severity: | Normal | CC: | barraclough, buildbot, enrica, kling, rniwa, simon.fraser | ||||||||||||||||
Priority: | P2 | Keywords: | InRadar, Regression | ||||||||||||||||
Version: | 528+ (Nightly build) | ||||||||||||||||||
Hardware: | Unspecified | ||||||||||||||||||
OS: | Unspecified | ||||||||||||||||||
Attachments: |
|
Description
Andreas Kling
2013-08-06 06:53:47 PDT
Trivial to reproduce: 1. Open a page with a contenteditable element e.g: data:text/html,<div contenteditable> 2. Focus the editable element and insert two newlines. 3. Move the caret to the first line. 4. Enter a character, e.g 'x'. 5. Press backspace to delete the character again. 6. Look at the blinking caret. 7. Press the return key when the caret is "visible". The caret will still be visible on the first line, but blinking only on the second. Created attachment 208187 [details]
Patch
Comment on attachment 208187 [details] Patch Attachment 208187 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1354190 New failing tests: fast/repaint/caret-jump-between-nodes.html Created attachment 208191 [details]
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-09 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.4
Created attachment 208272 [details]
Patch for landing (hopefully)
Comment on attachment 208272 [details] Patch for landing (hopefully) Attachment 208272 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/1384303 New failing tests: fast/repaint/caret-jump-between-nodes.html Created attachment 208278 [details]
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-04 Port: mac-mountainlion Platform: Mac OS X 10.8.4
Created attachment 208282 [details]
Patch for landing perhaps.
Comment on attachment 208282 [details] Patch for landing perhaps. Attachment 208282 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1384342 New failing tests: fast/repaint/caret-jump-between-nodes.html Created attachment 208291 [details]
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-15 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.4
Comment on attachment 208272 [details] Patch for landing (hopefully) Attachment 208272 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/1432006 New failing tests: fast/repaint/caret-jump-between-nodes.html Created attachment 208309 [details]
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-09 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.4
Comment on attachment 208282 [details] Patch for landing perhaps. Clearing flags on attachment: 208282 Committed r153815: <http://trac.webkit.org/changeset/153815> All reviewed patches have been landed. Closing bug. Last EWS failure diff didn't match the expected results in my patch. Will deal with any fallout on bots manually. The test added by this patch has been failing on all bots: http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Frepaint%2Fcaret-jump-between-nodes.html --- /Volumes/Data/slave/mountainlion-release-tests-wk1/build/layout-test-results/fast/repaint/caret-jump-between-nodes-expected.txt +++ /Volumes/Data/slave/mountainlion-release-tests-wk1/build/layout-test-results/fast/repaint/caret-jump-between-nodes-actual.txt @@ -5,7 +5,6 @@ (rect 8 44 100 100) (rect 8 44 100 100) (rect 3 39 110 110) - (rect 8 44 1 18) (rect 8 44 1 18) (rect 3 39 110 110) (rect -5 -5 5 610) Landed the change to make expectations match Mac in <http://trac.webkit.org/r154017>. Earlier, Zan landed platform specific results for Gtk in r153996. Andreas, this was making bots red for 5 days. Can you please look into why tests results are different, and platform dependent? Perhaps you could use a cross-platofrm font like such as Ahem? Looks like this fixed WK1, but broke WK2 bots. I got cross-platform metrics working in <http://trac.webkit.org/r154062> but the caret still blinks an inconsistent number of times per run. Removed the test in <http://trac.webkit.org/r154065> to stop flaky redness on bots. I suspect this is not (100% reliably) testable with the current testing framework. |