Lines Matching refs:proc
38 static void indev_proc_press(_lv_indev_proc_t * proc);
39 static void indev_proc_release(_lv_indev_proc_t * proc);
41 static void indev_click_focus(_lv_indev_proc_t * proc);
42 static void indev_gesture(_lv_indev_proc_t * proc);
43 static bool indev_reset_check(_lv_indev_proc_t * proc);
78 if(indev_act->proc.disabled || in lv_indev_read_timer_cb()
90 indev_act->proc.state = data.state; in lv_indev_read_timer_cb()
93 if(indev_act->proc.state == LV_INDEV_STATE_PRESSED) { in lv_indev_read_timer_cb()
128 indev->proc.disabled = enable; in lv_indev_enable()
133 i->proc.disabled = enable; in lv_indev_enable()
154 indev->proc.reset_query = 1; in lv_indev_reset()
157 if(obj == NULL || indev->proc.types.pointer.last_pressed == obj) { in lv_indev_reset()
158 indev->proc.types.pointer.last_pressed = NULL; in lv_indev_reset()
160 if(obj == NULL || indev->proc.types.pointer.act_obj == obj) { in lv_indev_reset()
161 indev->proc.types.pointer.act_obj = NULL; in lv_indev_reset()
163 if(obj == NULL || indev->proc.types.pointer.last_obj == obj) { in lv_indev_reset()
164 indev->proc.types.pointer.last_obj = NULL; in lv_indev_reset()
171 i->proc.reset_query = 1; in lv_indev_reset()
173 if(obj == NULL || i->proc.types.pointer.last_pressed == obj) { in lv_indev_reset()
174 i->proc.types.pointer.last_pressed = NULL; in lv_indev_reset()
176 if(obj == NULL || i->proc.types.pointer.act_obj == obj) { in lv_indev_reset()
177 i->proc.types.pointer.act_obj = NULL; in lv_indev_reset()
179 if(obj == NULL || i->proc.types.pointer.last_obj == obj) { in lv_indev_reset()
180 i->proc.types.pointer.last_obj = NULL; in lv_indev_reset()
191 indev->proc.long_pr_sent = 0; in lv_indev_reset_long_press()
192 indev->proc.longpr_rep_timestamp = lv_tick_get(); in lv_indev_reset_long_press()
193 indev->proc.pr_timestamp = lv_tick_get(); in lv_indev_reset_long_press()
202 …lv_obj_set_pos(indev->cursor, indev->proc.types.pointer.act_point.x, indev->proc.types.pointer.act… in lv_indev_set_cursor()
233 point->x = indev->proc.types.pointer.act_point.x; in lv_indev_get_point()
234 point->y = indev->proc.types.pointer.act_point.y; in lv_indev_get_point()
240 return indev->proc.types.pointer.gesture_dir; in lv_indev_get_gesture_dir()
248 return indev->proc.types.keypad.last_key; in lv_indev_get_key()
255 return indev->proc.types.pointer.scroll_dir; in lv_indev_get_scroll_dir()
262 return indev->proc.types.pointer.scroll_obj; in lv_indev_get_scroll_obj()
273 point->x = indev->proc.types.pointer.vect.x; in lv_indev_get_vect()
274 point->y = indev->proc.types.pointer.vect.y; in lv_indev_get_vect()
281 indev->proc.wait_until_release = 1; in lv_indev_wait_release()
343 i->proc.types.pointer.last_raw_point.x = data->point.x; in indev_pointer_proc()
344 i->proc.types.pointer.last_raw_point.y = data->point.y; in indev_pointer_proc()
372 …(i->proc.types.pointer.last_point.x != data->point.x || i->proc.types.pointer.last_point.y != data… in indev_pointer_proc()
376 i->proc.types.pointer.act_point.x = data->point.x; in indev_pointer_proc()
377 i->proc.types.pointer.act_point.y = data->point.y; in indev_pointer_proc()
379 if(i->proc.state == LV_INDEV_STATE_PRESSED) { in indev_pointer_proc()
380 indev_proc_press(&i->proc); in indev_pointer_proc()
383 indev_proc_release(&i->proc); in indev_pointer_proc()
386 i->proc.types.pointer.last_point.x = i->proc.types.pointer.act_point.x; in indev_pointer_proc()
387 i->proc.types.pointer.last_point.y = i->proc.types.pointer.act_point.y; in indev_pointer_proc()
397 if(data->state == LV_INDEV_STATE_PRESSED && i->proc.wait_until_release) return; in indev_keypad_proc()
399 if(i->proc.wait_until_release) { in indev_keypad_proc()
400 i->proc.wait_until_release = 0; in indev_keypad_proc()
401 i->proc.pr_timestamp = 0; in indev_keypad_proc()
402 i->proc.long_pr_sent = 0; in indev_keypad_proc()
403 … i->proc.types.keypad.last_state = LV_INDEV_STATE_RELEASED; /*To skip the processing of release*/ in indev_keypad_proc()
415 uint32_t prev_key = i->proc.types.keypad.last_key; in indev_keypad_proc()
419 i->proc.types.keypad.last_key = data->key; in indev_keypad_proc()
424 uint32_t prev_state = i->proc.types.keypad.last_state; in indev_keypad_proc()
425 i->proc.types.keypad.last_state = data->state; in indev_keypad_proc()
430 i->proc.pr_timestamp = lv_tick_get(); in indev_keypad_proc()
436 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
442 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
449 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
452 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
457 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
460 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
465 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
474 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
478 …if(i->proc.long_pr_sent == 0 && lv_tick_elaps(i->proc.pr_timestamp) > i->driver->long_press_time) { in indev_keypad_proc()
479 i->proc.long_pr_sent = 1; in indev_keypad_proc()
481 i->proc.longpr_rep_timestamp = lv_tick_get(); in indev_keypad_proc()
483 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
487 else if(i->proc.long_pr_sent != 0 && in indev_keypad_proc()
488 lv_tick_elaps(i->proc.longpr_rep_timestamp) > i->driver->long_press_repeat_time) { in indev_keypad_proc()
490 i->proc.longpr_rep_timestamp = lv_tick_get(); in indev_keypad_proc()
495 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
501 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
507 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
512 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
524 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
526 if(i->proc.long_pr_sent == 0) { in indev_keypad_proc()
528 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
532 if(indev_reset_check(&i->proc)) return; in indev_keypad_proc()
535 i->proc.pr_timestamp = 0; in indev_keypad_proc()
536 i->proc.long_pr_sent = 0; in indev_keypad_proc()
548 if(data->state == LV_INDEV_STATE_PRESSED && i->proc.wait_until_release) return; in indev_encoder_proc()
550 if(i->proc.wait_until_release) { in indev_encoder_proc()
551 i->proc.wait_until_release = 0; in indev_encoder_proc()
552 i->proc.pr_timestamp = 0; in indev_encoder_proc()
553 i->proc.long_pr_sent = 0; in indev_encoder_proc()
554 … i->proc.types.keypad.last_state = LV_INDEV_STATE_RELEASED; /*To skip the processing of release*/ in indev_encoder_proc()
559 lv_indev_state_t last_state = i->proc.types.keypad.last_state; in indev_encoder_proc()
560 i->proc.types.keypad.last_state = data->state; in indev_encoder_proc()
561 i->proc.types.keypad.last_key = data->key; in indev_encoder_proc()
582 i->proc.pr_timestamp = lv_tick_get(); in indev_encoder_proc()
589 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
603 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
606 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
611 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
617 …if(i->proc.long_pr_sent == 0 && lv_tick_elaps(i->proc.pr_timestamp) > i->driver->long_press_time) { in indev_encoder_proc()
619 i->proc.long_pr_sent = 1; in indev_encoder_proc()
620 i->proc.longpr_rep_timestamp = lv_tick_get(); in indev_encoder_proc()
638 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
642 i->proc.long_pr_sent = 1; in indev_encoder_proc()
645 …else if(i->proc.long_pr_sent != 0 && lv_tick_elaps(i->proc.longpr_rep_timestamp) > i->driver->long… in indev_encoder_proc()
647 i->proc.longpr_rep_timestamp = lv_tick_get(); in indev_encoder_proc()
651 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
663 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
680 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
682 … if(i->proc.long_pr_sent == 0) lv_event_send(indev_obj_act, LV_EVENT_SHORT_CLICKED, indev_act); in indev_encoder_proc()
683 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
686 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
692 if(!i->proc.long_pr_sent || lv_group_get_obj_count(g) <= 1) { in indev_encoder_proc()
694 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
697 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
700 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
703 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
711 else if(!i->proc.long_pr_sent) { in indev_encoder_proc()
717 i->proc.pr_timestamp = 0; in indev_encoder_proc()
718 i->proc.long_pr_sent = 0; in indev_encoder_proc()
731 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
737 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
748 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
754 if(indev_reset_check(&i->proc)) return; in indev_encoder_proc()
790 if(i->proc.types.pointer.last_point.x != x || in indev_button_proc()
791 i->proc.types.pointer.last_point.y != y) { in indev_button_proc()
792 indev_proc_release(&i->proc); in indev_button_proc()
796 if(indev_reset_check(&i->proc)) return; in indev_button_proc()
799 i->proc.types.pointer.act_point.x = x; in indev_button_proc()
800 i->proc.types.pointer.act_point.y = y; in indev_button_proc()
802 if(data->state == LV_INDEV_STATE_PRESSED) indev_proc_press(&i->proc); in indev_button_proc()
803 else indev_proc_release(&i->proc); in indev_button_proc()
805 if(indev_reset_check(&i->proc)) return; in indev_button_proc()
807 i->proc.types.pointer.last_point.x = i->proc.types.pointer.act_point.x; in indev_button_proc()
808 i->proc.types.pointer.last_point.y = i->proc.types.pointer.act_point.y; in indev_button_proc()
816 static void indev_proc_press(_lv_indev_proc_t * proc) in indev_proc_press() argument
818 …LV_LOG_INFO("pressed at x:%d y:%d", proc->types.pointer.act_point.x, proc->types.pointer.act_point… in indev_proc_press()
819 indev_obj_act = proc->types.pointer.act_obj; in indev_proc_press()
821 if(proc->wait_until_release != 0) return; in indev_proc_press()
828 … indev_obj_act = lv_indev_search_obj(lv_disp_get_layer_sys(disp), &proc->types.pointer.act_point); in indev_proc_press()
830 … &proc->types.pointer.act_point); in indev_proc_press()
832 … &proc->types.pointer.act_point); in indev_proc_press()
836 else if(proc->types.pointer.scroll_obj == NULL && in indev_proc_press()
838 … indev_obj_act = lv_indev_search_obj(lv_disp_get_layer_sys(disp), &proc->types.pointer.act_point); in indev_proc_press()
840 … &proc->types.pointer.act_point); in indev_proc_press()
842 … &proc->types.pointer.act_point); in indev_proc_press()
847 if(new_obj_searched && proc->types.pointer.last_obj) { in indev_proc_press()
848 proc->types.pointer.scroll_throw_vect.x = 0; in indev_proc_press()
849 proc->types.pointer.scroll_throw_vect.y = 0; in indev_proc_press()
850 _lv_indev_scroll_throw_handler(proc); in indev_proc_press()
851 if(indev_reset_check(proc)) return; in indev_proc_press()
855 if(indev_obj_act != proc->types.pointer.act_obj) { in indev_proc_press()
856 proc->types.pointer.last_point.x = proc->types.pointer.act_point.x; in indev_proc_press()
857 proc->types.pointer.last_point.y = proc->types.pointer.act_point.y; in indev_proc_press()
860 if(proc->types.pointer.act_obj != NULL) { in indev_proc_press()
862 lv_obj_t * last_obj = proc->types.pointer.act_obj; in indev_proc_press()
865 if(indev_reset_check(proc)) return; in indev_proc_press()
868 proc->types.pointer.act_obj = indev_obj_act; /*Save the pressed object*/ in indev_proc_press()
869 proc->types.pointer.last_obj = indev_obj_act; in indev_proc_press()
873 proc->pr_timestamp = lv_tick_get(); in indev_proc_press()
874 proc->long_pr_sent = 0; in indev_proc_press()
875 proc->types.pointer.scroll_sum.x = 0; in indev_proc_press()
876 proc->types.pointer.scroll_sum.y = 0; in indev_proc_press()
877 proc->types.pointer.scroll_dir = LV_DIR_NONE; in indev_proc_press()
878 proc->types.pointer.gesture_dir = LV_DIR_NONE; in indev_proc_press()
879 proc->types.pointer.gesture_sent = 0; in indev_proc_press()
880 proc->types.pointer.gesture_sum.x = 0; in indev_proc_press()
881 proc->types.pointer.gesture_sum.y = 0; in indev_proc_press()
882 proc->types.pointer.vect.x = 0; in indev_proc_press()
883 proc->types.pointer.vect.y = 0; in indev_proc_press()
887 if(indev_reset_check(proc)) return; in indev_proc_press()
889 if(indev_act->proc.wait_until_release) return; in indev_proc_press()
892 indev_click_focus(&indev_act->proc); in indev_proc_press()
893 if(indev_reset_check(proc)) return; in indev_proc_press()
899 proc->types.pointer.vect.x = proc->types.pointer.act_point.x - proc->types.pointer.last_point.x; in indev_proc_press()
900 proc->types.pointer.vect.y = proc->types.pointer.act_point.y - proc->types.pointer.last_point.y; in indev_proc_press()
902 …proc->types.pointer.scroll_throw_vect.x = (proc->types.pointer.scroll_throw_vect.x + proc->types.p… in indev_proc_press()
903 …proc->types.pointer.scroll_throw_vect.y = (proc->types.pointer.scroll_throw_vect.y + proc->types.p… in indev_proc_press()
905 proc->types.pointer.scroll_throw_vect_ori = proc->types.pointer.scroll_throw_vect; in indev_proc_press()
909 if(indev_reset_check(proc)) return; in indev_proc_press()
911 if(indev_act->proc.wait_until_release) return; in indev_proc_press()
913 _lv_indev_scroll_handler(proc); in indev_proc_press()
914 if(indev_reset_check(proc)) return; in indev_proc_press()
915 indev_gesture(proc); in indev_proc_press()
916 if(indev_reset_check(proc)) return; in indev_proc_press()
919 if(proc->types.pointer.scroll_obj == NULL && proc->long_pr_sent == 0) { in indev_proc_press()
921 if(lv_tick_elaps(proc->pr_timestamp) > indev_act->driver->long_press_time) { in indev_proc_press()
923 if(indev_reset_check(proc)) return; in indev_proc_press()
926 proc->long_pr_sent = 1; in indev_proc_press()
929 proc->longpr_rep_timestamp = lv_tick_get(); in indev_proc_press()
934 if(proc->types.pointer.scroll_obj == NULL && proc->long_pr_sent == 1) { in indev_proc_press()
936 … if(lv_tick_elaps(proc->longpr_rep_timestamp) > indev_act->driver->long_press_repeat_time) { in indev_proc_press()
938 if(indev_reset_check(proc)) return; in indev_proc_press()
939 proc->longpr_rep_timestamp = lv_tick_get(); in indev_proc_press()
949 static void indev_proc_release(_lv_indev_proc_t * proc) in indev_proc_release() argument
951 if(proc->wait_until_release != 0) { in indev_proc_release()
952 lv_event_send(proc->types.pointer.act_obj, LV_EVENT_PRESS_LOST, indev_act); in indev_proc_release()
953 if(indev_reset_check(proc)) return; in indev_proc_release()
955 proc->types.pointer.act_obj = NULL; in indev_proc_release()
956 proc->types.pointer.last_obj = NULL; in indev_proc_release()
957 proc->pr_timestamp = 0; in indev_proc_release()
958 proc->longpr_rep_timestamp = 0; in indev_proc_release()
959 proc->wait_until_release = 0; in indev_proc_release()
961 indev_obj_act = proc->types.pointer.act_obj; in indev_proc_release()
962 lv_obj_t * scroll_obj = proc->types.pointer.scroll_obj; in indev_proc_release()
970 if(indev_reset_check(proc)) return; in indev_proc_release()
974 if(proc->long_pr_sent == 0) { in indev_proc_release()
976 if(indev_reset_check(proc)) return; in indev_proc_release()
980 if(indev_reset_check(proc)) return; in indev_proc_release()
983 proc->types.pointer.act_obj = NULL; in indev_proc_release()
984 proc->pr_timestamp = 0; in indev_proc_release()
985 proc->longpr_rep_timestamp = 0; in indev_proc_release()
1002 lv_point_transform(&proc->types.pointer.scroll_throw_vect, angle, zoom, &pivot); in indev_proc_release()
1003 lv_point_transform(&proc->types.pointer.scroll_throw_vect_ori, angle, zoom, &pivot); in indev_proc_release()
1012 _lv_indev_scroll_throw_handler(proc); in indev_proc_release()
1013 if(indev_reset_check(proc)) return; in indev_proc_release()
1026 if(indev->proc.reset_query) { in indev_proc_reset_query_handler()
1027 indev->proc.types.pointer.act_obj = NULL; in indev_proc_reset_query_handler()
1028 indev->proc.types.pointer.last_obj = NULL; in indev_proc_reset_query_handler()
1029 indev->proc.types.pointer.scroll_obj = NULL; in indev_proc_reset_query_handler()
1030 indev->proc.long_pr_sent = 0; in indev_proc_reset_query_handler()
1031 indev->proc.pr_timestamp = 0; in indev_proc_reset_query_handler()
1032 indev->proc.longpr_rep_timestamp = 0; in indev_proc_reset_query_handler()
1033 indev->proc.types.pointer.scroll_sum.x = 0; in indev_proc_reset_query_handler()
1034 indev->proc.types.pointer.scroll_sum.y = 0; in indev_proc_reset_query_handler()
1035 indev->proc.types.pointer.scroll_dir = LV_DIR_NONE; in indev_proc_reset_query_handler()
1036 indev->proc.types.pointer.scroll_throw_vect.x = 0; in indev_proc_reset_query_handler()
1037 indev->proc.types.pointer.scroll_throw_vect.y = 0; in indev_proc_reset_query_handler()
1038 indev->proc.types.pointer.gesture_sum.x = 0; in indev_proc_reset_query_handler()
1039 indev->proc.types.pointer.gesture_sum.y = 0; in indev_proc_reset_query_handler()
1040 indev->proc.reset_query = 0; in indev_proc_reset_query_handler()
1049 static void indev_click_focus(_lv_indev_proc_t * proc) in indev_click_focus() argument
1053 proc->types.pointer.last_pressed == indev_obj_act) { in indev_click_focus()
1058 …lv_group_t * g_prev = proc->types.pointer.last_pressed ? lv_obj_get_group(proc->types.pointer.last… in indev_click_focus()
1065 if(indev_reset_check(proc)) return; in indev_click_focus()
1069 if(proc->types.pointer.last_pressed) { in indev_click_focus()
1070 lv_event_send(proc->types.pointer.last_pressed, LV_EVENT_DEFOCUSED, indev_act); in indev_click_focus()
1071 if(indev_reset_check(proc)) return; in indev_click_focus()
1075 if(indev_reset_check(proc)) return; in indev_click_focus()
1081 if(g_prev == NULL && proc->types.pointer.last_pressed) { in indev_click_focus()
1082 lv_event_send(proc->types.pointer.last_pressed, LV_EVENT_DEFOCUSED, indev_act); in indev_click_focus()
1083 if(indev_reset_check(proc)) return; in indev_click_focus()
1087 if(proc->types.pointer.last_pressed) { in indev_click_focus()
1090 lv_event_send(proc->types.pointer.last_pressed, LV_EVENT_DEFOCUSED, indev_act); in indev_click_focus()
1091 if(indev_reset_check(proc)) return; in indev_click_focus()
1095 lv_event_send(proc->types.pointer.last_pressed, LV_EVENT_LEAVE, indev_act); in indev_click_focus()
1096 if(indev_reset_check(proc)) return; in indev_click_focus()
1104 if(indev_reset_check(proc)) return; in indev_click_focus()
1108 if(indev_reset_check(proc)) return; in indev_click_focus()
1111 proc->types.pointer.last_pressed = indev_obj_act; in indev_click_focus()
1118 void indev_gesture(_lv_indev_proc_t * proc) in indev_gesture() argument
1121 if(proc->types.pointer.scroll_obj) return; in indev_gesture()
1122 if(proc->types.pointer.gesture_sent) return; in indev_gesture()
1124 lv_obj_t * gesture_obj = proc->types.pointer.act_obj; in indev_gesture()
1133 if((LV_ABS(proc->types.pointer.vect.x) < indev_act->driver->gesture_min_velocity) && in indev_gesture()
1134 (LV_ABS(proc->types.pointer.vect.y) < indev_act->driver->gesture_min_velocity)) { in indev_gesture()
1135 proc->types.pointer.gesture_sum.x = 0; in indev_gesture()
1136 proc->types.pointer.gesture_sum.y = 0; in indev_gesture()
1140 proc->types.pointer.gesture_sum.x += proc->types.pointer.vect.x; in indev_gesture()
1141 proc->types.pointer.gesture_sum.y += proc->types.pointer.vect.y; in indev_gesture()
1143 if((LV_ABS(proc->types.pointer.gesture_sum.x) > indev_act->driver->gesture_limit) || in indev_gesture()
1144 (LV_ABS(proc->types.pointer.gesture_sum.y) > indev_act->driver->gesture_limit)) { in indev_gesture()
1146 proc->types.pointer.gesture_sent = 1; in indev_gesture()
1148 if(LV_ABS(proc->types.pointer.gesture_sum.x) > LV_ABS(proc->types.pointer.gesture_sum.y)) { in indev_gesture()
1149 if(proc->types.pointer.gesture_sum.x > 0) in indev_gesture()
1150 proc->types.pointer.gesture_dir = LV_DIR_RIGHT; in indev_gesture()
1152 proc->types.pointer.gesture_dir = LV_DIR_LEFT; in indev_gesture()
1155 if(proc->types.pointer.gesture_sum.y > 0) in indev_gesture()
1156 proc->types.pointer.gesture_dir = LV_DIR_BOTTOM; in indev_gesture()
1158 proc->types.pointer.gesture_dir = LV_DIR_TOP; in indev_gesture()
1162 if(indev_reset_check(proc)) return; in indev_gesture()
1171 static bool indev_reset_check(_lv_indev_proc_t * proc) in indev_reset_check() argument
1173 if(proc->reset_query) { in indev_reset_check()
1177 return proc->reset_query ? true : false; in indev_reset_check()