* Feed mouse/pen/touch pointer events through UI input manager with Win32 and SDL.
* Started migrating UI code to use new API and reworking mouse/touch interaction.
* emu/render.cpp: Support pressing multiple clickable layout items simultaneously.
* emu/render.cpp: Allow UI elements to be drawn in any window.
* emu/rendlay.cpp, luaengine_render.cpp: Added layout view events for pointer input.
* ui/ui.cpp: Allow the UI handler to control pointer display.
* ui/analogipt.cpp: Added mouse/touch and more keys for navigating field state list.
* ui/menu.cpp: Use vertical swipe to scroll and horizontal swipe to adjust.
* ui/menu.cpp: Draw after processing input - greatly improves responsiveness.
* ui/menu.cpp: Ignore keyboard/gamepad input during pointer actions.
* ui/selmenu.cpp: Made left/right info pane arrows repeat when held.
* ui/selmenu.cpp: Use middle click to move keyboard focus.
* ui/selmenu.cpp: Let filter list scroll if it's too tall, and use a bit of horizontal padding.
* ui/selmenu.cpp: Improved divider sizing.
* ui/state.cpp: Don't allow clicks to pass through the confirm deletion prompt to the menu.
* ui/simpleselgame.cpp: Fixed error message display and graphics/sound status not showing.
* ui/simpleselgame.cpp: Allow tap/click to dismiss error message.
* ui/utils.cpp: Show UI for choice filters when there are no choices - it's less confusing.
* modules/input/input_sdl.cpp: Made scaling for mouse scroll better match RawInput and DirectInput.
* modules/input/input_rawinput.cpp: Added support for horizontal scroll axis.
* modules/input/input_win32.cpp: Added support for scroll axes and more buttons to mouse/lightgun.
* modules/debugger/debugimgui.cpp: Don't fight over events with the UI manager - it breaks menus.
* osd/windows/window.cpp: Translate mouse position to window cooridinates for scroll wheel events.
* osd/sdl/window.cpp: Supply last mouse position for scroll wheel events if possible.
* scripts/build/complay.py: Made zero input mask an error - it was only being used to block clicks.
Systems promoted to working
---------------------------
Sega TV Ocha-Ken [QUFB]
Software list items promoted to working (tvochken.xml)
------------------------------------------------------
TV to Ocha-Card: Ocha-Ken 'Ho' to Seikatsu [Vas Crabb]
sega_beena_cart.xml: Put page scans in individual data areas.
frontend/mame/luaengine_mem.cpp: Added a raw read function for memory
regions.
plugins/layout: Added bitmap classes to layout sandbox.
* Also added a couple of missing command-line options, and added a local
table of contents to the (rather long) command line options page.
-Added a separate CI target for localisation updates that produces an
artefact, and removed the message catalogs from the trigger paths for
the Linux CI build.
* Started moving Lua class reference to docs. Expecting people to find
the class reference material in the source isn’t going to help make it
approachable. The docs allow longer explanations, better formatting,
and cross reference links.
* Added another layout scripting example to the docs.
-goldnpkr.cpp: Minor clean-up.
* Improved the short names for Witch Card and Witch Game clone sets.
* Made Witch Up & Down artwork clickable.
* Added working Video Klein sets where the parent is a working Video
Klein set to the tiny subtarget.
* Removed history from the header comment - we have version control for
a readon.
* Modernised and cleaned up Lua bindings for input classes.
* Exposed the input_sequence_poller class to Lua and updated the
autofire and cheat plugins to use it, rather than continuing to
pretend it's part of the input manager.
* Exposed more of the natural keyboard manager, including the ability
to enable/disable individual keyboard and keypad devices like you
can from the keyboard mode menu.
* Exposed a few more things on ioport_port and input_device.
-plugins/cheat: Fixed menu item not updating visually when disabling a
cheat with UI Left.
-plugins/cheatfind: Fixed not finding the first screen after screen
enumerator was exposed as an object rather than using a table.
-bwidow.cpp, pacman.cpp: Minor cleanup to recent changes.