[PATCH 9/9] wined3d: Pass WM_SYSCOMMAND(SC_RESTORE) to DefWindowProc.

Henri Verbeet hverbeet at gmail.com
Mon Jan 19 07:45:57 CST 2015


On 19 January 2015 at 13:59, Stefan Dösinger <stefandoesinger at gmail.com> wrote:
> Am 2014-12-08 um 12:04 schrieb Henri Verbeet:
>>> +        {
>>> +            if (unicode)
>>> +                DefWindowProcW(window, message, wparam, lparam);
>>> +            else
>>> +                DefWindowProcA(window, message, wparam, lparam);
>>> +        }
>>> +    }
>>>
>>> if (unicode) return CallWindowProcW(proc, window, message, wparam, lparam);
>> Is this really how it's supposed to work? In particular, should
>> DefWindowProc really always get the message before the application
>> does, or should we give the application a chance first, and only
>> pass to DefWindowProc if it doesn't handle the message?
> That's how I read the test results. I get the messages resulting from
> the WM_SYSCOMMAND(SC_RESTORE) handling before I see the WM_SYSCOMMAND
> message itself. This is different from the other WM_SYSCOMMAND
> operations where the WM_SYSCOMMAND arrives first, and the rest of the
> messages is triggered by the wndproc calling DefWindowProc.
>
It's been a while since I looked at this patch set in detail, but IIRC
the test didn't distinguish between DefWindowProc or the application
getting the message first. I.e., it would still pass if the
application got the message before DefWindowProc instead of the other
way around, which arguably would be the more logical order. Perhaps I
misremember though.



More information about the wine-devel mailing list