From 169dc19bb7d34aad7e3ea1cd752bf85860417c9b Mon Sep 17 00:00:00 2001 From: mykola2312 <49044616+mykola2312@users.noreply.github.com> Date: Fri, 12 Apr 2024 08:01:41 +0300 Subject: [PATCH] small handleMenuAction refactor --- .../com/mykola2312/mptv/ui/MainFrame.java | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/mykola2312/mptv/ui/MainFrame.java b/src/main/java/com/mykola2312/mptv/ui/MainFrame.java index e41962a..cccbeca 100644 --- a/src/main/java/com/mykola2312/mptv/ui/MainFrame.java +++ b/src/main/java/com/mykola2312/mptv/ui/MainFrame.java @@ -72,28 +72,30 @@ public class MainFrame { public void handleMenuAction(MenuAction action) { switch (action) { case ACTION_UP -> { - if (menuPosition == MenuPosition.MENU_CATEGORIES) { - categoryIndex = (categoryIndex - 1) % categoryData.length; - } else if (menuPosition == MenuPosition.MENU_CHANNELS) { - channelIndex = (channelIndex - 1) % channelData.length; + switch (menuPosition) { + case MENU_CATEGORIES -> categoryIndex = (categoryIndex - 1) % categoryData.length; + case MENU_CHANNELS -> channelIndex = (channelIndex - 1) % channelData.length; } } - case ACTION_DOWN -> { - if (menuPosition == MenuPosition.MENU_CATEGORIES) { - categoryIndex = (categoryIndex + 1) % categoryData.length; - } else if (menuPosition == MenuPosition.MENU_CHANNELS) { - channelIndex = (channelIndex + 1) % channelData.length; + switch (menuPosition) { + case MENU_CATEGORIES -> categoryIndex = (categoryIndex + 1) % categoryData.length; + case MENU_CHANNELS -> channelIndex = (channelIndex + 1) % channelData.length; } } - case ACTION_LEFT -> menuPosition = MenuPosition.MENU_CATEGORIES; case ACTION_RIGHT -> menuPosition = MenuPosition.MENU_CHANNELS; } switch (menuPosition) { - case MENU_CATEGORIES -> categoryList.setSelectedIndex(categoryIndex); - case MENU_CHANNELS -> channelList.setSelectedIndex(channelIndex); + case MENU_CATEGORIES -> { + categoryList.setSelectedIndex(categoryIndex); + categoryList.ensureIndexIsVisible(categoryIndex); + } + case MENU_CHANNELS -> { + channelList.setSelectedIndex(channelIndex); + channelList.ensureIndexIsVisible(channelIndex); + } } }