Touch/pointer input focus on multi-seat

Jacobo Aragunde Pérez jaragunde at
Wed Apr 19 08:37:54 EDT 2017


Here I am again, pushing the boundaries of the multi-seat implementation :)

The goal is to be able to run two browser windows on separate screens
and each with their own set of input devices. Imagine I have a board
connected to two touch screens and two keyboards, and the following seat

* seat_1: keyboard A, touch input on screen 0
* seat_2: keyboard B, touch input on screen 1

Then I create two browser windows, and assign them to screens and seats
like this:

* surface id 7001: visible on screen 0, input acceptance to seat_1
* surface id 7002: visible on screen 1, input acceptance to seat_2

Now I give both surfaces the keyboard focus; with the work I've done so
far in the browser, each surface will receive keystrokes from their own
keyboard. So far so good :)

Unfortunately, when I try to do the same with the touch focus, it's
impossible to do. This is the error message I get:

# LayerManagerControl set surfaces 7002,7001 input focus touch
setting input focus in LayerManagerControl
Cannot set pointer or touch focus for multiple surfaces
LayerManagerService returned: failed
Failed to set input focus

So it looks it's not possible by design. Any ideas how to do this setup?

Thank you in advance!

More information about the genivi-projects mailing list