From 670350dc1f322a0e2d790554b6be507d252b0c37 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 24 Sep 2015 17:21:50 +0200 Subject: [PATCH] Go through menu_input_pointer_state more --- menu/drivers/glui.c | 10 ++++++---- menu/drivers/xmb.c | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/menu/drivers/glui.c b/menu/drivers/glui.c index 5482f158cf..06f626cd54 100644 --- a/menu/drivers/glui.c +++ b/menu/drivers/glui.c @@ -233,12 +233,14 @@ static void glui_render(void) if (settings->menu.pointer.enable) { - menu_input->pointer.ptr = - (menu_input->pointer.y - glui->line_height + menu->scroll_y - 16) + int16_t pointer_y = menu_input_pointer_state(MENU_POINTER_Y_AXIS); + + menu_input->pointer.ptr = + (pointer_y - glui->line_height + menu->scroll_y - 16) / glui->line_height; - menu->scroll_y -= menu_input->pointer.accel / 60.0; - menu_input->pointer.accel = menu_input->pointer.accel * 0.96; + menu->scroll_y -= menu_input->pointer.accel / 60.0; + menu_input->pointer.accel = menu_input->pointer.accel * 0.96; } if (settings->menu.mouse.enable) diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 9f13550f69..24f41c3fbf 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -1433,12 +1433,13 @@ static void xmb_render(void) { for (i = 0; i < end; i++) { - float item_y1 = xmb->margins.screen.top + xmb_item_y(xmb, i, current); - float item_y2 = item_y1 + xmb->icon.size; + float item_y1 = xmb->margins.screen.top + xmb_item_y(xmb, i, current); + float item_y2 = item_y1 + xmb->icon.size; + int16_t pointer_y = menu_input_pointer_state(MENU_POINTER_Y_AXIS); if (settings->menu.pointer.enable) { - if (menu_input->pointer.y > item_y1 && menu_input->pointer.y < item_y2) + if (pointer_y > item_y1 && pointer_y < item_y2) menu_input->pointer.ptr = i; }