1. 29 Apr, 2016 1 commit
    • Jonas Ådahl's avatar
      client: Introduce proxy wrappers · 6d29c0da
      Jonas Ådahl authored
      Using the libwayland-client client API with multiple threads with
      thread local queues are prone to race conditions.
      
      The problem is that one thread can read and queue events after another
      thread creates a proxy but before it sets the queue.
      
      This may result in the event to the proxy being silently dropped, or
      potentially dispatched on the wrong thread had the creating thread set
      the implementation before setting the queue.
      
      This patch introduces API to solve this case by introducing "proxy
      wrappers". In short, a proxy wrapper is a wl_proxy struct that will
      never itself proxy any events, but may be used by the client to set a
      queue, and use it instead of the original proxy when sending requests
      that creates new proxies. When sending requests, the wrapper will
      work in the same way as the normal proxy object, but the proxy created
      by sending a request (for example wl_display.sync) will inherit to the
      same proxy queue as the wrapper.
      
      https://bugs.freedesktop.org/show_bug.cgi?id=91273
      
      Signed-off-by: Jonas Ådahl's avatarJonas Ådahl <jadahl@gmail.com>
      Reviewed-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      Reviewed-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      6d29c0da
  2. 28 Apr, 2016 1 commit
  3. 23 Apr, 2016 1 commit
  4. 21 Apr, 2016 1 commit
    • Yong Bakos's avatar
      protocol: Correct grammar and spelling · 70850643
      Yong Bakos authored
      
      
      Fix grammar, spelling, tense, and other inconsistencies, based on
      correctness, consistency, and precedence both here and influenced
      by wayland-protocols.
      
      - Standardize lower case for summary attribute values.
      - Minor vertical whitespace removal consistency.
      - Standarize references to coordinates, preferring 'surface local'
      - Fix spelling, grammar, tense, and punctuation.
      Signed-off-by: default avatarYong Bakos <ybakos@humanoriented.com>
      70850643
  5. 19 Apr, 2016 3 commits
  6. 05 Apr, 2016 2 commits
  7. 01 Apr, 2016 1 commit
  8. 11 Mar, 2016 1 commit
  9. 10 Mar, 2016 1 commit
  10. 09 Mar, 2016 4 commits
  11. 07 Mar, 2016 3 commits
    • Bryce Harrington's avatar
    • Peter Hutterer's avatar
      doc: link between client and server doc and to the wayland book · 973a70db
      Peter Hutterer authored
      
      
      And insert "client" or "server" into the PROJECT_NAME to know which one we
      have.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      Reviewed-by: default avatarBryce Harrington <bryce@osg.samsung.com>
      973a70db
    • Peter Hutterer's avatar
      doc: generate doxygen html output from the scanner · 2b5310a3
      Peter Hutterer authored
      
      
      This switches the scanner to generate doxygen-compatible tags for the
      generated protocol headers, and hooks up the doxygen build to generate server
      and client-side API documentation. That documentation is now in
      Client/ and Server/, respectively.
      
      GENERATE_HTML is on by default and must be disabled for the xml/man targets to
      avoid messing up the new documentation. We disable all three three targets in
      the doxyfile (xml and man default to NO anyway) to make it obvious that they
      need to be set in the per-target instructions.
      
      Each protocol is a separate doxygen @page, with each interface a @subpage.
      Wayland only has one protocol, wayland-protocols will have these nested.
      Each protocol page has a list of interfaces and the copyright and description
      where available.
      All interfaces are grouped by doxygen @defgroup and @ingroups and appear in
      "Modules" in the generated output. Each interface subpage has the description
      and a link to the actual API doc.
      Function, struct and #defines are documented in doxygen style and associated
      with the matching interface.
      
      Note that pages and groups have fixed HTML file names and are directly
      linkable/bookmark-able.
      
      The @mainpage is a separate file that's included at build time. It doesn't
      contain much other than links to where the interesting bits are. It's a static
      file though that supports markdown, so we can extend it easily in the future.
      
      For doxygen we need the new options EXTRACT_ALL and OPTIMIZE_OUTPUT_FOR_C so
      it scans C code properly. EXTRACT_STATIC is needed since most of the protocol
      hooks are static.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      Reviewed-by: default avatarBryce Harrington <bryce@osg.samsung.com>
      2b5310a3
  12. 02 Mar, 2016 1 commit
  13. 29 Feb, 2016 1 commit
  14. 26 Feb, 2016 2 commits
  15. 20 Feb, 2016 1 commit
  16. 19 Feb, 2016 1 commit
  17. 17 Feb, 2016 6 commits
  18. 16 Feb, 2016 1 commit
  19. 11 Feb, 2016 1 commit
  20. 09 Feb, 2016 1 commit
  21. 05 Feb, 2016 2 commits
  22. 04 Feb, 2016 1 commit
  23. 02 Feb, 2016 3 commits