diff options
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 |
commit | b1c764415931c9700552cd456bfeb20fe41ba622 (patch) | |
tree | 83484512a26252374612f51d1683ced38b5e5770 /src/frontend/mame | |
parent | d42a9fd87e737c0526d35624163f110b290c6d79 (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.cpp | 6 |
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); |