Re: [1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info.

2010-07-22 Thread Henri Verbeet
On 22 July 2010 10:45, Louis Lenders  wrote:
> Hi Henri
>
>>I mean that I don't think the "rotation" argument to
>> GetAdapterDisplayMode() should be allowed to be NULL.
>
> I tested IDirect3D9Ex::GetAdapterDisplayModeEx and that allows pRotation to 
> be NULL, and still happily retrieves all  other (D3DDISPLAYMODEEX) info.

Well yes, but we control all the callers of
IWineD3DGetAdapterDisplayMode(), so I'd rather have the added
complexity of handling that in d3d9ex than in wined3d. I don't care
very strongly about this point though.




[1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info.

2010-07-22 Thread Louis Lenders
ok, now i really need a break, the test i wrote 10 minutes ago had a mistake, 
IDirect3D9Ex::GetAdapterDisplayModeEx _does_ allow D3DDISPLAYROTATION pointer 
to be NULL. I'll just send the test to wine-patches. Again sorry for the noise 


  




[1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info.

2010-07-22 Thread Louis Lenders
Hi Henri
>>I mean that I don't think the "rotation" argument to
>> GetAdapterDisplayMode() should be allowed to be NULL.

>I tested IDirect3D9Ex::GetAdapterDisplayModeEx and that allows pRotation to 
>>be NULL,

hmm, I remembered to have tested this, but to be sure I tested again a few 
minutes ago, and looks you were right in the end. I guess i'll have to rework 
the patch series again. sorry for the noise 


  




[1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info.

2010-07-22 Thread Louis Lenders
Hi Henri 

>I mean that I don't think the "rotation" argument to
> GetAdapterDisplayMode() should be allowed to be NULL.

I tested IDirect3D9Ex::GetAdapterDisplayModeEx and that allows pRotation to be 
NULL, and still happily retrieves all  other (D3DDISPLAYMODEEX) info. So it's 
seems logical IWineD3DGetAdapterDisplayMode is allowed to have it's rotation 
parameter NULL as well.

I attached a new series of patches to the bug 
http://bugs.winehq.org/show_bug.cgi?id=18640 

>It probably also makes sense to properly start adding the required
> support from the bottom. XRandR should be able to retrieve the display
> rotation, but if that's not available you can just let winex11.drv
> return an identity rotation.

I fear i'm completely unfamiliar with XRandr; i think right now it's beyond the 
scope of this patch series, the patch series is really meant to (partly) tackle 
bug 18640 



  




Re: [1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info. Henri Verbeet hverbeet at gmail.com

2010-07-21 Thread Henri Verbeet
On 21 July 2010 17:18, Louis Lenders  wrote:
> also thanks, i made a new patch here: http://pastebin.com/y5Kv52h0
> would that be ok?
>
Well, that patch can never work, but the change to WINED3DDISPLAYMODE
struct is what I meant, yes.

>>I also think the wined3d call should simply
>>retrieve all info, d3d9ex can discard it again if it feels like it.
>
> I don't exactly get what you mean here. Currently we can't retrieve display 
> orientation as wine's EnumDisplaySettingsExW doesn't work as expected. Once 
> EnumDisplaySettingsExW is implemented enough (for rotated stuff), 
> IWineD3DImpl_GetAdapterDisplayMode will pass back the correct display 
> orientation. Is that what you meant by remark above?
>
I mean that I don't think the "rotation" argument to
GetAdapterDisplayMode() should be allowed to be NULL. It probably also
makes sense to properly start adding the required support from the
bottom. XRandR should be able to retrieve the display rotation, but if
that's not available you can just let winex11.drv return an identity
rotation.




[1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info. Henri Verbeet hverbeet at gmail.com

2010-07-21 Thread Louis Lenders
Hi,

@Chris: thanks for the remarks, i'll adjust patch [3\4] accordingly

@Henry

also thanks, i made a new patch here: http://pastebin.com/y5Kv52h0
would that be ok?

>I also think the wined3d call should simply
>retrieve all info, d3d9ex can discard it again if it feels like it.

I don't exactly get what you mean here. Currently we can't retrieve display 
orientation as wine's EnumDisplaySettingsExW doesn't work as expected. Once 
EnumDisplaySettingsExW is implemented enough (for rotated stuff), 
IWineD3DImpl_GetAdapterDisplayMode will pass back the correct display 
orientation. Is that what you meant by remark above?

Regards



  




Re: [1\4]wined3d: Extend IWineD3D_GetAdapterDisplayMode with an extra paramater to pass back some extra adapter info.

2010-07-21 Thread Henri Verbeet
On 20 July 2010 23:25, Louis Lenders  wrote:
> +struct wined3d_adapter_info_ex
> +{
> +WINED3DSCANLINEORDERING ScanLineOrdering;
> +WINED3DDISPLAYROTATION Rotation;
> +};
You can at least add the scanline ordering to WINED3DDISPLAYMODE, it
doesn't need to be compatible with D3DDISPLAYMODE. I guess the reason
the rotation is separate in d3d9ex is because it doesn't make much
sense for enumerations like e.g. EnumAdapterModesEx(), so keeping that
one separate makes sense. I also think the wined3d call should simply
retrieve all info, d3d9ex can discard it again if it feels like it.