Only use CompositorNativeWindow11 when the window is non-null.
Only use CompositorNativeWindow11 when the window is non-null.

SurfaceD3D always instantiates a NativeWindow object even for pbuffers.
A null window pointer now creates a CompositorNativeWindow11 instead of
a NativeWindow11Win32 which instantiates an RoHelper in the constructor.
This is expensive for some use cases that create a pbuffer surface every
frame.

BUG=angleproject:2956

Change-Id: If43930d4960c2510b6b96291aab971e3f3abf665
Reviewed-on: https://chromium-review.googlesource.com/c/1333967
Reviewed-by: James Clarke <45639423646e8eb283563e92c236bd6b1234a6c0@microsoft.com>
Reviewed-by: Geoff Lang <b6fc25fe0362055230985c05cbfa8adb741ccc0f@chromium.org>
Commit-Queue: Geoff Lang <b6fc25fe0362055230985c05cbfa8adb741ccc0f@chromium.org>

ppy/angle,ppy/angle,ppy/angle,ppy/angle