Fixed bug #803
Andrey 2009-09-21 19:14:43 PDT gapi->hiresFix depends on the parameters GetSystemMetrics (SM_CXSCREEN) and GetSystemMetrics (SM_CXSCREEN). After the "Open GAPI display" they are changing. Small patch fixed it. --HG-- branch : SDL-1.2 extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403887
This commit is contained in:
parent
b35b7e8cf4
commit
909c0ec5a1
2 changed files with 12 additions and 1 deletions
|
@ -776,9 +776,14 @@ SDL_Surface *GAPI_SetVideoMode(_THIS, SDL_Surface *current,
|
||||||
*/
|
*/
|
||||||
WIN_FlushMessageQueue();
|
WIN_FlushMessageQueue();
|
||||||
|
|
||||||
/* Open GAPI display */
|
/* Open GAPI display */
|
||||||
if( !gapi->useVga && gapi->useGXOpenDisplay && !gapi->alreadyGXOpened )
|
if( !gapi->useVga && gapi->useGXOpenDisplay && !gapi->alreadyGXOpened )
|
||||||
{
|
{
|
||||||
|
#if REPORT_VIDEO_INFO
|
||||||
|
printf("system display width (orig): %d\n", GetSystemMetrics(SM_CXSCREEN));
|
||||||
|
printf("system display height (orig): %d\n", GetSystemMetrics(SM_CYSCREEN));
|
||||||
|
#endif
|
||||||
|
gapi->hiresFix = (width > GetSystemMetrics(SM_CXSCREEN)) || (height > GetSystemMetrics(SM_CYSCREEN));
|
||||||
gapi->alreadyGXOpened = 1;
|
gapi->alreadyGXOpened = 1;
|
||||||
if( !gapi->gxFunc.GXOpenDisplay(SDL_Window, GX_FULLSCREEN) )
|
if( !gapi->gxFunc.GXOpenDisplay(SDL_Window, GX_FULLSCREEN) )
|
||||||
{
|
{
|
||||||
|
|
|
@ -92,6 +92,12 @@ static void GapiTransform(GapiInfo *gapiInfo, LONG *x, LONG *y) {
|
||||||
Sint16 rotatedX;
|
Sint16 rotatedX;
|
||||||
Sint16 rotatedY;
|
Sint16 rotatedY;
|
||||||
|
|
||||||
|
if(gapiInfo->hiresFix)
|
||||||
|
{
|
||||||
|
*x *= 2;
|
||||||
|
*y *= 2;
|
||||||
|
}
|
||||||
|
|
||||||
if(gapiInfo->userOrientation == SDL_ORIENTATION_UP &&
|
if(gapiInfo->userOrientation == SDL_ORIENTATION_UP &&
|
||||||
gapiInfo->gapiOrientation == SDL_ORIENTATION_RIGHT)
|
gapiInfo->gapiOrientation == SDL_ORIENTATION_RIGHT)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue