In order for individual web views to have the correct OpenGL mask set, it should no be a global, but be moved into the Chrome class.
<rdar://problem/40724854>
Created attachment 341858 [details] Patch
Attachment 341858 [details] did not pass style-queue: ERROR: Source/WebCore/platform/graphics/cocoa/IOSurface.h:110: The parameter name "hostWindow" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/platform/graphics/ImageBuffer.h:69: The parameter name "hostWindow" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/platform/graphics/ImageBuffer.h:170: The parameter name "hostWindow" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/page/Chrome.h:183: The parameter name "displayMask" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/platform/graphics/GraphicsContext3D.h:1319: The parameter name "hostWindow" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 5 in 25 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 341858 [details] Patch Attachment 341858 [details] did not pass win-ews (win): Output: http://webkit-queues.webkit.org/results/7956074 New failing tests: http/tests/security/canvas-remote-read-remote-video-blocked-no-crossorigin.html
Created attachment 341862 [details] Archive of layout-test-results from ews206 for win-future The attached test failures were seen while running run-webkit-tests on the win-ews. Bot: ews206 Port: win-future Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Created attachment 341913 [details] Patch
Created attachment 341930 [details] Patch
Created attachment 341933 [details] Patch
Created attachment 341935 [details] Patch
Created attachment 341937 [details] Patch
Created attachment 341950 [details] Patch
Created attachment 341971 [details] Patch
Created attachment 341972 [details] Patch
Comment on attachment 341972 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=341972&action=review Can you create a TestWebkitAPI test to confirm the right mask goes to the right WebView? We might not have infrastructure to support that. > Source/WebCore/platform/mac/PlatformScreenMac.mm:138 > + screenProperties.primaryOpenGLDisplayMask = displayMask; You might not need this special case if you used "screenData(primaryScreenDisplayID()).displayMask" as the implementation elsewhere. > Source/WebCore/platform/mac/PlatformScreenMac.mm:167 > + return screenProperties().primaryOpenGLDisplayMask; This could also be: return screenData(primaryScreenDisplayID()).displayMask; But perhaps this code path is hit frequently enough that you don't want to do the extra lookups?
Comment on attachment 341972 [details] Patch Per Arne and I spoke in person, and I think this patch is correct. We will file a bug about multiple-display test support and building up testing infrastructure to support such things.
Created attachment 341990 [details] Patch
Created attachment 341995 [details] Patch
Created attachment 342022 [details] Patch
Comment on attachment 342022 [details] Patch Clearing flags on attachment: 342022 Committed r232535: <https://trac.webkit.org/changeset/232535>