profile/ivi/wayland.git
12 years agotests: Add marshal+demarshal connection test
Kristian Høgsberg [Fri, 23 Mar 2012 15:41:34 +0000 (11:41 -0400)]
tests: Add marshal+demarshal connection test

12 years agotests: Use different connections for read and write tests
Kristian Høgsberg [Fri, 23 Mar 2012 15:32:17 +0000 (11:32 -0400)]
tests: Use different connections for read and write tests

The connection tests so far only use one connection at a time, but this
prepares for tests that use a connection on both sides of the socket.

12 years agoconnection: Just look at buffer size and remove redundant n_fds_out
Kristian Høgsberg [Fri, 23 Mar 2012 04:48:19 +0000 (00:48 -0400)]
connection: Just look at buffer size and remove redundant n_fds_out

Instead of maintaining a count of the fds in the buffer, just compute
that from the buffer size.  That way we don't get out of sync.

12 years agoconnection: Set n_fds_out to 0 when we send out the fds
Kristian Høgsberg [Fri, 23 Mar 2012 04:27:04 +0000 (00:27 -0400)]
connection: Set n_fds_out to 0 when we send out the fds

This needs to happen always, not just when the fd buffer overflows.

12 years agoAdd protocol for axis events
Scott Moreau [Tue, 20 Mar 2012 15:10:18 +0000 (09:10 -0600)]
Add protocol for axis events

12 years agotests: Remove debug printf
Kristian Høgsberg [Wed, 21 Mar 2012 14:32:06 +0000 (10:32 -0400)]
tests: Remove debug printf

12 years agoevent-loop: Use two-step destruction of event loop sources.
Jonas Ådahl [Wed, 21 Mar 2012 09:31:24 +0000 (10:31 +0100)]
event-loop: Use two-step destruction of event loop sources.

Instead of directly freeing an event source upon removal put it in a
queue later handled by the event loop; either after a dispatch or upon
event loop destruction.

This is necessary to avoid already queued up event sources to be freed
during some other dispatch callback, causing segmentation faults when
the event loop later tries to handle an event from the freed source.

Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
12 years agotests: Add test case for freeing source with pending data
Kristian Høgsberg [Wed, 21 Mar 2012 14:29:47 +0000 (10:29 -0400)]
tests: Add test case for freeing source with pending data

12 years agoCheck arguments to wl_resource_post_error in gcc
Bill Spitzak [Mon, 19 Mar 2012 01:54:21 +0000 (18:54 -0700)]
Check arguments to wl_resource_post_error in gcc

The attached patch turns on printf argument warnings for this function,
which I found was being called incorrectly at least once in the wayland
source code.

12 years agoconfigure: Add option to disable building documentation.
Üstün Ergenoğlu [Sat, 17 Mar 2012 17:09:39 +0000 (19:09 +0200)]
configure: Add option to disable building documentation.

Signed-off-by: Üstün Ergenoğlu <ego@ustun.fi>
12 years agotest: add a unit test for the event loop post dispatch check
Ander Conselvan de Oliveira [Wed, 14 Mar 2012 12:47:40 +0000 (14:47 +0200)]
test: add a unit test for the event loop post dispatch check

12 years agoevent-loop: always do the post-dispatch check
Ander Conselvan de Oliveira [Tue, 13 Mar 2012 11:16:13 +0000 (13:16 +0200)]
event-loop: always do the post-dispatch check

The post-dispatch check on wl_event_loop_dispatch() was not being run
if epoll_wait returned 0 events, making the check unreliable.

12 years agoTODO: Pull in updated TODO list from 1.0 roadmap email
Kristian Høgsberg [Tue, 20 Mar 2012 16:32:51 +0000 (12:32 -0400)]
TODO: Pull in updated TODO list from 1.0 roadmap email

12 years agodoc: Don't list directories in list of files to install
Kristian Høgsberg [Fri, 16 Mar 2012 13:26:05 +0000 (09:26 -0400)]
doc: Don't list directories in list of files to install

