Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Troubles implementing â,ä,ê,ë from a QPA

Troubles implementing â,ä,ê,ë from a QPA

Scheduled Pinned Locked Moved Unsolved General and Desktop
4 Posts 2 Posters 275 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Alexander M. J
    wrote on last edited by
    #1

    I'm making a QPA of my own, I'm currently having troubles implementing the keyboard. I can't seem to get special characters working (eg.: â,ä,ê,ë).
    Testing this out with the xcb qpa I can type everything fine even on azerty. However, my QPA works very differently.
    The keyevents are fed via a client (JS) connecting to the application, so I am stuck creating my own VKeyboard/PlatformInputContext.

    While investigating the xcb qpa I noticed there is a thing called platforminputcontexts, which I am looking into further now.
    When stepping through all the functions I eventually ended up at qtbase/src/plugins/platforminputcontexts/ibus/qibusinputcontextproxy.h:85 [ProcessKeyEvent]
    There there is a call made via QBus and it disappears, I can't seem to find out what other piece of code listens to this message.

    I have also found the place where the actual commit of the composed string happens qtbase/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp:283 [QIBusPlatformInputContext::commitText]. When i backtrace the steps it took there I see it comes from the event thread so I can not locate the source.

    Sadly very little is documented about these things. What is responsible for the composition of the key events?
    Could someone show me to some code/file/example where I would be able to see what I am doing wrong with my keyboard?

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      To get further information you would have to check ibus directly since its feeding the input data.

      Are you doing something similar to VNC ? If so, that backend might also be of interest.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • A Offline
        A Offline
        Alexander M. J
        wrote on last edited by Alexander M. J
        #3

        Hi! I have checked the VNC QPA and they do not support these composed keys.
        I am checking ibus directly, I find the call that is made to ProcessKeyEvent, but not who implements this. I find the call that is made after that, when it ends up in the commitText function.

        What I can't find is who/what is responsible for it.

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          Likely related to https://github.com/xkbcommon/libxkbcommon

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0

          • Login

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved