[Webkit-unassigned] [Bug 187959] New: REGRESSION: DOM Manipulation

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jul 24 09:23:06 PDT 2018


https://bugs.webkit.org/show_bug.cgi?id=187959

            Bug ID: 187959
           Summary: REGRESSION: DOM Manipulation
           Product: WebKit
           Version: Other
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: jalkut at red-sweater.com
                CC: bfulgham at webkit.org, simon.fraser at apple.com,
                    zalan at apple.com

Created attachment 345680

  --> https://bugs.webkit.org/attachment.cgi?id=345680&action=review

Sample HTML file to reproduce hairline selection highlighting defect

A in the WebKit shipping with Mojave causes drawing glitches when rendering lines of text, ranging from slight pixel-height lines underneath the text lines, to full blacked/whited out rectangles. The problem seems to be exacerbated by a specific kind of DOM manipulation that the TinyMCE project performs while editing text. I've isolated three test cases that I'm guessing are all related to the same underlying problem.

Subcase #1:

1. Open attached "Browser-Based Demo.html" in Safari Version 12.0 (14606.1.24.40.1).
2. Click in the content (anywhere purple).
3. Press Cmd-A to "Select All".

Expected: the selection indicator should be contiugous.
Actual: there is hairline gap between the bottom line's selection highlight, and the line above it. See "Browser-Based Screenshot". Selecting "Force Repaint" from Safari's Debug menu redraws the highlight correctly.

Subcase #2:

1. Open attached "Xcode-Based Demo".
2. Build and Run.
3. Click in the content.
4. Type furiously.

Expected: the typing should proceed without any break in the purple background of the view.
Actual: As the webview's embedded JavaScript performs DOM manipulations based on the keypresses, you will see white flashes around the edited paragraph.

Subcase #3:

The above tests are attempts to crystallize the actual bug affecting my shipping app, MarsEdit. Particularly when the app is in "Typewriter Mode", the combination of DOM manipulations, and perhaps the live scrolling of the webview's content, creates a consistent problem with white hairline defects appearing on the screen.

1. Open attached MarsEdit.app
2. Cancel creating a new blog/setup.
3. Create new document.
4. Select Edit -> Rich Text.
5. Select View -> Typewriter Scrolling.
6. Open Preferences -> Editor, and change the background editing color to something non-white.
7. Click in the blog post content editor and start typing.

Expected: the typing should proceed without any break in the purple background of the view.
Actual: similarly to the test app above, white flashes occur and sometimes single pixel white underlines. The white hairline version of the defect can be persistent and seems to survive redraws in some cases.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180724/6968215d/attachment.html>


More information about the webkit-unassigned mailing list