Skip to content

Commit 09877a4

Browse files
committed
-ui/selmenu.cpp: Don't ignore character input when no pointer is active.
-ui/menu.cpp: Handle menus resetting items from custom pointer handlers better.
1 parent 31d5a50 commit 09877a4

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

src/frontend/mame/ui/menu.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1177,13 +1177,14 @@ std::pair<int, bool> menu::handle_pointer_update(uint32_t flags, ui_event const
11771177
// give derived class a chance to handle it
11781178
if ((track_pointer::IDLE == m_pointer_state) || (track_pointer::CUSTOM == m_pointer_state))
11791179
{
1180+
bool const wascustom(track_pointer::CUSTOM == m_pointer_state);
11801181
auto const [key, take, redraw] = custom_pointer_updated(changed, uievt);
11811182
if (take)
11821183
{
11831184
m_pointer_state = track_pointer::CUSTOM;
11841185
return std::make_pair(key, redraw);
11851186
}
1186-
else if (track_pointer::CUSTOM == m_pointer_state)
1187+
else if (wascustom)
11871188
{
11881189
if (uievt.pointer_buttons)
11891190
{

src/frontend/mame/ui/selmenu.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1733,7 +1733,7 @@ bool menu_select_launch::handle_events(u32 flags, event &ev)
17331733

17341734
// text input goes to the search field unless there's an error message displayed
17351735
case ui_event::type::IME_CHAR:
1736-
if (!pointer_idle())
1736+
if (have_pointer() && !pointer_idle())
17371737
break;
17381738

17391739
if (exclusive_input_pressed(ev.iptkey, IPT_UI_FOCUS_NEXT, 0) || exclusive_input_pressed(ev.iptkey, IPT_UI_FOCUS_PREV, 0))

0 commit comments

Comments
 (0)