Comment #18 kind of makes sense. In trying to replicate the bug using just Mir demos I found one way to do it: Have a client (which in our case is Unity8 itself) that fails to resize to cover all displays. As it fails to resize to cover all displays, the client (Unity8 shell) will fail to get motion events that are outside of its window.
So this problem can be solved in Unity8 by resizing the Unity8 Mir surface to cover all displays, or it can be solved more reliably with a Mir enhancement (which we plan on already) --> implement pointer grabs so that the cursor location does not ever stop the owning surface from receiving pointer events. Either way, seems like Mir is working correctly. In the absence of pointer grab support, clients (including Unity8) stop getting pointer events when the cursor leaves their window. ** Changed in: mir Status: New => Invalid ** Changed in: mir (Ubuntu) Status: New => Invalid -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to mir in Ubuntu. https://bugs.launchpad.net/bugs/1488417 Title: nexus4 window mode mouse motion bounded incorrectly with external monitor Status in canonical-pocket-desktop: New Status in Mir: Invalid Status in mir package in Ubuntu: Invalid Status in qtmir package in Ubuntu: New Bug description: when connecting a monitor to the Nexus4 during windowed mode, the device is put into landscape mode. the mouse motion appears to not have followed the orientation and is bounded by roughly portrait width instead of landscape width The problem is that when unity8 configures cloning, it picks the intersection of all displays. While the input subsystem uses the bounding rectangle of all displays. Thus it allows the cursor to move around in (1200x1920) while the only surface is 1080x1920. So there is a dead zone between the display extent and the surface extent. When the cursor hits that area the SurfaceInputDispatcher has no surface underneath, so it decides to not send any further mouse input to Unity8. We can fix that by extending the behaviour of display_input_region.cpp to use the intersection of displays when necessary. To manage notifications about this bug go to: https://bugs.launchpad.net/canonical-pocket-desktop/+bug/1488417/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp