Input method and input/output redirect under wayland

Yichao Yu yyc1992 at gmail.com
Thu Aug 30 14:15:48 PDT 2012


On Thu, Aug 30, 2012 at 3:32 PM, Jan Arne Petersen
<jpetersen at openismus.com> wrote:
> Hi,
>
>> A practical thing the im server can do is to let the compositor
>> transform/redirect it's window, in the same way with the input window
>> and the input method will just need to provide the relative position
>> with the input window.
>>
>> Is there any plans/ideas on such a protocol or how such job can be
>> done? And please correct me if any of my understanding of the wayland
>> protocol/client/compositor/etc. is wrong.
>
> Yes the idea is that the compositor will be responsible for positioning
> the window correctly.
Nice.

>
> The im server would just specify a surface, see current input_panel
> interface at
> http://cgit.freedesktop.org/wayland/weston/tree/protocol/desktop-shell.xml?id=86adef9d54d41b1594749c00abab24482248fa5c#n102.
> I plan to merge that interface into the input_method interface though
> and there will be an enum argument for having the surface positioned at
> the cursor (currently it just supports virtual keyboard like surfaces at
> the bottom of the screen).
Following the cursor definitely need to be supported.

>
> The application will notify the compositor about the cursor location via
> the set_micro_focus request in the text_model interface
> http://cgit.freedesktop.org/wayland/weston/tree/protocol/text.xml?id=86adef9d54d41b1594749c00abab24482248fa5c#n20

So if I understand it correctly (correct me if I am wrong), the im
server can get information about the input surface (e.g. sth like a
text entry widget) and the cursor location in local coordinate of that
surface (which is not redirected) and it can request the compositor to
locate (and redirect if necessary) its overlay window at/around that
position?

I am also interested in whether this information can be passed and
used by another process (another wayland client)? It is possible now
to draw the input method interface by another process examples are
kimpanel[1] and kimtoy[2] both of which use a custom dbus protocol to
get information from the im server and draw the overlay window for it.
This is important for having a native user interface (kimpanel use
plasma-widget), keeping the im-server simple and reducing its
dependence (it doesn't need to worry about rendering or theming or any
kinds of eye candy etc.).

Is it possible to add support for this (let a separate wayland client
to render the inteface)? Many im framework (including Fcitx and IBus)
already support this and it'll also be a lot easier for us to port our
imf to wayland (and keep X support at the same time) if this feature
can be supported.

THX for your great answer.

Yichao Yu

>
> Regards
> Jan Arne Petersen
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel

[1] http://userbase.kde.org/Tutorials/Kimpanel
[2] http://kde-apps.org/content/show.php?content=140967


More information about the wayland-devel mailing list