Bug 127077

Summary: [WebGL] Resizing and entering/exiting full screen draws garbage
Product: WebKit Reporter: Brent Fulgham <bfulgham>
Component: WebGLAssignee: Brent Fulgham <bfulgham>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, dino, kondapallykalyan, noam, roger_fong
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch dino: review+

Description Brent Fulgham 2014-01-15 17:34:09 PST
Several interactions with WebGL content can display "junk" in the GL view. This is most noticeable when resizing the WebGL view, especially when the view fills the entire WebKit frame.

The underlying problem was that the WebGL context was not being marked as needing display during resize events, causing us to attempt to map an improperly sized texture to composite to the screen.
Comment 1 Brent Fulgham 2014-01-15 17:34:25 PST
<rdar://problem/10046766>
Comment 2 Brent Fulgham 2014-01-15 17:38:43 PST
Created attachment 221321 [details]
Patch
Comment 3 WebKit Commit Bot 2014-01-15 17:40:23 PST
Attachment 221321 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp', u'Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp', '--commit-queue']" exit_code: 1
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:111:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:111:  Wrong number of spaces before statement. (expected: 16)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:131:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:311:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:313:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:311:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:313:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:311:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:313:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:313:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:313:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:328:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:328:  Wrong number of spaces before statement. (expected: 12)  [whitespace/indent] [4]
Total errors found: 13 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Dean Jackson 2014-01-15 17:44:04 PST
Comment on attachment 221321 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=221321&action=review

> Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:286
> +    TemporaryOpenGLSetting scopedDither(GL_SCISSOR_TEST, GL_FALSE);

Ooops!
Comment 5 Brent Fulgham 2014-01-15 17:47:35 PST
Committed r162105: <http://trac.webkit.org/changeset/162105>