[PATCH resend 2/2] ddraw: Remove topmost style when going from exclusive mode to normal.
Gabriel Ivăncescu
gabrielopcode at gmail.com
Tue Dec 28 11:18:40 CST 2021
On 28/12/2021 18:16, Henri Verbeet wrote:
> On Mon, 27 Dec 2021 at 15:32, Gabriel Ivăncescu <gabrielopcode at gmail.com> wrote:
>> @@ -970,6 +970,9 @@ static HRESULT ddraw_set_cooperative_level(struct ddraw *ddraw, HWND window,
>>
>> if (!(cooplevel & DDSCL_EXCLUSIVE) && (ddraw->cooperative_level & DDSCL_EXCLUSIVE))
>> {
>> + if (!(cooplevel & DDSCL_NOWINDOWCHANGES))
>> + SetWindowPos(window, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
>> +
>
> Something similar to patch 1/2 in this series applies here; it's not
> immediately obvious from the tests whether this is the correct place
> to do this, or whether something similar should be done for other
> versions of D3D.
>
I'll try to test and see what happens with other D3D versions, maybe we
already have tests that would start failing if I did... but for this one
in particular, I don't think it's possible to move it to wined3d without
some ddraw-exclusive flag.
I mean, this only happens with the DDSCL_NOWINDOWCHANGES cooplevel flag,
which is ddraw specific to this function. And it happens when the API is
called to exit exclusive mode with this flag unset. How is wined3d
supposed to know this?
More information about the wine-devel
mailing list