The find expression was listing the xml_tmp directory, because it matched
the -prune rule.

12 years agoFlush the connection if we have to many marshaled fds
Ander Conselvan de Oliveira [Fri, 9 Mar 2012 10:51:42 +0000 (12:51 +0200)]
Flush the connection if we have to many marshaled fds

The buffer used by wl_connection_data to receive a cmsg is 128 bytes
long. This can hold at most 28 fds but when a cmsg is generated for
sending the fds, there is no check for this limitation. The man page
for recvmsg does not show any way of recovering from MSG_CTRUNC, that
happens when the buffer supplied for cmsg is too short.

Fix this by flushing the data to be written instead of generating a
cmsg buffer longer than the maximum.

12 years agotest-runner.c: Consolidate test running code
Kristian Høgsberg [Tue, 6 Mar 2012 03:29:53 +0000 (22:29 -0500)]
test-runner.c: Consolidate test running code

12 years agotests: Add demarshal tests
Kristian Høgsberg [Tue, 6 Mar 2012 03:26:17 +0000 (22:26 -0500)]
tests: Add demarshal tests

12 years agotests: Add more marshal tests
Kristian Høgsberg [Tue, 6 Mar 2012 02:53:38 +0000 (21:53 -0500)]
tests: Add more marshal tests

12 years agotests: Simplify connection tests a bit
Kristian Høgsberg [Tue, 6 Mar 2012 02:40:01 +0000 (21:40 -0500)]
tests: Simplify connection tests a bit

12 years agotests: Add wl_list tests
Kristian Høgsberg [Tue, 6 Mar 2012 02:38:25 +0000 (21:38 -0500)]
tests: Add wl_list tests

12 years agotests: More wl_map tests
Kristian Høgsberg [Tue, 6 Mar 2012 02:14:57 +0000 (21:14 -0500)]
tests: More wl_map tests

12 years agoTOOD: Frame based input done
Kristian Høgsberg [Tue, 6 Mar 2012 02:02:53 +0000 (21:02 -0500)]
TOOD: Frame based input done

12 years agotests: makefile error: missing test-runner.h
Gaetan Nadon [Sat, 3 Mar 2012 22:32:59 +0000 (17:32 -0500)]
tests: makefile error: missing test-runner.h

Detected by running distcheck

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
12 years agoscanner: Add since attribute
Kristian Høgsberg [Mon, 5 Mar 2012 15:31:53 +0000 (10:31 -0500)]
scanner: Add since attribute

This will help us document when a request or event was added to the protocol.

12 years agocheck: connection-test fails to link to ffi
Gaetan Nadon [Sun, 4 Mar 2012 17:15:31 +0000 (12:15 -0500)]
check: connection-test fails to link to ffi

This prevents distcheck from completing.
Moving the -lffi at the end of the command fixes the problem.

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
12 years agopublican: support out-of-source tree build
Gaetan Nadon [Sat, 3 Mar 2012 22:32:58 +0000 (17:32 -0500)]
publican: support out-of-source tree build

When srcdir!=builddir, there is no way to tell publican that the source
is in srcdir rather than builldir. The workaround is to copy the source
files from srcdir to builddir. To retain the en-US final destination
name, the source directory is renamed to en_US.

Tested-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
12 years agoFix distcheck where protocol.xsl was missing in the tarball
Gaetan Nadon [Sat, 3 Mar 2012 22:32:57 +0000 (17:32 -0500)]
Fix distcheck where protocol.xsl was missing in the tarball

To reproduce, invoke distcheck from an out-of-source tree.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
12 years agoAdd wl_array_for_each
Kristian Høgsberg [Sun, 4 Mar 2012 18:40:49 +0000 (13:40 -0500)]
Add wl_array_for_each

12 years agoAdd tests subdir to toplevel SUBDIRS variable
Kristian Høgsberg [Sat, 3 Mar 2012 05:39:42 +0000 (00:39 -0500)]
Add tests subdir to toplevel SUBDIRS variable

