1. 04 Mar, 2021 1 commit
  2. 01 Mar, 2021 1 commit
  3. 25 Feb, 2021 1 commit
    • David Edmundson's avatar
      Port all connects · 50df14d4
      David Edmundson authored
      This is mostly all automatic from clazy, though it got confused by a few
      namespace issues.
      50df14d4
  4. 23 Feb, 2021 1 commit
  5. 17 Feb, 2021 4 commits
  6. 16 Feb, 2021 1 commit
  7. 15 Feb, 2021 1 commit
    • Vlad Zahorodnii's avatar
      Simplify SeatInterface::touchDown() api · 71ffe8a0
      Vlad Zahorodnii authored
      Currently, the compositor is supposed to pass the position of the touch
      point to the touchDown() function and in return get its unique global
      id. The id can be be passed to subsequent touchMotion() and touchUp().
      
      The compositor is responsible for mapping between libinput slots and
      internal touch point ids.
      
      The mapping step is unnecessary and adds in some complexity as the input
      code now has to keep the mapping table up to date.
      
      This change makes the touch API more convenient to use by making
      relevant functions take touch ids that are assigned by the compositor.
      Usually, compositor would use libinput_event_touch_get_seat_slot() to
      get touch ids.
      
      It also allows introducing event objects that can be useful later in the
      future.
      71ffe8a0
  8. 11 Feb, 2021 1 commit
  9. 02 Feb, 2021 2 commits
  10. 30 Jan, 2021 1 commit
  11. 29 Jan, 2021 1 commit
  12. 26 Jan, 2021 2 commits
  13. 21 Jan, 2021 4 commits
  14. 12 Jan, 2021 1 commit
    • David Edmundson's avatar
      Send SurfaceInterface::enter events after clients bind to outputs · e1e3a4a0
      David Edmundson authored
      The following order of events are legal:
      
      Typically order is:
       - server announces a new output
       - client binds to a new output
       - server updates the surface to be on new output
      
      But we can have events occur in the following order:
      
       - server announces a new output
       - server updates the surface to be on new output
       - client binds to a new output
      
      At which point when we update the surface there is no ID to tell the
      client which output the surface is on.
      
      This patch watches for clients binding to output and updates
      appropriately.
      e1e3a4a0
  15. 06 Jan, 2021 4 commits
  16. 05 Jan, 2021 1 commit
  17. 16 Dec, 2020 1 commit
  18. 14 Dec, 2020 2 commits
    • Andrey Butirsky's avatar
      keyboard_interface: Always update modifiers cache · f67daa07
      Andrey Butirsky authored
      We send modifiers to the active client when they change, and when we
      focus an existing client we send the cached state.
      
      For this reason it's important we always update our internal store of
      modifiers regardless of whether a surface is currently active.
      
      Unit test is adopted accordingly.
      
      BUG: 429930
      f67daa07
    • Vlad Zahorodnii's avatar
      Remove factory methods in Display · 725e97aa
      Vlad Zahorodnii authored
      The main reason why we have factory methods is that up to some point,
      kwayland had its own signal to indicate when globals have to be removed.
      
      Now that all globals add destroy listeners for the wl_display object,
      we don't have that signal. Most factory methods are equivalent to doing
      new T(display).
      
      Besides adding unnecessary boilerplate code, another reason to get rid
      of the factory methods is to reduce the amount of merge conflicts. If
      several persons work on implementing wayland protocols at the same time,
      sooner or later someone will have to resolve merge conflicts in Display.
      725e97aa
  19. 12 Dec, 2020 1 commit
  20. 09 Dec, 2020 3 commits
  21. 07 Dec, 2020 1 commit
  22. 01 Dec, 2020 1 commit
  23. 27 Nov, 2020 1 commit
  24. 19 Nov, 2020 1 commit
  25. 17 Nov, 2020 2 commits
    • Aleix Pol Gonzalez's avatar
      Notify subsurfaces about output changes · c58ea3e8
      Aleix Pol Gonzalez authored
      Otherwise they wouldn't notice and wouldn't update to the settings of
      the new output, like the new output's scaling.
      c58ea3e8
    • David Edmundson's avatar
      Allow small timeout intervals in IdleInterface · 9cf51bb1
      David Edmundson authored
      A threshold exists to stop users flooding the server for no reason.
      
      However, there is a usecase for small timeouts.
      
      rsibreak has a "please relax for 20 seconds" interface. Here it makes
      perfect sense to know if a user is active in small increments. The plan
      is to start a 1s timer and wait for that. Then we wait locally for 20s
      without a resume event.
      9cf51bb1