1. 22 Sep, 2013 3 commits
    • Giulio Camuffo's avatar
    • Neil Roberts's avatar
      Add a test client to test multiple pointer/keyboard resources · f428d257
      Neil Roberts authored
      This adds a hacked version of simple-shm which can create multiple
      pointer and keyboard resources. The resources are created with the
      command line options -p and -k. Both take an integer argument which
      specifies the time in seconds after the program is started when the
      resource should be created. It can also take a second time with a
      colon separator to specify when the resource should be released.
      
      For example:
      
       weston-multi-resource -p5 -p7 -k9 -p12:14
      
      That would create a pointer after 5 seconds, a second pointer 2
      seconds later, a keyboard 2 seconds after that, a third pointer after
      a further 3 seconds and finally after 2 more seconds it would release
      that final pointer resource.
      
      This can be used along with WAYLAND_DEBUG to check that it gets the
      right events for example if the pointer is created while the client's
      surface already has focus and so on.
      f428d257
    • Neil Roberts's avatar
      input: Emit events on all resources for a client · 96d790e7
      Neil Roberts authored
      The Wayland protocol permits a client to request the pointer, keyboard
      and touch multiple times from the seat global. This is very useful in a
      component like Clutter-GTK where we are combining two libraries that use
      Wayland together.
      
      This change migrates the weston input handling code to emit the
      events for all the resources for the client by using the newly added
      wl_resource_for_each macro to iterate over the resources that are
      associated with the focused surface's client.
      
      We maintain a list of focused resources on the pointer and keyboard
      which is updated when the focus changes. However since we can have
      resources created after the focus has already been set we must add the
      resources to the right list and also update any state.
      
      Additionally when setting the pointer focus it will now send the
      keyboard modifiers regardless of whether the focused client has a
      pointer resource. This is important because otherwise if the client
      gets the pointer later than you getting the keyboard then the
      modifiers might not be up-to-date.
      
      Co-author: Neil Roberts <neil@linux.intel.com>
      96d790e7
  2. 21 Sep, 2013 6 commits
  3. 19 Sep, 2013 2 commits
  4. 18 Sep, 2013 6 commits
  5. 17 Sep, 2013 3 commits
  6. 13 Sep, 2013 5 commits
  7. 11 Sep, 2013 15 commits