Mir

Comment 2 for bug 1496069

Revision history for this message
Gerry Boland (gerboland) wrote :

I did some mucking around, it might help.

I was concentrating on the Nexus7. Due to the multimonitor group buffer post design of Android, QtMir currently crashes with my multimonitor branch if it runs as host server with multiple displays. But it works fine as a nested server.

So I wanted to check if this case works ok. Here's how you can reproduce it:
0. Have my multimonitor branch installed
1. push the demos/qml-demo-shell directory of my multimonitor branch to the device. Install mir-demos
2. ssh into the device, and do:
        sudo stop lightdm
3. turn back on the backlight:
        echo 255 > /sys/devices/platform/msm_fb.591617/leds/lcd-backlight/brightness
4. start a host mir server & share the socket:
       sudo mir_proving_server --display-config=sidebyside
       sudo chmod 777 /tmp/mir_socket
5. in another terminal on the device, launch the QML demo:
      export MIR_SOCKET=/tmp/mir_socket
      export QT_QPA_PLATFORM=mirserver
      qmlscene qml-demo-shell.qml
you should see the unity logo on a mild gradient. Tapping the logo makes it spin, wheeee.

6. Now plug in external monitor. You should see a second copy of the unity logo on a mild gradient. This is actually a separate scene, it's not a clone. Tap the logo, one will spin but the other won't.

Now I find that tapping the unity logo is not reliable, random tapping occasionally sets the logo going, but usually not.

To see the input events Qt is getting, run

      QT_LOGGING_RULES='qtmir.*=true' qmlscene qml-demo-shell.qml

I've noticed the coordinates of the input events Qt is printing are off, so that's probably QtMir's fault and I'll fix.

** But there are also portions of the N7 screen I tap where Qt isn't getting input at all. Right now the bottom right of the shell on the tablet is not getting any. **

Input seems to work better if I start the QML demo with external display connected, then unplug, then replug.