1. 10 Jun, 2017 5 commits
  2. 09 Jun, 2017 1 commit
  3. 08 Jun, 2017 6 commits
  4. 07 Jun, 2017 2 commits
  5. 06 Jun, 2017 3 commits
  6. 05 Jun, 2017 14 commits
  7. 04 Jun, 2017 1 commit
  8. 03 Jun, 2017 5 commits
  9. 02 Jun, 2017 3 commits
    • Dan Torop's avatar
      wayland: selectively cancel key repeat on key release · a23ad61a
      Dan Torop authored
      Under Wayland, when multiple keys are pressed and the user releases a
      key, key repeat should continue unless the key released is the one
      currently repeating.
      In the case of:
      - key1 press
      - key1 repeat
      - key2 press -> key1 repeat stopped
      - key2 repeat
      - key2 release
      The behavior should be to cancel keyboard repeat, though key1 is still
      held down. This is consistent with prior X11/XWayland behavior.
      The following also must work:
      - key1 press
      - key2 press
      - key2 release
      - key2 press
      - key1 release
      - key2 should continue to repeat
      The fix for bug #778019 should continue to work:
      - key1 press
      - key1 repeat
      - key2 press -> key1 repeat stopped
      - key1 release
      - key2 should repeat
      The choice to change the counter nkeys to the flag repeat_active
      helps to solve the second test case.
    • Olivier Fourdan's avatar
      wayland: fix xdg_surface test in move/resize drag · 24f9d290
      Olivier Fourdan authored
      begin_resize_drag() and begin_move_drag() check for xdg_surface being
      not null, but those apply on xdg_toplevel so they should check for
      xdg_toplevel being non-null instead.
    • Olivier Fourdan's avatar
      wayland: check parent surface for subsurface · 08aade4b
      Olivier Fourdan authored
      When an event is received while a tooltip is showing, the GtkTooltip's
      event handling code can end up calling gdk_window_set_transient_for()
      from gtk_tooltip_set_last_window().
      The Wayland GDK backend will try to automatically create a subsurface
      in gdk_wayland_window_set_transient_for() but if the parent surface is
      gone meanwhile, this will will cause a crash when trying to create a
      subsurface from a parent with a null surface.
      Checking for the parent is not sufficient, we ought to check for the
      parent surface as well to avoid the crash.