Capacity Touch Panel

– True multi-touch panel with finger (The multi-finger position is exact)

– Fake multi-touch panel with finger (The multi-finger position maybe wrong, you could use gesture only)

• The red is actual finger position, the blue is the position driver sends to MMI

▪ Resistance Touch Panel

– Just Single touch with pen or finger

▪ How to know the touch panel category?

– Just refer to project makefile to check

TOUCH_PANEL_SUPPORT

 

– True multi-touch panel

• TOUCH_PANEL_SUPPORT = CTP_XXX_TRUE_MULTIPLE

– Fake multi-touch panel

• TOUCH_PANEL_SUPPORT = CTP_XXX_FAKE_MULTIPLE

– Common compile option

• __TOUCH_PANEL_CAPACITY__

▪ Resistance Touch Panel

– TOUCH_PANEL_SUPPORT = TP_INTERNAL

 

Touch event mode

▪ Default behavior is Single touch mode: we just send the first finger position to the proc.

▪ Handwriting is always single mode.

▪ Multi-Mode is valid by call mmi_frm_set_touch_mode(…), we will send all the fingers position to the proc (at most five)

▪ Usage:

▪ mmi_frm_set_touch_mode(mmi_frm_touch_mode mode)

 

 

Finger id identifies if the event is a new finger

▪ For example:

– finger 1 down the id is 1, finger 2 down the id is 2, when finger 1 up and then finger 1 down, its id is 3

– area is for factory mode to test the touch panel.

 

When there are sequential move events, we will send several move events together to the proc

– For example: Finger 1 touch data, merge_num =2, so we will send 2 move events to the proc, these events are in merge_points(not include the current position).