Ugh, it looks like last time I pulled the latest source was just before your change went in. With the latest source everything seems to work great! At least I learned a lot debugging this issue. And most importantly .NET Core WPF on Linux seems to be working quite well. I need to do more testing but my initial testing is very encouraging.
Thanks for your help. --Chris
-----Original Message----- From: Henri Verbeet hverbeet@gmail.com Sent: Friday, August 16, 2019 7:09 AM To: Christopher Cifra christopher.cifra@ni.com Cc: wine-devel@winehq.org Subject: [EXTERNAL] Re: Re: Wine for NET Core WPF Apps
On Fri, 16 Aug 2019 at 04:42, Christopher Cifra christopher.cifra@ni.com wrote:
That makes sense and matches what I am seeing. The swapchain does have the correct window set on it by way of wined3d_swapchain_set_window. But in wined3d_context_gl_acquire we get into the rendering offscreen case:
if (current_context && current_context->current_rt.texture == texture) { ... } else if (texture && !wined3d_resource_is_offscreen(&texture->resource)) { ... } else { TRACE("Rendering offscreen.\n"); /* Stay with the current context if possible. Otherwise use the * context for the primary swapchain. */ if (current_context && current_context->device == device) context = current_context; else if (!(context = swapchain_get_context(device->swapchains[0]))) return NULL; }
Just to make sure, are you using wine-4.13 or later? What you should be seeing is that swapchain_gl_present()[1] calls context_acquire() with swapchain->frontbuffer, which is always considered onscreen by wined3d_resource_is_offscreen()[2].
Henri
[1] https://urldefense.com/v3/__https://source.winehq.org/git/wine.git/blob/wine... [2] https://urldefense.com/v3/__https://source.winehq.org/git/wine.git/blob/wine...