Artie spotted this.

12 years agotests: Add connection marshalling tests
Kristian Høgsberg [Sat, 3 Mar 2012 05:29:21 +0000 (00:29 -0500)]
tests: Add connection marshalling tests

12 years agotests: Add connection tests
Kristian Høgsberg [Sat, 3 Mar 2012 04:42:46 +0000 (23:42 -0500)]
tests: Add connection tests

12 years agotest-runner: Fix warnings
Kristian Høgsberg [Sat, 3 Mar 2012 04:42:07 +0000 (23:42 -0500)]
test-runner: Fix warnings

12 years agoconnection: Export wl_connection_queue() so we can test it
Kristian Høgsberg [Sat, 3 Mar 2012 04:38:31 +0000 (23:38 -0500)]
connection: Export wl_connection_queue() so we can test it

12 years agotests: Print test status after running test
Kristian Høgsberg [Sat, 3 Mar 2012 03:45:28 +0000 (22:45 -0500)]
tests: Print test status after running test

This way assert output will be a line by itself, which is easier to read
and lets editors such as emacs step through failed assertions.

12 years agotests: Add Unit tests for wl_map and wl_array data structures
Kristian Høgsberg [Fri, 2 Mar 2012 23:03:16 +0000 (18:03 -0500)]
tests: Add Unit tests for wl_map and wl_array data structures

We use a simple test-runner helper that runs each test in a separate
process and reports the pass/fail rate at the end.

12 years agoTerminate drag if data source is destroyed
Ander Conselvan de Oliveira [Fri, 2 Mar 2012 13:45:56 +0000 (15:45 +0200)]
Terminate drag if data source is destroyed

12 years agoserver: fix event sending type mismatches
Pekka Paalanen [Fri, 2 Mar 2012 16:09:27 +0000 (18:09 +0200)]
server: fix event sending type mismatches

These were not bugs in practice, because the first (and only) field of
struct wl_surface is struct wl_resource.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
12 years agoserver: use the event sending wrappers
Pekka Paalanen [Fri, 2 Mar 2012 15:08:59 +0000 (17:08 +0200)]
server: use the event sending wrappers

This exposes some type mismatches that are fixed in the next commit.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
12 years agoscanner: emit event wrapper functions for server
Pekka Paalanen [Fri, 2 Mar 2012 13:16:33 +0000 (15:16 +0200)]
scanner: emit event wrapper functions for server

Generate typed wrapper functions for sending events in a server.

This allows compile time type checking, unlike the existing method of
calling the variadic function wl_resource_post_event().

The stuff in wayland-server.h had to be slightly reordered to have all
(forward) declarations before use.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
12 years agowayland-server: Destroy resource before sending out delete_id event
Kristian Høgsberg [Fri, 2 Mar 2012 03:46:07 +0000 (22:46 -0500)]
wayland-server: Destroy resource before sending out delete_id event

In some cases, we send out events from the resource destructor and
those need to go out before we recycle the object ID.

12 years agoFix server crash when a client dies during a drag with an icon
Ander Conselvan de Oliveira [Thu, 1 Mar 2012 12:09:42 +0000 (14:09 +0200)]
Fix server crash when a client dies during a drag with an icon

If a client dies during a drag that it started using an icon surface,
the server could crash because the icon surface is not valid anymore.

Fix this by using a destroy listener to reset device->drag_surface to
nil when the surface is destroyed.

12 years agoFix wl_data_offer source destroy listener
Ander Conselvan de Oliveira [Thu, 1 Mar 2012 12:09:41 +0000 (14:09 +0200)]
Fix wl_data_offer source destroy listener

The listener function implementation was getting a wrong pointer to the
wl_data_offer object because the resource parameter is actually the
data source and not the data offer.

12 years agoconfigure.ac: Fix test-for-empty bug
Kristian Høgsberg [Wed, 29 Feb 2012 17:49:25 +0000 (12:49 -0500)]
configure.ac: Fix test-for-empty bug

