On Fri, Jul 30, 2010 at 5:53 AM, Paul "TBBle" Hampson <[email protected]> wrote: > On 30 July 2010 01:30, Dmitry Timoshkov <[email protected]> wrote: >> Damjan Jovanovic <[email protected]> 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, [email protected] >
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
