Skip to content

How to best allow interactive session selection? #14

Description

@Ademan

If a user uses xrestrict to confine their tablet to their left screen, and later wants to confine it to their right screen, they cannot do this. This is because interactive selection requires they be able to click on the right screen, but they've already confined themselves to their left screen.

To work around this, a user may unplug and replug their device but that is ugly.

xrestrict could reset all "Coordinate Transformation Matrix"s to identity prior to grabbing pointers, but that potentially munges state the user may wish to keep. In practice I believe this to be acceptable though, as tablets seem to be the most common type of device with absolute X and Y axes, and it seems unlikely a user would have two connected at once. Therefore the following procedure ought to be good enough:

  1. Find all devices with absolute X and Y axes with non-identity "Coordinate Transformation Matrix"s.
  2. Remember these matrices
  3. Reset all matrices to identity
  4. Perform grab
  5. Re-apply all matrices
  6. Apply xrestrict matrix

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions