Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

We have some queries regarding use of List Widget on BMP Phone. Please find them as described below.

1. We are using a list widget to display a list of items. Please find attached zip file containing a sample application. Following is the description of this application on Simulator and Phone

Simulator:
On simulator the application shows a list of 20 names,
10 of which are visible. The list can be scrolled up/down
to display/hide the other 10 names.

HTC Smart Device:
On device the application shows a list of 20 names,
10 of which are visible. But the list cannot be scrolled,
to display the other 10 name

2. We are using ISHELL_StartAppletArgs(GetShell(),0x00937C84,"B") to launch an application from our code. Following is our observation for this API.

HTC Smart (OS Ver 1.0.2.365, ROM Ver 1.0.405.103770): The API is not working for any of the existing application class ID. This is the HTC device that we recently got flashed from you.

HTC Smart (OS Ver 1.0.0.593, ROM Ver 1.0.720.82847): The API works perfectly fine and we are able to launch all existing applications using this API.

Can you please advice on how to resolve these issues at our end?

1. If you are using forms in your app, one thing is you need to touch enable the root form (and not the container widget) so that all the children will be touch enabled. Other thing is to pass all the events by default to root form and let it delegate the events to children.
To make your app work i.e. scrolling list on HTC smart, I made the following changes in your code:
a. Removed IWidget_EnableTouch(pMe->piwRoot); call from c_listwidgettouch_app_SetupRootContainer().
b. Added (void) IRootForm_HandleEvent(gRootForm, EVT_WDG_ENABLETOUCH, 0, 1); to c_listwidgettouch_app_InitWidgets() before IWidget_MoveFocus call.
c.Replaced "return SUCCESS == IWidget_HandleEvent(piwList, eCode, wParam, dwParam);" call with "return SUCCESS == IRootForm_HandleEvent(gRootForm, eCode, wParam, dwParam);" in your main handlevent so that all events be default will be passed to root form.
2. I tried replicating this issue (ISHELL_StartAppletArgs fails) on two handsets with different ROM version mentioned below and I wasn't able to replicate the issue. I would recommend reflashing the handset with latest firmware.
a. ROM version: 1.0.706.108470, S/W version: 1.0.0.F3188
b. ROM version: 1.0.706.101640, S/W version: 1.0.0.F3188 (latest reviewed build by Qualcomm).
Attached modified code.

1. If you are using forms in your app, one thing is you need to touch enable the root form (and not the container widget) so that all the children will be touch enabled. Other thing is to pass all the events by default to root form and let it delegate the events to children.
To make your app work i.e. scrolling list on HTC smart, I made the following changes in your code:
a. Removed IWidget_EnableTouch(pMe->piwRoot); call from c_listwidgettouch_app_SetupRootContainer().
b. Added (void) IRootForm_HandleEvent(gRootForm, EVT_WDG_ENABLETOUCH, 0, 1); to c_listwidgettouch_app_InitWidgets() before IWidget_MoveFocus call.
c.Replaced "return SUCCESS == IWidget_HandleEvent(piwList, eCode, wParam, dwParam);" call with "return SUCCESS == IRootForm_HandleEvent(gRootForm, eCode, wParam, dwParam);" in your main handlevent so that all events be default will be passed to root form.
2. I tried replicating this issue (ISHELL_StartAppletArgs fails) on two handsets with different ROM version mentioned below and I wasn't able to replicate the issue. I would recommend reflashing the handset with latest firmware.
a. ROM version: 1.0.706.108470, S/W version: 1.0.0.F3188
b. ROM version: 1.0.706.101640, S/W version: 1.0.0.F3188 (latest reviewed build by Qualcomm).
Attached modified code.