D27339: Implement input methods

Vlad Zahorodnii noreply at phabricator.kde.org
Thu Mar 26 08:40:28 GMT 2020


zzag added a comment.


  I came only halfway through the patch, but I don't think that it's a good idea to keep xdg-shell specific bits in WaylandClient.

INLINE COMMENTS

> abstract_client.h:869
>  
> +    void killSurface();
> +

I don't see where it's implemented. Delete it? By the way, we have killWindow().

> virtualkeyboard.cpp:134
> +            m_inputSurface = waylandServer()->createInputPanelSurface(surface);
> +            connect(m_inputSurface, &KWin::AbstractClient::geometryShapeChanged, this, [this] {
> +                if (!m_trackedClient)

Use `frameGeometryChanged` instead of `geometryShapeChanged`.

> wayland_server.cpp:159-162
> +    //not directly connected as the connection is tied to client instead of this
> +    connect(m_XdgForeign, &KWayland::Server::XdgForeignInterface::transientChanged, client, [this](KWayland::Server::SurfaceInterface *child) {
> +        emit foreignTransientChanged(child);
> +    });

Leave it in `createSurface()`. You can't use xdg-foreign with non xdg_toplevel equivalent surfaces.

> wayland_server.h:245
>      }
> +    AbstractClient *createInputPanelSurface(KWayland::Server::InputPanelSurfaceInterface *surface);
>  

s/createInputPanelSurface/createInputPanelClient/

REPOSITORY
  R108 KWin

REVISION DETAIL
  https://phabricator.kde.org/D27339

To: apol, #kwin
Cc: davidedmundson, zzag, kwin, Orage, cacarry, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, ahiemstra, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kwin/attachments/20200326/d146238a/attachment-0001.html>


More information about the kwin mailing list