Created attachment 184182 [details]
Xorg-server is the program that shares framebuffer with the kernel terminal emulator. To avoid interference it must disable terminal output on start and restore on finish.
Currently it is done partially by xorg-server itself, partially by and xf86-input-keyboard driver. Switching to xf86-input-evdev or xf86-input-libinput as keyboard events source disables xf86-input-keyboard and broke terminal handling.
Attached patch fixes terminal initialization with copy-pasting missing chunks of code from xf86-input-keyboard to xorg-server. Similar changes are already done in Linux-specific parts of xorg-server (See hw/xfree86/os-support/linux/lnx_init.c).
1. Disables processing of special keys (CTRL-C, ALT-Fn) by switching terminal keyboard to K_RAW mode.
2. Turns off annoying bell on input queue overflow.
3. Disables terminal echoing.
It is believed that switching terminal to KD_GRAPHICS mode should do #3, but that is wrong at least on VT consoles.
I have integrated this, with improvements (using SYSCALL), into my 1.19 WIP.