diff --git a/menu/drivers/glui.c b/menu/drivers/glui.c index 046a6554b8..02f7a72612 100644 --- a/menu/drivers/glui.c +++ b/menu/drivers/glui.c @@ -245,6 +245,8 @@ static void glui_render(void) if (settings->menu.mouse.enable) { + int16_t mouse_y = menu_input_pointer_state(MENU_MOUSE_Y_AXIS); + if (menu_input->mouse.scrolldown) menu->scroll_y += 10; @@ -252,7 +254,7 @@ static void glui_render(void) menu->scroll_y -= 10; menu_input->mouse.ptr = - (menu_input->mouse.y - glui->line_height + menu->scroll_y - 16) + (mouse_y - glui->line_height + menu->scroll_y - 16) / glui->line_height; } diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 3df6041103..a964e69c6e 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -1436,6 +1436,7 @@ static void xmb_render(void) 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); + int16_t mouse_y = menu_input_mouse_state(MENU_MOUSE_Y_AXIS); if (settings->menu.pointer.enable) { @@ -1445,7 +1446,7 @@ static void xmb_render(void) if (settings->menu.mouse.enable) { - if (menu_input->mouse.y > item_y1 && menu_input->mouse.y < item_y2) + if (mouse_y > item_y1 && mouse_y < item_y2) menu_input->mouse.ptr = i; } }