From Gaetan Nadon:

./configure: line 11662: test: !=: unary operator expected
AM_CONDITIONAL([HAVE_XSLTPROC], [test $XSLTPROC != ""])
AM_CONDITIONAL([HAVE_PUBLICAN], [test $PUBLICAN != ""])

It shows up when you do not have publican. The usual "testing for blank" bug.

12 years agoprotocol: Clarify the documentation for the fullscreen protocol
Rob Bradford [Tue, 28 Feb 2012 16:48:26 +0000 (16:48 +0000)]
protocol: Clarify the documentation for the fullscreen protocol

12 years agoMerge remote-tracking branch 'whot/publican'
Kristian Høgsberg [Wed, 29 Feb 2012 16:54:36 +0000 (11:54 -0500)]
Merge remote-tracking branch 'whot/publican'

12 years agoDon't block when flushing a full protocol buffer
Kristian Høgsberg [Wed, 29 Feb 2012 16:07:48 +0000 (11:07 -0500)]
Don't block when flushing a full protocol buffer

In case the client isn't responding, this will block the compositor.
Instead we flush with MSG_DONTWAIT, which lets us fill up the kernel buffer
as much as we can (after not returning EPOLLOUT anymore it still can take
80k more), and then disconnect the client if we get EAGAIN.

12 years agoHack up distcheck for publican
Peter Hutterer [Wed, 29 Feb 2012 01:49:16 +0000 (11:49 +1000)]
Hack up distcheck for publican

Publican requires a read-write source tree, see
http://bugzilla.redhat.com/show_bug.cgi?id=798484

