explorer: implement X session management

Damjan Jovanovic damjan.jov at gmail.com
Fri Jul 30 02:21:50 CDT 2010

On Fri, Jul 30, 2010 at 5:53 AM, Paul "TBBle" Hampson
<Paul.Hampson at pobox.com> wrote:
> On 30 July 2010 01:30, Dmitry Timoshkov <dmitry at codeweavers.com> wrote:
>> Damjan Jovanovic <damjan.jov at gmail.com> wrote:
>>> Changelog:
>>> * explorer: implement X session management
>> Explorer should not have X11 as a dependency. This should be implemented
>> inside of winex11.drv.
> A (previously-discussed years ago) model for DirectInput/RawInput
> handling would have given explorer.exe an X11 dependency since there
> needs to be a single process for a given wine server that handles
> direct (XI2-style) input.
> I assume session shutdown notification works the same way, but haven't
> read the above patch very hard...
> Unless you're suggesting implementing it inside winex11.drv and having
> explorer then provide winex11.drv a non-X11-specific callback for when
> a session termination message arrives, to be turned into the
> Win32-equivalent message. (Which seems less correct to me, but not
> unreasonable)
> [Apologies for the duplicate, I forget that Gmail is "Reply" by default]
> --
> Paul "TBBle" Hampson, Paul.Hampson at Pobox.com

Well the other option, which I am working on, is for each Wine process
to host all the session management code inside a winex11.drv thread
only - and send WM_[QUERY]ENDSESSION messages to its own in-process
windows. This strikes me as a better idea than using a single
Wine-global explorer thread - each process can individually name
itself to the session manager, so the user knows exactly what's
blocking shutdown.

Damjan Jovanovic

More information about the wine-devel mailing list