http://bugs.winehq.org/show_bug.cgi?id=58921 --- Comment #12 from Wehrwolfmann <wehrwolfmann@gmail.com> --- In reply to comment #11: the black embedded panel reproduces here too, and it reproduces without WebView2 or NinjaTrader, so it can be tested directly. I wrote a small probe that walks the whole path by hand: create the DComp device, CreateSwapChainForComposition, paint one red frame, SetContent, SetRoot, Commit, then read a pixel back from the screen. Three variants of the target window, wine-staging 11.17, fresh 64-bit prefix, win10, Xvfb, llvmpipe: A. WS_EX_NOREDIRECTIONBITMAP only -> red, frame is visible B. WS_EX_LAYERED|WS_EX_NOREDIRECTIONBITMAP -> black, frame never arrives C. as B, plus SetLayeredWindowAttributes(LWA_ALPHA) -> red again All calls return S_OK in every variant; the only fixmes are the known semi-stubs of Commit and visual_SetContent. That is the difference. The staging patchset presents by blitting the front buffer into GetDCEx(target->hwnd) once per frame. That reaches the screen for an ordinary window and for a layered window driven by SetLayeredWindowAttributes, but not for a layered window driven by UpdateLayeredWindow, which is what an embedded rootless panel uses. It matches comment #11 exactly: the separate top-level windows (DevTools, context menu) render, the embedded Chat panel does not. One false trail worth removing: the QI failure on {4ca97a18-cbfd-4b0d-89e1-f7fa86d8d63e} and DCompositionCreateDevice3 returning E_NOINTERFACE are not the cause. I logged the same E_NOINTERFACE on 2026-08-14 while a full WebView2 UI was rendering correctly (comment #10), and the fork that works for the reporter fails that QI as well. The IID is not in dcomp.idl, not in the public SDK header set, and not among the undocumented interfaces the patchset answers. For completeness on vanilla: 11.17 and 11.18 still return E_NOTIMPL from all three DCompositionCreateDevice* entry points, so this is a staging-only discussion for now. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.