
Recent SharedImage changes always assumed the presence of a D3D11 device. When graphite runs with D3D12, no D3D11 device was provided to the D3DImageBackingFactory constructor, causing it to crash At the same time, since InitializeDirectComposition is always called with ANGLE's D3D11 device, it incorrectly, returned true for IsD3DSharedImageSupported and crashed when the renderer process sent it scanout images. The CL rearranges GPU initialization such that DirectComposition is initialized after the Dawn context provider, thus providing it the correct D3D11 device, or no D3D11 device if there is none. IsD3DSharedImageSupport is provided with the SharedContextState so it can learn the truth about there being no D3D11 device. With these changes, D3DSharedImageFactory is never created and no scanout images are requested from the renderer process. Graphite on D3D12 boots and is able to draw basic web pages. Future CLs will slowly bring back SharedImage capability when Graphite runs on D3D12. Bug: 396312708 Change-Id: I30860ecd523eb158e57b2c65f9be4d6ce246fbcc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6288547 Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Cr-Commit-Position: refs/heads/main@{#1423478}
This directory contains UI frameworks used to build various user interface features. This directory is not intended to contain UI features (such as a keyboard).