1. 03 Sep, 2020 1 commit
  2. 29 Apr, 2020 1 commit
  3. 16 Mar, 2020 1 commit
  4. 23 Jan, 2020 1 commit
  5. 07 Nov, 2018 1 commit
    • Roman Gilg's avatar
      [server] Text input content hint and purpose per protocol version · 7c0f6cfa
      Roman Gilg authored
      Convert content hint and purpose according to used text-input protocol version.
      This way we can use different specifiers, which enables us in the future to use
      the default hint of v0 and the pin purpose of v3.
      Also code is cleaner when using the correctly versioned specifier names according
      to the protocol version.
      Test Plan: Compiles, autotest passes.
      Reviewers: #kwin, #frameworks, zzag
      Reviewed By: #kwin, zzag
      Subscribers: zzag, kde-frameworks-devel
      Tags: #frameworks
      Differential Revision: https://phabricator.kde.org/D16708
  6. 06 Nov, 2018 2 commits
    • Roman Gilg's avatar
      [server] Put text-input (de-)activate, en-/disable callbacks in child classes · 12e46aa1
      Roman Gilg authored
      The activate/deactivate and enable/disable callback functionality was in the
      TextInputInterface::Private interface, but these calls are each specific to v0
      and v2 of the protocol.
      Since v3 will have again a different function signature, put all the callbacks
      and their helper functions in the protocol version specific child classes.
      Test Plan: Compiles, runs.
      Reviewers: #kwin, #frameworks, davidedmundson, zzag
      Reviewed By: #kwin, davidedmundson, zzag
      Subscribers: zzag, kde-frameworks-devel
      Tags: #frameworks
      Differential Revision: https://phabricator.kde.org/D16676
    • Roman Gilg's avatar
      [server] Put set surrounding text callback with uint in v0 class · c3179f58
      Roman Gilg authored
      The set surrounding text request is only in v0 of text-input with uint arguments,
      in v2 and v3 the call has the same signature.
      To increase readability put the uint version in the v0 class implementation
      and rename callbacks.
      Test Plan: Compiles
      Reviewers: #kwin, #frameworks, zzag
      Reviewed By: #kwin, zzag
      Subscribers: davidedmundson, zzag, kde-frameworks-devel
      Tags: #frameworks
      Differential Revision: https://phabricator.kde.org/D16675
  7. 05 May, 2017 1 commit
    • David Edmundson's avatar
      Validate surface is valid when sending TextInput leave event · 93fb3260
      David Edmundson authored
      It's possible for the surface to be unbound when we send the leave
      event; we've called Resource::unbind() of Surface, so the Surface has,
      deleteLater called, but it's still a valid object, and the first check
      We get in this situation because when a surface is destroyed, we're
      handling text input from the same source event.
      Sending a nullpointer is a protocol error, and wayland kindly closes the
      This fixes my constant:
      "Did the Wayland server die" error messages when running clients.
      Test Plan:
      Got errors after setting up qt virtual keyboard.
      Had reproducible case.
      Restarted kwin after this patch, now doesn't crash.
      Reviewers: #plasma, graesslin
      Subscribers: apol, graesslin, plasma-devel, #frameworks
      Tags: #plasma_on_wayland, #frameworks
      Differential Revision: https://phabricator.kde.org/D5712
  8. 30 May, 2016 1 commit
    • Martin Flöser's avatar
      [server] Standardize the destructor request handling for Resources · 03594de1
      Martin Flöser authored
      This change standardizes the behavior regarding the destructor request.
      The destructor should destroy the resource and nothing else. The
      Wayland library invokes the static unbind method once the resource is
      destroyed. The implementation provided by Resource::Private::unbind
      triggers a delete later on the Resource. So there is no need to trigger
      a deleteLater from the destructor request callback.
      This change adds a generic implementation to Resource::Private which is
      now used by all inheriting classes replacing the custom implementations.
      Test Plan:
      For a few Resources the test is extended to ensure that the Resource
      gets deleted on server side.
      Reviewers: #plasma
      Subscribers: plasma-devel
      Tags: #plasma
      Differential Revision: https://phabricator.kde.org/D1679
  9. 25 May, 2016 1 commit
    • Martin Flöser's avatar
      Implement wl_text_input and zwp_text_input_v2 interfaces · 905e6996
      Martin Flöser authored
      This change introduces support for text input. Text input allows to
      compose text on the server (e.g. through a virtual keyboard) and sent
      the composed text to the client.
      There are multiple interfaces for text input. QtWayland 5.6 uses
      wl_text_input, QtWayland 5.7 uses zwp_text_input_v2.
      wl_text_input is from pre Wayland-Protocols times and considered as
      UnstableV0 in this implementation. The other interface is UnstableV2.
      Unfortunately the V2 variant is not yet part of Wayland-Protocols, but
      used in Qt.
      The implementation hides the different interfaces as good as possible.
      The general idea is the same, the differences are rather minor.
      This means changes to how interfaces are wrapped normally. On client
      side in the Registry a manager is factored which represent either of
      the two interfaces. Similar on the server side Display's factory method
      takes an argument to decide which interface should be factored. This
      way a user of the library can expose both interfaces and thus be
      compatible with Qt 5.6 and Qt 5.7 onwards.
      Reviewers: #plasma
      Subscribers: plasma-devel
      Tags: #plasma
      Differential Revision: https://phabricator.kde.org/D1631