"Dimitrie O. Paun" dpaun@rogers.com writes:
This is not necessarily so. That's why you have a Start/End pair. It lets you collect the exposure events that happen between the two brackets.
Then you force the driver to collect them for the End call, which in many cases is not necessary (especially since USER is already collecting them in the update region). Or you allow the driver to do exposures at any time, and you don't need the Start/End. Either way it's not a good interface.
But regardless, I was looking at ShowWindow, and I don't understand what is it doing in the USER driver. It's just a wrapper arount SetWindowPos (which should be in the driver). Why have this one in there in the first place? The driver has to implement the functionality in SetWindowPos anyway, it can not do a better job for ShowWindow. Even if it can, the current implementation should be as a fallback in USER, not in the driver.
ShowWindow does a lot more than SetWindowPos. It handles minimize/maximize which needs to interact with the window manager (it does this pretty badly at the moment but this will be fixed, and can only be fixed precisely because ShowWindow is now in the driver).