Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • libX11 libX11
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 71
    • Issues 71
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • xorgxorg
  • lib
  • libX11libX11
  • Merge requests
  • !127

ximcp/imRm.c: allow XNSpotLocation with OnTheSpot

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Kirill Chibisov requested to merge kchibisov/libx11:on-spot-pos into master Apr 03, 2022
  • Overview 1
  • Commits 1
  • Pipelines 3
  • Changes 1

The XNSpotLocation getting/setting wasn't allowed when preedit callbacks were used, the original motivation about this limitation was that xim servers weren't handling it position with preedit callbacks, however in the current state I'm not sure if there's a single xim server that could break from it, and it's more desired for the end user.

Moreover libxcb does allow doing so, so if the client is using libxcb the XNSpotLocation could be set, unlike with libX11. So for the end user it looks like libX11 clients are buggy compared to libxcb ones, since their IME popup window is being in the wrong location with the libX11.

The change was already brought in the past in [1], but it seems like it got lost.

[1] - https://bugs.freedesktop.org/show_bug.cgi?id=1580.

--

I've tested clients that use libX11 and servers like fcitx and ibus (whatever default gnome on X11 is using). The change seems to work and behavior is the same as with libxcb.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: on-spot-pos