summaryrefslogtreecommitdiffstatshomepage
path: root/src/frontend/mame
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2021-10-21 04:11:43 +1100
committer Vas Crabb <vas@vastheman.com>2021-10-21 04:11:43 +1100
commitb1c764415931c9700552cd456bfeb20fe41ba622 (patch)
tree83484512a26252374612f51d1683ced38b5e5770 /src/frontend/mame
parentd42a9fd87e737c0526d35624163f110b290c6d79 (diff)
-plugins: Added an input macro plugin.
-plugins: Sort input selection menus for autofire plugin. -frontend: Fixed another case where the menus may not automatically scroll the first item into view.
Diffstat (limited to 'src/frontend/mame')
-rw-r--r--src/frontend/mame/ui/menu.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/frontend/mame/ui/menu.cpp b/src/frontend/mame/ui/menu.cpp
index ffbd52fa620..9e98511a882 100644
--- a/src/frontend/mame/ui/menu.cpp
+++ b/src/frontend/mame/ui/menu.cpp
@@ -518,11 +518,11 @@ void menu::draw(uint32_t flags)
if (!customonly)
ui().draw_outlined_box(container(), x1, y1, x2, y2, ui().colors().background_color());
+ if ((m_selected >= (top_line + m_visible_lines)) || (m_selected < (top_line + 1)))
+ top_line = m_selected - (m_visible_lines / 2);
if (top_line < 0 || is_first_selected())
top_line = 0;
- else if (m_selected >= (top_line + m_visible_lines))
- top_line = m_selected - (m_visible_lines / 2);
- if ((top_line > (m_items.size() - m_visible_lines)) || is_last_selected())
+ else if ((top_line > (m_items.size() - m_visible_lines)) || is_last_selected())
top_line = m_items.size() - m_visible_lines;
else if (m_selected >= (top_line + m_visible_lines - 2))
top_line = m_selected - m_visible_lines + ((m_selected == (m_items.size() - 1)) ? 1: 2);