1. 22 Oct, 2019 2 commits
  2. 20 Oct, 2019 1 commit
    • Friedrich W. H. Kossebau's avatar
      Use ECMGenerateExportHeader to manage deprecated API better · 1fb1906a
      Friedrich W. H. Kossebau authored
      Summary:
      Allows
      * projects linking to KWayland to hide deprecated API up to a
        given version or silence deprecation warnings after a given version,
        using
        * -DKWAYLAND_DISABLE_DEPRECATED_BEFORE_AND_AT
        * -DKWAYLAND_NO_DEPRECATED
        * -DKWAYLAND_DEPRECATED_WARNINGS_SINCE
        * -DKWAYLAND_NO_DEPRECATED_WARNINGS
      
        or
        * -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT
        * -DKF_NO_DEPRECATED
        * -DKF_DEPRECATED_WARNINGS_SINCE
        * -DKF_NO_DEPRECATED_WARNINGS
      
      No support for "EXCLUDE_DEPRECATED_BEFORE_AND_AT", needs to be done by
      someone with detailed knowledge about disabling implementation, if wanted.
      
      Reviewers: #kwin
      
      Subscribers: zzag, kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D24663
      1fb1906a
  3. 15 Oct, 2019 1 commit
  4. 12 Oct, 2019 1 commit
  5. 06 Oct, 2019 1 commit
  6. 17 Sep, 2019 2 commits
  7. 16 Sep, 2019 1 commit
  8. 15 Sep, 2019 1 commit
    • Frederik Gladhorn's avatar
      Improve documentation · 6388d550
      Frederik Gladhorn authored
      Summary:
      Some of the documentation did not say what the purpose of the
      respective class was, but rather gave a tautology.
      For people new to the code base it helps to mention that
      DPMS is power management.
      
      That DataDevice is for copy-and-paste and drag-and-drop is
      maybe obvious to people used to X11 API, but not very clear
      to most others.
      
      When first reading the KWayland code, some explanations
      help getting around.
      
      Reviewers: #kwin, romangg
      
      Reviewed By: #kwin, romangg
      
      Subscribers: romangg, zzag, kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D23915
      6388d550
  9. 14 Sep, 2019 2 commits
  10. 12 Sep, 2019 1 commit
  11. 07 Sep, 2019 1 commit
  12. 28 Aug, 2019 3 commits
    • David Edmundson's avatar
      [server] Wrap proxyRemoveSurface in smart pointer · f7763052
      David Edmundson authored
      Summary:
      proxyRemoteSurface is a fake wayland surface created for the drag and
      drop between X and wayland clients.
      
      The lifespan is not guaranteed to outlive the DataDevice.
      
      Kwin closes Xwl before the other wayland client connections so it's
      technically dangling for a bit when events could be dispatched.
      
      Probably will never happen, but better to guard and be safe.
      
      Test Plan: Compiles
      
      Reviewers: #kwin, zzag
      
      Reviewed By: #kwin, zzag
      
      Subscribers: kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D22862
      f7763052
    • Roman Gilg's avatar
      [server] Use cached current mode more and assert validness · 0c0a2710
      Roman Gilg authored
      Summary:
      We can use the cached current mode in one more case. Additionally make it
      more explicit what a valid mode is and when to add them.
      
      Test Plan: Relevant autotests pass. KWin Wayland nested and DRM session work.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D23535
      0c0a2710
    • Roman Gilg's avatar
      [server] Cache current mode · ce5e25a4
      Roman Gilg authored
      Summary:
      Instead of looping over all modes for retrieving current mode data copy it
      to a separate variable.
      
      Test Plan:
      KWin auto tests pass and KScreen in Wayland nested session shows correct
      information.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: davidedmundson, kde-frameworks-devel
      
      Tags: #frameworks
      
      Maniphest Tasks: T11459
      
      Differential Revision: https://phabricator.kde.org/D23493
      ce5e25a4
  13. 11 Aug, 2019 1 commit
  14. 06 Aug, 2019 1 commit
    • Roman Gilg's avatar
      Implement zwp_linux_dmabuf_v1 · 1dd57d90
      Roman Gilg authored
      Summary: This interface provides a way for clients to create generic dmabuf-based wl_buffers.
      
      Test Plan: Works with weston-simple-dmabuf-drm and weston-simple-dmabuf-egl in KWin.
      
      Reviewers: #kwin, #plasma, graesslin, davidedmundson, mart, fredrik
      
      Subscribers: zzag, kde-frameworks-devel, romangg, plasma-devel
      
      Tags: #frameworks, #plasma_on_wayland
      
      Maniphest Tasks: T8067
      
      Differential Revision: https://phabricator.kde.org/D10747
      1dd57d90
  15. 03 Aug, 2019 1 commit
  16. 02 Aug, 2019 1 commit
  17. 13 Jul, 2019 1 commit
  18. 08 Jul, 2019 1 commit
    • Vlad Zahorodnii's avatar
      Use wayland-protocols · 40b86f77
      Vlad Zahorodnii authored
      Summary:
      So far we've been copying protocol specifications from wayland-protocols
      repo to kwayland repo. The main issue with copying is that we have to
      keep xml files in sync manually. A better approach would be to use xml
      specs straight from wayland-protocols package.
      
      Test Plan: Compiles.
      
      Reviewers: #kwin, #frameworks, romangg, davidedmundson
      
      Reviewed By: #kwin, romangg, davidedmundson
      
      Subscribers: davidedmundson, apol, romangg, asturmlechner, kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D22216
      40b86f77
  19. 06 Jul, 2019 1 commit
  20. 04 Jul, 2019 1 commit
  21. 22 Jun, 2019 3 commits
  22. 13 Jun, 2019 1 commit
  23. 08 Jun, 2019 1 commit
  24. 01 Jun, 2019 1 commit
  25. 17 May, 2019 2 commits
  26. 15 May, 2019 1 commit
  27. 14 May, 2019 1 commit
    • David Edmundson's avatar
      Implement set_window_geometry · 6da6c7c7
      David Edmundson authored
      Summary:
      Used by clients to say where their true window geometry is relative to
      the buffer size. Important if a client has client side shadows which
      shouldn't be included for positioning tasks.
      
      Technically this should be double buffered, but for consistency with all
      other XdgShell properties this will be a task left to ShellClient.
      
      Test Plan: Unit test
      
      Reviewers: #kwin, zzag
      
      Reviewed By: #kwin, zzag
      
      Subscribers: zzag, kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D20595
      6da6c7c7
  28. 08 May, 2019 1 commit
    • Roman Gilg's avatar
      Implement wl_surface::damage_buffer · b71e1035
      Roman Gilg authored
      Summary:
      Missing from our surface handling was the damage_buffer call introduced in
      version 4 of the wl_compositor interface.
      
      Its only difference to a normal damage call is that the damaged region is
      supposed to be defined by the client in buffer coordinates instead of
      surface coordinates. This damage must be tracked separately in KWayland
      and on commit with the buffer transformation united with the normal damage.
      
      Test Plan: Autotest updated.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: davidedmundson, zzag, kde-frameworks-devel
      
      Tags: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D15910
      b71e1035
  29. 04 May, 2019 1 commit
  30. 02 May, 2019 1 commit
  31. 15 Apr, 2019 1 commit
    • Erik Kurzinger's avatar
      Implement wl_eglstream_controller Server Interface · e208389c
      Erik Kurzinger authored
      Summary:
      This implements a wrapper class for the wl_eglstream_controller Wayland
      interface. It allows clients to inform the compositor when a new EGL Stream has
      been created with an Wayland surface attached as its producer. The compositor
      can then bind a GL texture as the stream's consumer allowing it access to the
      surface's buffer contents for presentation. The only client currently expected
      to make use of this interface is the NVIDIA EGL driver when running alongside a
      compositor supporting EGLStream-based buffer sharing.
      
      Reviewers: #kwin, romangg, davidedmundson
      
      Reviewed By: #kwin, romangg, davidedmundson
      
      Subscribers: kde-frameworks-devel
      
      Tage: #frameworks
      
      Differential Revision: https://phabricator.kde.org/D18824
      e208389c
  32. 13 Apr, 2019 1 commit