That's a good point. I was doing all my testing in 16-bit modes. I shall try some with higher bit depths and see what happens. I was concerned about reporting a mode that is not real as the application could think it really got the bit depth it asked for and do something bad. (The old code with the hardcoded depths did this, but I would always pick the one that matched my X depth anyway whenever the app gave me a choice.) Could it just be that if the depth is 24, we should return 32?
Well, we should (and I have a patch to this effect sitting in my tree for a long time now). But the best would be, of course, to support both 24/24 and 24/32 properly.
But for that I need a 24/24 system to test on :-)
I did it this way because I asked Alexandre about splitting between USER and X11DRV and he said it was best to put all the functionality in X11DRV, at least for now, in case some other driver needed a different split. I believe that some of it surely could be in USER as I think it would apply to all drivers. Does anyone else have strong opinions?
Well, I was just saying this as you told that you needed to export this function and so I tried to propose a solution. I do not have a strong opinion on this anyway :-)
If I ran it in desktop mode, the game automatically sized itself to the size of the desktop. If I wanted to change the size, I just defined the desktop to be a different size. Previously, it could either make itself too big or too small for the desktop. The others handled the lack of switching gracefully.
Well, it's just that if I want to play in 640x480 with my standard 800x600 desktop I could change the resolution in HalfLife for example without having to change the Wine config :-)
But I agree that it's not that big a problem.
The desktop or "real" size is returned as the only available mode if XVidMode is disabled. I personally think this behavior makes sense. If I want the app to be a different size, I give it a custom desktop setting in the config file. The other option that seemed interesting would be to consider allowing changing of the size of the desktop window.
Yeah, this could be possible.
Anyway, there is not only Desktop mode but people which either do not have XVidMode or who have it disabled... Should they always play HalfLife or games using their desktop size or will they be allowed to change the resolution ?
For exemple, I will always disable XVidMode in my config (I hate automatic switch as when I want really to play, I start a second X server at the right size :-) ). But I sill would like to be able to change the size of the games I want to debug.
My fear with that is that an app could think the change happened and behave badly!
Well, this is what Wine did for 10 years now and nobody ever complained :-)