Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • libX11 libX11
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 69
    • Issues 69
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & 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
  • xorg
  • lib
  • libX11libX11
  • Merge requests
  • !127

ximcp/imRm.c: allow XNSpotLocation with OnTheSpot

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Kirill Chibisov requested to merge kchibisov/libx11:on-spot-pos into master Apr 03, 2022
  • Overview 0
  • Commits 1
  • Pipelines 2
  • 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
Reviewer
Request review from
Time tracking
Source branch: on-spot-pos