Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
W
weston
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 273
    • Issues 273
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 120
    • Merge Requests 120
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • wayland
  • weston
  • Issues
  • #329

Closed
Open
Opened Dec 07, 2019 by Ken C@therealkencContributor

RDP backend, pointer image dangles when mouse leaves RDP client window

When the mouse pointer leaves a RDP client application window, Weston leaves the last known image/glyph state of the pointer on-screen. In my case I am using xfreerdp as the client. This is with Weston off master.

Screencap below. I can do a motion gif, but hopefully it captures the gist. The mouse has just exited off the right side of the window. Where the image ends up depends on how fast you move the mouse. What I would like is the pointer to disapear, and re-appear in the correct state when the pointer again enters the RDP client window.

If anyone has any ideas on how to get an event out of FreeRDP indicating the mouse has left the building, I can attempt a PR. I've tried naively wiring up input->FocusInEvent in rdp_peer_init, but sadly it never fires. I'm not actually sure what that event does, but it looked plausible. Oddly I do find through experimentation that a SynchronizeEvent reliably fires when the pointer leaves the client, but there isn't enough information in flags to tell the difference between the pointer leaving and (say) a caps-lock toggle off.

Any suggestions on how to tackle this appreciated.

image

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: wayland/weston#329