clear selection if the selected widget is no longer on screen after layout
initial new-ui based console and input
make mono font available to the UI
don't send any events to the old gui or the game proper if the console is up
restore completion and history
refocus text entry after enter
console output scroller
clear output
force cursor to the end if it was already at the end before the text change
ignore empty string
cleanup
no more line limit, we're not using it
handle mouse wheel events directly so we're not reliant on the sizing of the internal widget
reset preferred size calc after text change
fake a scroll event after layout to ensure we're in the right spot if the content has changed
always keep a slider object around, so we can get/set the slider position even when its off-screen
force output scroll to the bottom after each command
Add a method `hasprop` to Lua objects to check if a property exists
make the console background darker
Merge branch 'new-ui-console'