And it currently cannot build out-of-tree, so we need to copy the sources
into the _build tree and generate Protocol.xml into that tree too (we'd have
to do this anyway since automake creates a read-only source tree, so we
can't just link).

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoGenerate the docbook description for the protocol from wayland.xml
Peter Hutterer [Fri, 24 Feb 2012 07:31:51 +0000 (17:31 +1000)]
Generate the docbook description for the protocol from wayland.xml

Convert the wayland.xml protocol description to a docbook-compatible format
and hook it up to the publican sources.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoHook up autotools for publican
Peter Hutterer [Thu, 23 Feb 2012 23:42:05 +0000 (09:42 +1000)]
Hook up autotools for publican

automake doesn't seem to provide a sensible method to install a directory of
stuff in $(docdir). Do it manually then.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agodoc: Comment out some of the default chapters
Peter Hutterer [Tue, 28 Feb 2012 22:42:26 +0000 (08:42 +1000)]
doc: Comment out some of the default chapters

I'll leave them in for now as a template for how things looked originally,
this can be removed later.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agodoc: Add architecture from the website
Peter Hutterer [Fri, 24 Feb 2012 01:01:39 +0000 (11:01 +1000)]
doc: Add architecture from the website

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agodoc: Fix up title page with logo and author information
Peter Hutterer [Thu, 23 Feb 2012 23:47:44 +0000 (09:47 +1000)]
doc: Fix up title page with logo and author information

Abstract taken from http://wayland.freedesktop.org

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agodoc: add publican-created doctree
Peter Hutterer [Thu, 23 Feb 2012 23:37:02 +0000 (09:37 +1000)]
doc: add publican-created doctree

$> publican create --name=Wayland
unmodified otherwise

To build the tree to target formats, use
$> publican build --langs=en-US --formats=html,pdf

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoprotocol: fix make distcheck
Peter Hutterer [Wed, 29 Feb 2012 00:40:53 +0000 (10:40 +1000)]
protocol: fix make distcheck

Distribute all source files that we need for buildling.
Plus, remove the html file on make clean.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoUpdate TODO
Kristian Høgsberg [Tue, 28 Feb 2012 21:42:17 +0000 (16:42 -0500)]
Update TODO

12 years agoAllow update function to not be set in wl_display_get_fd
Samuel Rødal [Mon, 27 Feb 2012 15:57:42 +0000 (16:57 +0100)]
Allow update function to not be set in wl_display_get_fd

Ignore previous patch, here's the correct version.

From 4e1bedaaf05b576f5191f8fe3a34904ab9707414 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Samuel=20R=C3=B8dal?= <samuel.rodal@nokia.com>
Date: Mon, 27 Feb 2012 15:17:20 +0100
Subject: [PATCH] Allow update function to not be set in wl_display_get_fd

The same check is done in connection_update, and now with
wl_display_flush() there's less need for the client to need to know the
connection mask.

12 years agoRename client side wl_display_destroy() to wl_display_disconnect()
Samuel Rødal [Mon, 27 Feb 2012 16:10:03 +0000 (17:10 +0100)]
Rename client side wl_display_destroy() to wl_display_disconnect()

This avoids the clash with the wayland-server version with the same
name, and allows linking against both wayland-client and wayland-server
at the same time, which can be useful for unit testing purposes as
well as for nested compositing.

Without this there will be crashes as the wrong wl_display_destroy()
is called.

12 years agoutil: Comments before wl_list were a bit off, fixed the example usage.
Üstün Ergenoğlu [Sat, 25 Feb 2012 10:56:32 +0000 (12:56 +0200)]
util: Comments before wl_list were a bit off, fixed the example usage.

Signed-off-by: Üstün Ergenoğlu <ego@ustun.fi>
12 years agoprotocol.xsl: Rename stylesheet to wayland-protocol.css
Kristian Høgsberg [Thu, 23 Feb 2012 21:41:46 +0000 (16:41 -0500)]
protocol.xsl: Rename stylesheet to wayland-protocol.css

Otherwise it clashes with the website stylesheet.

12 years agoprotocol: add xslt stylesheet to prettify the protocol
Peter Hutterer [Thu, 23 Feb 2012 05:58:37 +0000 (15:58 +1000)]
protocol: add xslt stylesheet to prettify the protocol

Includes rudimentary styling only.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoprotocol: fix missing hyphenation for "client-created"
Peter Hutterer [Thu, 23 Feb 2012 05:55:41 +0000 (15:55 +1000)]
protocol: fix missing hyphenation for "client-created"

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoscanner: Remove unused variable 'len'
Peter Hutterer [Thu, 23 Feb 2012 05:55:40 +0000 (15:55 +1000)]
scanner: Remove unused variable 'len'

scanner.c: In function ‘desc_dump’:
scanner.c:142:42: warning: unused variable ‘len’ [-Wunused-variable]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agospec: padding bytes are undefined, state so
Peter Hutterer [Thu, 23 Feb 2012 05:55:39 +0000 (15:55 +1000)]
spec: padding bytes are undefined, state so

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agospec: typo and wording fixes
Peter Hutterer [Thu, 23 Feb 2012 05:55:38 +0000 (15:55 +1000)]
spec: typo and wording fixes

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
12 years agoFix compilation: uid_t, gid_t and pid_t are defined in sys/types.h
Thiago Macieira [Thu, 23 Feb 2012 18:50:37 +0000 (19:50 +0100)]
Fix compilation: uid_t, gid_t and pid_t are defined in sys/types.h

This error shows up in third-party code when including
wayland-server.h.

12 years agoAdd wl_region and surface requests to set opaque and input regions
Kristian Høgsberg [Thu, 23 Feb 2012 19:50:06 +0000 (14:50 -0500)]
Add wl_region and surface requests to set opaque and input regions

12 years agoSplit pointer_focus and keyboard_focus into enter and leave events
Kristian Høgsberg [Sat, 18 Feb 2012 06:25:44 +0000 (01:25 -0500)]
Split pointer_focus and keyboard_focus into enter and leave events

12 years agoserver: Implement wl_keyboard_grab_interface.
Scott Moreau [Sat, 18 Feb 2012 12:05:28 +0000 (05:05 -0700)]
server: Implement wl_keyboard_grab_interface.

12 years agoserver: Rename wl_grab_interface.
Scott Moreau [Sat, 18 Feb 2012 12:05:27 +0000 (05:05 -0700)]
server: Rename wl_grab_interface.

In order to separate pointer and keyboard grabs, we need to
introduce a keyboard grab interface but first we must rename
some generic types to denote which device is holding the grab.

Type renames:

wl_grab_interface -> wl_pointer_grab_interface
wl_grab -> wl_pointer_grab
wl_input_device_start_grab -> wl_input_device_start_pointer_grab
wl_input_device_end_grab -> wl_input_device_end_pointer_grab

12 years agoAdd wl_client_get_credentials() to get unix credentials for client
Kristian Høgsberg [Sat, 18 Feb 2012 05:29:25 +0000 (00:29 -0500)]
Add wl_client_get_credentials() to get unix credentials for client

12 years agoprotocol: remove absolute coordinates from pointer
Pekka Paalanen [Tue, 14 Feb 2012 09:00:12 +0000 (11:00 +0200)]
protocol: remove absolute coordinates from pointer

Remove the absolute coordinate fields from the pointer motion and
pointer_focus events. Clients are not supposed to see any global
coordinates.

Fix wayland-server code accordingly. wayland-client code is unaffected.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
12 years agodata_device: get rid of attach request
Ander Conselvan de Oliveira [Wed, 15 Feb 2012 15:02:52 +0000 (17:02 +0200)]
data_device: get rid of attach request

In the effort to make everything a regular surface, remove
data_device.attach request. To maintan the functionality, add
an icon surface parameter to data_device.start_drag.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
12 years agoAdd fullscreen protocol
Juan Zhao [Tue, 7 Feb 2012 05:39:36 +0000 (13:39 +0800)]
Add fullscreen protocol

Map the surface as a fullscreen surface. On the output the
surface is assigned to. The client can use different fulllscreen
method to fix the size mismatch issue: default, scale, driver
and fill.

Hints to indicate compositor how to deal with this fullscreen surface.

"default" means the client has no preference on fullscreen
          behavior, policies are determined by compositor.
"scale"   means the client prefers scaling by the compositor.
          Scaling would always preserve surface's aspect ratio.
          And the surface is centered.
"driver"  means the client wants to switch video mode to the
          smallest mode that can fit the client buffer. If the
          sizes do not match, black borders are added. And the
          framerate parameter is used for "driver" method,
          to indicate the preferred framerate. framerate=0 means
          that the app does not care about framerate
"fill"    means the client wants to add blackborders to the
          surface. This would be preferring 1:1 pixel mapping
          in the monitor native video mode. The surface is
          centered.

12 years agoAdd maximized protocol
Juan Zhao [Tue, 7 Feb 2012 01:38:10 +0000 (09:38 +0800)]
Add maximized protocol

A request from the client to ask the compositor to maximize the surface.
The compositor will reply with a configure event telling
the expected new surface size.  The operation is completed on the
next buffer attach to this surface.

A maximized client will fill the fullscreen of the output it is bound
to, except the panel area. This is the main difference between
a maximized shell surface and a fullscreen shell surface.

12 years agoUse dist-xz for tarballs
Kristian Høgsberg [Thu, 9 Feb 2012 16:15:33 +0000 (11:15 -0500)]
Use dist-xz for tarballs

12 years agoSet version to 'master' on git master branch
Kristian Høgsberg [Thu, 9 Feb 2012 16:12:18 +0000 (11:12 -0500)]
Set version to 'master' on git master branch

12 years agoscanner: don't print new line when no descriptions are provided
Tiago Vignatti [Tue, 24 Jan 2012 16:30:13 +0000 (18:30 +0200)]
scanner: don't print new line when no descriptions are provided

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
12 years agoprotocol: fix typo
Tiago Vignatti [Tue, 24 Jan 2012 15:49:28 +0000 (17:49 +0200)]
protocol: fix typo

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
12 years agospec: fix typo
Tiago Vignatti [Tue, 24 Jan 2012 14:11:33 +0000 (16:11 +0200)]
spec: fix typo

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
12 years agoDrop warning when we receive an event for zombie objects
Kristian Høgsberg [Thu, 9 Feb 2012 13:28:21 +0000 (08:28 -0500)]
Drop warning when we receive an event for zombie objects

Business as usual, but the message is confusing.

12 years agowayland-util.h: Avoid un-namespaced _container_of
Kristian Høgsberg [Tue, 24 Jan 2012 14:52:25 +0000 (09:52 -0500)]
wayland-util.h: Avoid un-namespaced _container_of

Yes, there are worse offenders in that file, but this one isn't used in
the code and it makes Xorg angry.

12 years agospec: list core interfaces with short descriptions
Jesse Barnes [Wed, 18 Jan 2012 18:06:02 +0000 (10:06 -0800)]
spec: list core interfaces with short descriptions

Plus fix up misc. grammar.

12 years agospec: update high level description, add diagrams
Jesse Barnes [Wed, 18 Jan 2012 17:33:34 +0000 (09:33 -0800)]
spec: update high level description, add diagrams

Add diagrams from the Wayland architecture page and add some more high
level text describing X limitations and Wayland architecture.

12 years agoscanner: allow summary attributes in args and <description> in <protocol>
Jesse Barnes [Thu, 19 Jan 2012 22:13:36 +0000 (14:13 -0800)]
scanner: allow summary attributes in args and <description> in <protocol>

Add support for arg summaries for use by detailed structure element
descriptions.

12 years agoprotocol: Convert comments to new documentation tags
Kristian Høgsberg [Thu, 19 Jan 2012 00:17:23 +0000 (19:17 -0500)]
protocol: Convert comments to new documentation tags

12 years agoscanner: Support documentation elements
Jesse Barnes [Wed, 18 Jan 2012 22:09:47 +0000 (14:09 -0800)]
scanner: Support documentation elements

On Wed, 18 Jan 2012 12:29:37 -0800
"Kristensen, Kristian H" <kristian.h.kristensen@intel.com> wrote:
> Yeah, that looks good.  I was thinking of a separate <description> tag
> to avoid stuffing too much into an attribute.

How does this look?  It adds a summary attribute to atomic elements,
and a <description> tag with a summary for others.  Spits out enum
documentation like this:

/**
 * wl_display_error - global error values
 * @WL_DISPLAY_ERROR_INVALID_OBJECT: server couldn't find object
 * @WL_DISPLAY_ERROR_INVALID_METHOD: method doesn't exist on the specified interface
 * @WL_DISPLAY_ERROR_NO_MEMORY: server is out of memory
 *
 * These errors are global and can be emitted in response to any server request.
 */
enum wl_display_error {
WL_DISPLAY_ERROR_INVALID_OBJECT = 0,
WL_DISPLAY_ERROR_INVALID_METHOD = 1,
WL_DISPLAY_ERROR_NO_MEMORY = 2,
};

and structure documentation like this:

/**
 * wl_display - core global object
 * @bind: bind an object to the display
 * @sync: (none)
 *
 * The core global object. This is a special singleton object. It is used for
 * internal wayland protocol features.
 */
struct wl_display_interface {
void (*bind)(struct wl_client *client,
     struct wl_resource *resource,
     uint32_t name,
     const char *interface,
     uint32_t version,
     uint32_t id);
void (*sync)(struct wl_client *client,
     struct wl_resource *resource,
     uint32_t callback);
};

12 years agoFix 'make dist' as connection.h no longer exists
Richard Hughes [Fri, 13 Jan 2012 09:20:48 +0000 (09:20 +0000)]
Fix 'make dist' as connection.h no longer exists

12 years agoserver: In default grab, update focus resource after sending release
Neil Roberts [Thu, 12 Jan 2012 15:48:02 +0000 (15:48 +0000)]
server: In default grab, update focus resource after sending release

The default grab implementation in wayland-server was updating the
focus resource before sending the button event. This would cause the
button release to be dropped from the implicit grab if the pointer is
moved away from the focus surface. This patch just swaps the order
around.

12 years agoshm: Drop non-premul format, use less ambiguous ARGB8888 naming convention
Kristian Høgsberg [Wed, 11 Jan 2012 19:19:50 +0000 (14:19 -0500)]
shm: Drop non-premul format, use less ambiguous ARGB8888 naming convention

This also matches the new wl_drm format names.

12 years agoAdd new wl_shell popup surface type
Kristian Høgsberg [Thu, 5 Jan 2012 13:50:25 +0000 (08:50 -0500)]
Add new wl_shell popup surface type

12 years agoMove data device implementation into wayland-server
Kristian Høgsberg [Thu, 5 Jan 2012 02:40:21 +0000 (21:40 -0500)]
Move data device implementation into wayland-server

12 years agoMove default grab implementation to wayland-server
Kristian Høgsberg [Thu, 5 Jan 2012 02:29:17 +0000 (21:29 -0500)]
Move default grab implementation to wayland-server

12 years agoNew grab API
Kristian Høgsberg [Thu, 5 Jan 2012 02:27:26 +0000 (21:27 -0500)]
New grab API

This commit changes the way struct wl_grab works in a couple of ways:

 - The grab itself now decides when it ends instead of hardcoding button
   up as the terminating event.  We remove the end vfunc since a grab now
   always know when it ends and can just clean up at that point.

 - We add a new focus vfunc that is invoked every time the pointer enters
   a new surface, regardless of any grabs.  The callback receives the
   surface and the surface-relative pointer coordinates.  The callback lets
   a grab send enter/leave events and change the grab focus.

 - The grab has a focus surface, wich determines the coordinate space
   for the motion callback coordinates.

 - The input device always tracks the current surface, ie the surface that
   currently contains the pointer, and coordinates relative to that surface.

With these changes, we will be able to pull the core input event delivery
and the drag and drop grab into the core wayland-server library.

12 years agoserver: Allocate server ID for when resource->object.id is 0
Kristian Høgsberg [Wed, 4 Jan 2012 14:13:27 +0000 (09:13 -0500)]
server: Allocate server ID for when resource->object.id is 0

12 years agoserver: remove wl_display::callback_list as unused
Pekka Paalanen [Tue, 3 Jan 2012 14:32:41 +0000 (16:32 +0200)]
server: remove wl_display::callback_list as unused

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
12 years agoserver: add wl_input_device_release()
Pekka Paalanen [Tue, 3 Jan 2012 14:32:40 +0000 (16:32 +0200)]
server: add wl_input_device_release()

Add a clean-up function for destroying all objects created in
wl_input_device_init(). Can be used to fix memory leaks reported by
Valgrind in the demos.

The init function was also missing an explicit initialisation of the
'keys' array. Add the explicit array init, although it is redundant with
the zeroing of the whole struct.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
krh: Edited to rename function to *_release()

12 years agoFix WL_EVENT_WRITEABLE typo
Kristian Høgsberg [Thu, 29 Dec 2011 03:47:37 +0000 (22:47 -0500)]
Fix WL_EVENT_WRITEABLE typo

12 years agoDrop unused hash table
Kristian Høgsberg [Tue, 27 Dec 2011 18:53:59 +0000 (13:53 -0500)]
Drop unused hash table

We now just use a table for looking up object IDs so we should drop the
hash table.

12 years agoRename all instances of typeof
Kristian Høgsberg [Thu, 22 Dec 2011 20:32:37 +0000 (15:32 -0500)]
Rename all instances of typeof

12 years agoUse __typeof__ instead of typeof
Kristian Høgsberg [Thu, 22 Dec 2011 20:23:54 +0000 (15:23 -0500)]
Use __typeof__ instead of typeof

Thiago Macieira compiles with -std=c++11.