Sam Edwards cfsworks@gmail.com writes:
This patch adds an event handler to xrandr.c to process RRScreenChangeNotify events, so that when non-Wine applications change the display resolution, Wine can find out about it.
Two main discussion points:
- Previously, there was nothing pulling events out of gdi_display's
queue, thus necessitating the need for a new event handler. I opted to put it in xrandr.c since this handler only manages XRandR events, but it might be cleaner to move it over to event.c.
- Are we okay with having to call the event handler, or would this
work better in a continuously-running background thread instead?
It's okay only because you are not actually calling it ;-)
But no, you can't select for events on the gdi display; actually I don't think you want to do it this way at all. Handling external resizes should be done in the desktop process, and most likely involves the wineserver too. It certainly won't be an easy task.