- tp_button_set_state(tp, t, BUTTON_STATE_BOTTOM_NEW,
- event);
- break;
- case BUTTON_EVENT_IN_TOP_R:
- case BUTTON_EVENT_IN_TOP_M:
- case BUTTON_EVENT_IN_TOP_L:
- case BUTTON_EVENT_IN_AREA:
- tp_button_set_state(tp, t, BUTTON_STATE_BOTTOM_TO_AREA, event);
- break;
- case BUTTON_EVENT_UP:
- tp_button_set_state(tp, t, BUTTON_STATE_NONE, event);
- break;
- case BUTTON_EVENT_PRESS:
- case BUTTON_EVENT_RELEASE:
- case BUTTON_EVENT_TIMEOUT:
- break;
- }
-}
-
-static void
-tp_button_bottom_new_handle_event(struct tp_dispatch *tp,
- struct tp_touch *t,
- enum button_event event)
-{
- switch(event) {
- case BUTTON_EVENT_IN_BOTTOM_R:
- case BUTTON_EVENT_IN_BOTTOM_L:
- if (event != t->button.curr)
- tp_button_set_state(tp, t, BUTTON_STATE_BOTTOM_NEW,
- event);
- break;
- case BUTTON_EVENT_IN_TOP_R:
- case BUTTON_EVENT_IN_TOP_M:
- case BUTTON_EVENT_IN_TOP_L:
- case BUTTON_EVENT_IN_AREA:
- tp_button_set_state(tp, t, BUTTON_STATE_AREA, event);
- break;
- case BUTTON_EVENT_UP:
- tp_button_set_state(tp, t, BUTTON_STATE_NONE, event);
- break;
- case BUTTON_EVENT_PRESS:
- tp_button_set_state(tp, t, BUTTON_STATE_BOTTOM, event);
- break;
- case BUTTON_EVENT_RELEASE:
- break;
- case BUTTON_EVENT_TIMEOUT:
- tp_button_set_state(tp, t, BUTTON_STATE_BOTTOM, event);
- break;
- }
-}
-
-static void
-tp_button_bottom_to_area_handle_event(struct tp_dispatch *tp,
- struct tp_touch *t,
- enum button_event event)
-{
- switch(event) {
- case BUTTON_EVENT_IN_BOTTOM_R:
- case BUTTON_EVENT_IN_BOTTOM_L:
- if (event == t->button.curr)