This is basically a lite version of multiseat (see my other question): I can setup two mouse pointers (see e.g. here, here or here) and two keyboards (although my two identical logitech K200 keyboards show up as four keyboards in xinput list, any ideas why?). Only this is not enough to allow two users to do things independently, since apparently only one window can be focused at a time so all keyboard input goes to that window. Can this behaviour be changed?
Can the inputs of two keyboards be directed to two different windows at the same time? And can a mouse-locking application be told to only lock one of the pointers?
(in case your answer includes Xephyr, can that support direct open gl rendering?)