Samsung R810 whitescreen issue | developer.brewmp.com Samsung R810 whitescreen issue | developer.brewmp.com

Developer

Samsung R810 whitescreen issue

Forums:

Hi,
I am facing whitescreen issue in my app on Samsung R810 touchscreen phone.
Issue:
1. launch app
2. tap textbox.
3. goes to SKP.
4. Rotate to display QWERTY keypad mode.
5. Type.
6. Press 'Done' in QWERTY mode only
7. I Get EVT_USER
8. Redraw my app screen. I see a whitescreen on my app with just Textcontol visible.

1. launch app
2. tap textbox.
3. goes to SKP.
4. 'Don't' Rotate to display QWERTY keypad mode.
5. Type.
6. Press 'Done' in portrait mode only
7. I Get EVT_USER
8. Redraw my app screen. Screen is drawn properly.

Did anyone face similar issues? I am not doing any rotation based drawing in my app. Also I saw some threads in forum regarding the whitescreen issue, I found that it could be due to ITEXTCTL_SetRect. I also tried commenting this line in Redraw of Text control but same issues.

Please help.

~sam

EVT_USER is application specific. Is your app generating this event ?
Also, what is SKP ?

EVT_USER is application specific. Is your app generating this event ?
Also, what is SKP ?

As per the application note of this phone, our app will get EVT_USER if user pressed DONE or CLR on Soft Key Pad (SKP)
~sam

As per the application note of this phone, our app will get EVT_USER if user pressed DONE or CLR on Soft Key Pad (SKP)
~sam

I am facing same problem, did you find any solution to that?

I am facing same problem, did you find any solution to that?

It looks like when the screen is rotated, the display is cleared. Do you redraw the fullscreen or just the text control ?

It looks like when the screen is rotated, the display is cleared. Do you redraw the fullscreen or just the text control ?

After white screen comes if i touch the screen ones, the white screen goes off and the desired screen comes back..... Can anyone suggest any solution to this problem, this is very urgent

After white screen comes if i touch the screen ones, the white screen goes off and the desired screen comes back..... Can anyone suggest any solution to this problem, this is very urgent

Did you find any solution?

Did you find any solution?

Hey,
I found the solution, just posting on web so that it can help everyone!
ADD Dependency DISPSETTINGS in MIF file
in handleevent()
{
..................
case EVT_SCR_ROTATE:
Rotate_Screen();
return TRUE;
...........

void Rotate_Screen()
{
AEEScrOrientation retval = 0;
int size = sizeof(retval);
AEEDeviceInfo di;
AEERect rect;
CBaseCanvas* pCurScreen = m_pScreenMgr->GetTopScreen();
char buf[10];
ISHELL_GetDeviceInfoEx( pMe->m_pIShell, AEE_DEVICESTATE_SCR_ORIENTATION,(void*)&retval, &size );
DBGPRINTF("retval:%d",retval);
switch (retval)
{
case 1: //landscape
DBGPRINTF("landscape");
STRCPY(buf, "r:90");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf)); break;
case 0: //portrait
STRCPY(buf, "r:0");
DBGPRINTF("potrait");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf));
break;
default:
STRCPY(buf, "r:0");
DBGPRINTF("Potrait");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf));
break;
}
ISHELL_GetDeviceInfo(pMe->m_pIShell, &di);
SETAEERECT(&rect,0,0,di.cxScreen,di.cyScreen);
IDISPLAY_SetClipRect(pMe->m_pIDisplay, &rect);
IDISPLAY_GetClipRect(pMe->m_pIDisplay, &rect);
//Redraw your current page and u need to take care of ur drawing object x,y ...
IDISPLAY_UpdateEx(pMe->m_pIDisplay, false);
//IDISPLAY_Update(pMe->m_pIDisplay);
}

Hey,
I found the solution, just posting on web so that it can help everyone!
ADD Dependency DISPSETTINGS in MIF file
in handleevent()
{
..................
case EVT_SCR_ROTATE:
Rotate_Screen();
return TRUE;
...........

void Rotate_Screen()
{
AEEScrOrientation retval = 0;
int size = sizeof(retval);
AEEDeviceInfo di;
AEERect rect;
CBaseCanvas* pCurScreen = m_pScreenMgr->GetTopScreen();
char buf[10];
ISHELL_GetDeviceInfoEx( pMe->m_pIShell, AEE_DEVICESTATE_SCR_ORIENTATION,(void*)&retval, &size );
DBGPRINTF("retval:%d",retval);
switch (retval)
{
case 1: //landscape
DBGPRINTF("landscape");
STRCPY(buf, "r:90");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf)); break;
case 0: //portrait
STRCPY(buf, "r:0");
DBGPRINTF("potrait");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf));
break;
default:
STRCPY(buf, "r:0");
DBGPRINTF("Potrait");
IDISPLAY_SetPrefs(pMe->m_pIDisplay, buf, STRLEN(buf));
break;
}
ISHELL_GetDeviceInfo(pMe->m_pIShell, &di);
SETAEERECT(&rect,0,0,di.cxScreen,di.cyScreen);
IDISPLAY_SetClipRect(pMe->m_pIDisplay, &rect);
IDISPLAY_GetClipRect(pMe->m_pIDisplay, &rect);
//Redraw your current page and u need to take care of ur drawing object x,y ...
IDISPLAY_UpdateEx(pMe->m_pIDisplay, false);
//IDISPLAY_Update(pMe->m_pIDisplay);
}

Thanks for posting in detail, it helps!

Thanks for posting in detail, it helps!