static void up_click_handler(ClickRecognizerRef recognizer, void *context) { menu_layer_set_selected_next(s_menu_layer, true, MenuRowAlignNone, true); if(highlight_element<=3){ highlight_element++; update_text(highlight_element); } else return; }
static void lists_select_callback(MenuLayer *menu_layer, MenuIndex *cell_index, void *data) { if (info_on) { unlock_info(); hide_info(); //display_info("LOADING..."); } else { const int index = cell_index->row; window_stack_push(&items_window, true); //Send first request (INFOS): current_list = index; //send_request(HTTP_CMD_REQUEST_ITEM, current_list, 0); //scroll to top: while (menu_layer_get_selected_index(&items_menu_layer).row > 0) { menu_layer_set_selected_next(&items_menu_layer, true, MenuRowAlignTop, true); } //refresh menu layer: menu_layer_reload_data(&items_menu_layer); } }
/** * Called when down button is clicked * Scrolls down on the menu (if possible) */ static void down_click_handler(ClickRecognizerRef recognizer, void *context) { menu_layer_set_selected_next(action_menu, false, MenuRowAlignNone, true); }
void emergency_conf_downClickHandler(ClickRecognizerRef recognizer, void *context) { menu_layer_set_selected_next(menu_layer, false, MenuRowAlignCenter, false); }
static void items_down_callback(MenuLayer *menu_layer, MenuIndex *cell_index, void *data) { menu_layer_set_selected_next(&items_menu_layer, false, MenuRowAlignTop, true); }
void screen_live_menu(bool up) { //vibes_short_pulse(); menu_layer_set_selected_next(s_data.page_live_tracking, up, MenuRowAlignTop, true); }
static void menu_scroll_down_click_handler(ClickRecognizerRef recognizer, MenuLayer *menu_layer) { menu_layer_set_selected_next(menu_layer, false, MenuRowAlignCenter, true); }
static void down_click_handler(ClickRecognizerRef recognizer, void *context) { menu_layer_set_selected_next(menu_global, false, MenuRowAlignCenter, true); strap_log_event("/down"); app_log(APP_LOG_LEVEL_INFO, "log", 0, "down clicked"); }
void accel_data_handler(AccelData *data, uint32_t num_samples) { if (!scrollEnabled) return; int avgX = 0, avgY = 0, avgZ = 0; uint64_t latest_time = 0; AccelData d = data[0]; if (d.did_vibrate) return; avgX = d.x; avgY = d.y; avgZ = d.z; latest_time = d.timestamp; if (!baselineSet) { baselineX = avgX; baselineY = avgY; baselineZ = avgZ; baselineSet = true; return; } // Selection if (avgX - baselineX > SELECT_THR || avgX - baselineX < -SELECT_THR) { select_item(); } // Fast downward scroll else if (avgY - baselineY > FAST_SCROLL_THR) { if (current_speed != FAST_SCROLL_SPEED && current_speed != XTRA_FAST_SCROLL_SPEED) { current_speed = FAST_SCROLL_SPEED; fast_scroll_start = latest_time; } if (avgY - baselineY > XTRA_FAST_SCROLL_THR && latest_time - fast_scroll_start >= XTRA_FAST_TIME_THR) { current_speed = XTRA_FAST_SCROLL_SPEED; } count++; if (count >= current_speed) { count -= current_speed; menu_layer_set_selected_next(menu_layer, false, MenuRowAlignCenter, true); } } // Slow downward scroll else if (avgY - baselineY > SLOW_SCROLL_THR) { current_speed = SLOW_SCROLL_SPEED; fast_scroll_start = 0; count++; if (count >= current_speed) { count -= current_speed; menu_layer_set_selected_next(menu_layer, false, MenuRowAlignCenter, true); } } // Fast upward scroll else if (avgY - baselineY < -FAST_SCROLL_THR) { if (current_speed != FAST_SCROLL_SPEED && current_speed != XTRA_FAST_SCROLL_SPEED) { current_speed = FAST_SCROLL_SPEED; fast_scroll_start = latest_time; } if (avgY - baselineY < -XTRA_FAST_SCROLL_THR && latest_time - fast_scroll_start >= XTRA_FAST_TIME_THR) { current_speed = XTRA_FAST_SCROLL_SPEED; } count++; if (count >= current_speed) { count -= current_speed; menu_layer_set_selected_next(menu_layer, true, MenuRowAlignCenter, true); } } // Slow upward scroll else if (avgY - baselineY < -SLOW_SCROLL_THR) { current_speed = SLOW_SCROLL_SPEED; fast_scroll_start = 0; count++; if (count >= current_speed) { count -= current_speed; menu_layer_set_selected_next(menu_layer, true, MenuRowAlignCenter, true); } } // No scroll else { current_speed = 0; count = 0; fast_scroll_start = 0; } }
void down_single_click_handler(ClickRecognizerRef recognizer, Window *window) { (void)recognizer; (void)window; menu_layer_set_selected_next(&menu, false, MenuRowAlignCenter, true); }