Kristian Høgsberg [Thu, 19 May 2011 15:53:39 +0000 (11:53 -0400)]
TODO: Update
Kristian Høgsberg [Fri, 13 May 2011 01:29:22 +0000 (21:29 -0400)]
Add event to associate visuals with a pixel format token
Kristian Høgsberg [Fri, 13 May 2011 01:27:57 +0000 (21:27 -0400)]
server: Send error if client tries to bind to non-existant object
Kristian Høgsberg [Wed, 11 May 2011 15:00:40 +0000 (11:00 -0400)]
Define shm specific errors
We stop abusing the wl_display error codes for shm purposes.
Kristian Høgsberg [Wed, 11 May 2011 14:57:06 +0000 (10:57 -0400)]
Unify error events
Consolidate the different error events into one. This event will also be
usable for other interaces.
Kristian Høgsberg [Wed, 11 May 2011 02:56:01 +0000 (22:56 -0400)]
TODO: Consolidate and update
Kristian Høgsberg [Wed, 11 May 2011 01:49:22 +0000 (21:49 -0400)]
connection.c: Use sizeof int for allocating fd extra storage
Robert Bragg [Tue, 10 May 2011 16:51:52 +0000 (17:51 +0100)]
display: Adds wl_display_flush to send buffered commands
Previously for wayland clients to flush buffered connection data to the
compositor they needed to first register an event-mask-update-callback
via wl_display_get_fd() to determine if there is anything writeable
pending. (NB: It's considered an error to iterate connection data with
an invalid mask)
Since it's only possible to register a single update callback currently
it's a bit awkward if you want to allow multiple orthogonal components
to flush the connection data, such as Cogl and Clutter which both want
to interact with wayland and may want to flush commands at different
times.
This adds a mechanism, wl_display_flush(), which makes it possible to
flush writeable connection data without first checking the event mask.
Benjamin Franzke [Tue, 10 May 2011 10:56:22 +0000 (12:56 +0200)]
wayland-util: Drop unused struct wl_argument
jani.uusi-rantala@nokia.com [Fri, 6 May 2011 06:13:36 +0000 (06:13 +0000)]
Add configure option to disable scanner compilation
When cross-compiling Wayland, wayland-scanner should be picked up from
the host system instead of compiling and trying to run e.g. ARM
wayland-scanner on X86.
This patch adds --disable-scanner option for disabling the scanner
from the build and using existing wayland-scanner instead (from PATH)
which should help in most cross-compilation systems.
By default everything works as before.
Signed-off-by: Jani Uusi-Rantala <jani.uusi-rantala@nokia.com>
Benjamin Franzke [Fri, 6 May 2011 15:09:51 +0000 (17:09 +0200)]
Add a destroy_listener to wl_resource
Drop the one in wl_surface.
Benjamin Franzke [Wed, 4 May 2011 19:21:52 +0000 (21:21 +0200)]
connection: Define _GNU_SOURCE for F_DUPFD_CLOEXEC
Kristian Høgsberg [Wed, 4 May 2011 19:51:47 +0000 (15:51 -0400)]
scanner: Fail if there's a 'destroy' request not marked as a destructor
Kristian Høgsberg [Wed, 4 May 2011 19:29:55 +0000 (15:29 -0400)]
scanner: Initialize wl_message structs completely
Kristian Høgsberg [Wed, 4 May 2011 16:35:16 +0000 (12:35 -0400)]
connection: Handle fd passing in an CLOEXEC safe way
Kristian Høgsberg [Mon, 2 May 2011 18:48:48 +0000 (14:48 -0400)]
mmap shm buffers read/write
Casey Dahlin [Fri, 29 Apr 2011 06:37:47 +0000 (02:37 -0400)]
Add some things related to wayland-scanner to .gitignore
Kristian Høgsberg [Fri, 29 Apr 2011 13:20:29 +0000 (09:20 -0400)]
event-loop: Drop unused idle_list
Idle sources are now just a special case of a checked source.
Kristian Høgsberg [Fri, 22 Apr 2011 21:54:18 +0000 (17:54 -0400)]
Don't define wl_shell in wayland-server.h
Kristian Høgsberg [Fri, 22 Apr 2011 16:15:21 +0000 (12:15 -0400)]
event-loop: Idle callback are a special case of a checked source
Kristian Høgsberg [Fri, 22 Apr 2011 16:06:34 +0000 (12:06 -0400)]
event-loop: Dont use a check callback just dispatch again
We pass the poll mask so the dispatch callback can know if there is
data on the fd or not. The dispatch function must return true if
it dispatched something, in which case we need to do another round of
post-dispatch callbacks."
Benjamin Franzke [Tue, 8 Mar 2011 10:32:24 +0000 (11:32 +0100)]
Add common shm-server code
Benjamin Franzke [Mon, 7 Mar 2011 14:09:36 +0000 (15:09 +0100)]
Remove buffer.attach vfunc
Benjamin Franzke [Mon, 7 Mar 2011 14:05:27 +0000 (15:05 +0100)]
Add buffer.damage request to the protocol
Thus remove the server-side used vfunc buffer::damage.
Kristian Høgsberg [Thu, 21 Apr 2011 18:41:48 +0000 (14:41 -0400)]
event-loop: Add an optional post-dispatch source callout
This lets a source mark itself as ready to dispatch even though the fd
didn't trigger. What can happen is that for the X11 socket, some other
source callback (the drm fd or a wayland client socket) can cause somebody
to do an X roundtrip (DRI2 get buffers, for example) and queue up events
in the xcb buffer. When we get back to epoll, the X fd no longer polls
readable and we don't process those events until we get another X event.
The check callback is called after a round of dispatching and lets a source
check if it has data to dispatch and mark itself ready. Next round of
dispatching will then process it immediately instead of blocking in
epoll_wait().
Kristian Høgsberg [Mon, 18 Apr 2011 16:35:01 +0000 (12:35 -0400)]
Pass version number to global bind function
Kristian Høgsberg [Mon, 18 Apr 2011 14:24:11 +0000 (10:24 -0400)]
scanner: Don't hardcode the wl_ prefix in the code generator
Kristian Høgsberg [Thu, 14 Apr 2011 20:29:59 +0000 (16:29 -0400)]
Use wl_client_post_global() for connect events
Kristian Høgsberg [Thu, 14 Apr 2011 14:38:44 +0000 (10:38 -0400)]
Introduce display.bind to request events from a global
Kristian Høgsberg [Wed, 13 Apr 2011 20:50:02 +0000 (16:50 -0400)]
Print line numbers in scanner errors
Kristian Høgsberg [Wed, 13 Apr 2011 20:27:06 +0000 (16:27 -0400)]
Move proxy prototype to wayland-client.h
Let's try to avoid to generate more code than we need to.
Jørgen Lind [Wed, 13 Apr 2011 07:38:29 +0000 (09:38 +0200)]
Add lockfile to the socket
This uses flock to detect if there is a process that is active. If not
then it unlinks the socket file if it exists, so that bind won't fail
Kristian Høgsberg [Mon, 11 Apr 2011 20:40:48 +0000 (16:40 -0400)]
Merge remote-tracking branch 'bnf/surface-frame-event'
Kristian Høgsberg [Mon, 11 Apr 2011 13:24:11 +0000 (09:24 -0400)]
Make all fds close-on-exec
Kristian Høgsberg [Mon, 11 Apr 2011 13:15:09 +0000 (09:15 -0400)]
Make wl_client_create() public
Kristian Høgsberg [Mon, 11 Apr 2011 13:14:43 +0000 (09:14 -0400)]
Support passing the Wayland fd in the environment
Harald Fernengel [Wed, 6 Apr 2011 13:36:01 +0000 (15:36 +0200)]
Fix usage help text in wayland-scanner
Benjamin Franzke [Mon, 14 Mar 2011 11:03:13 +0000 (12:03 +0100)]
Extent frame event to be surface dependent
Iskren Chernev [Sun, 13 Mar 2011 19:08:37 +0000 (21:08 +0200)]
Close signal file descriptor in event loop on remove and failure.
When the signal handler is removed the corresponding fd is closed. This
should automatically remove it from the epoll set.
Iskren Chernev [Sun, 13 Mar 2011 19:05:14 +0000 (21:05 +0200)]
Close timer file descriptors in event loop on remove and failure.
When the timer is removed the corresponding fd is closed. This should
automatically remove it from the epoll set.
Iskren Chernev [Sun, 13 Mar 2011 15:01:33 +0000 (17:01 +0200)]
Stored signal_number in event_source structure.
signal_number was not previously stored, so the callbacks didn't get
a correct signal_number as their first argument.
Iskren Chernev [Sun, 13 Mar 2011 14:59:30 +0000 (16:59 +0200)]
Fix event loop timer update.
It can now handle delays greater than 2 seconds without overflowing.
Kristian Høgsberg [Sun, 13 Mar 2011 02:26:21 +0000 (21:26 -0500)]
Fix double remove from surface destroy_listener_list
We remove the listener when a device loses its pointer focus, but
doesn't insert it in another destroy_listener list if surface is NULL.
When we set another pointer focus surface, we remove it again.
Tracked down and tested by Iskren Chernev.
Iskren Chernev [Fri, 11 Mar 2011 14:59:53 +0000 (16:59 +0200)]
Server socket creation error handling.
Iskren Chernev [Fri, 11 Mar 2011 12:43:10 +0000 (14:43 +0200)]
Added wl_connection_create failure checks.
Iskren Chernev [Fri, 11 Mar 2011 12:58:06 +0000 (14:58 +0200)]
Better handling of creation errors in display.
Iskren Chernev [Fri, 11 Mar 2011 12:19:00 +0000 (14:19 +0200)]
Better cleanup on display creation failure.
Kristian Høgsberg [Tue, 1 Mar 2011 22:04:33 +0000 (17:04 -0500)]
Merge branch 'setup_display' of git://anongit.freedesktop.org/~bnf/wayland
Benjamin Franzke [Mon, 21 Feb 2011 08:58:29 +0000 (09:58 +0100)]
protocol/wayland: Drop drm interface (move into mesa)
Rico Tzschichholz [Thu, 24 Feb 2011 09:53:06 +0000 (10:53 +0100)]
Add wayland-scanner.mk to EXTRA_DIST for make distcheck
Kristian Høgsberg [Fri, 18 Feb 2011 20:28:54 +0000 (15:28 -0500)]
Only allow one listener per proxy
Liu, Xinyun [Fri, 18 Feb 2011 13:40:49 +0000 (08:40 -0500)]
Several typo fixes in specs/main.tex
Kristian Høgsberg [Tue, 15 Feb 2011 03:17:41 +0000 (22:17 -0500)]
Split into a core repository that only holds the core Wayland libraries
Kristian Høgsberg [Mon, 14 Feb 2011 15:39:54 +0000 (10:39 -0500)]
compositor: Clip repaint to the damage region
Drop glScissor, and just clip the surface against the repaint region and
render each rectangle in the resulting region.
Benjamin Franzke [Mon, 14 Feb 2011 12:20:09 +0000 (13:20 +0100)]
compositor-drm: Flush before pageflipping
This fixes compositor-drm flickering on r600.
Kristian Høgsberg [Sun, 13 Feb 2011 18:44:55 +0000 (13:44 -0500)]
compositor: Switch away from using VBOs and just stream the vertex data
We avoid changing uniforms for each window and it will be easier to break up
a surface into a series of rectangles.
Kristian Høgsberg [Sun, 13 Feb 2011 18:00:51 +0000 (13:00 -0500)]
Use pixman regions to reduce repainting
For now, we just use glScissor and clip to the extent of the damage region,
but we can do even better by clipping the repaint to the region rectangles.
Tim Wiederhake [Fri, 11 Feb 2011 18:37:40 +0000 (19:37 +0100)]
fix typo in window.c
Kristian Høgsberg [Thu, 10 Feb 2011 17:27:35 +0000 (12:27 -0500)]
wayland-client: Support WAYLAND_DEBUG client side as well
Tiago Vignatti [Thu, 10 Feb 2011 13:21:49 +0000 (15:21 +0200)]
configure: remove libdrm dependency for clients
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Kristian Høgsberg [Wed, 9 Feb 2011 15:57:44 +0000 (10:57 -0500)]
window.c: Use eglGetProcAddress to look up extension functions
Kristian Høgsberg [Wed, 9 Feb 2011 15:51:15 +0000 (10:51 -0500)]
window.c: Include wayland-egl.h before EGL headers so we get the right platform
Kristian Høgsberg [Wed, 9 Feb 2011 15:50:06 +0000 (10:50 -0500)]
wayland-egl: Define WL_EGL_PLATFORM in wayland-egl.h
This indicates that we're using the wayland egl platform and will make
eglplatform.h typedef the native types correctly.
Kristian Høgsberg [Tue, 8 Feb 2011 16:59:53 +0000 (11:59 -0500)]
compositor-x11: Don't send enter/leave notify if we have an implicit grab
Kristian Høgsberg [Tue, 8 Feb 2011 01:48:01 +0000 (20:48 -0500)]
Add struct wl_egl_display argument to wl_egl_window_create
We don't need it in the mesa implementation, but other implementations
might and it's symmetric with wl_egl_pixmap_create().
Kristian Høgsberg [Mon, 7 Feb 2011 21:05:36 +0000 (16:05 -0500)]
Print object interface name when printing message arguments in debug mode
Kristian Høgsberg [Mon, 7 Feb 2011 15:30:38 +0000 (10:30 -0500)]
Follow wayland-egl renames
Kristian Høgsberg [Sun, 6 Feb 2011 21:54:59 +0000 (16:54 -0500)]
compositor: Implement super-tab window switching
Kristian Høgsberg [Sun, 6 Feb 2011 17:58:44 +0000 (12:58 -0500)]
compositor: Set repaint_on_timeout when we schedule a timeout repaint
Kristian Høgsberg [Fri, 4 Feb 2011 20:31:33 +0000 (15:31 -0500)]
simple-client: Port to wayland-egl and use eglSwapBuffers()
simple-client is simpler.
Kristian Høgsberg [Fri, 4 Feb 2011 19:14:23 +0000 (14:14 -0500)]
gears: Remove unused drm_fd field
Kristian Høgsberg [Fri, 4 Feb 2011 19:11:33 +0000 (14:11 -0500)]
Port window.c to use wayland-egl
Benjamin Franzke [Fri, 4 Feb 2011 10:22:35 +0000 (11:22 +0100)]
Add wayland-egl.h
This header defines native EGL wayland types and affiliated
initialization, processing and destruction routines.
EGL implementations must implement this API in order to allow
applications using this native types for the EGL implementation.
Kristian Høgsberg [Wed, 2 Feb 2011 01:28:32 +0000 (20:28 -0500)]
Update compositor initiated resize to use a 3x3 grid
This lets us do all combinations of resize edges.
Benjamin Franzke [Tue, 1 Feb 2011 15:30:31 +0000 (16:30 +0100)]
compositor: Calculate resizing direction
This applies to resizes initiated by the compositor.
nobled [Tue, 1 Feb 2011 18:51:47 +0000 (18:51 +0000)]
window: add null checks
Also check for invalid parameters early on, so if we crash,
we know *why* we crashed.
nobled [Tue, 1 Feb 2011 18:48:46 +0000 (18:48 +0000)]
add newlines in error messages
Benjamin Franzke [Sat, 29 Jan 2011 12:12:39 +0000 (13:12 +0100)]
connection: Handle broken pipes in sendmsg
Benjamin Franzke [Sat, 29 Jan 2011 08:51:57 +0000 (09:51 +0100)]
Fix out of source build [wayland.png]
Tim Wiederhake [Sat, 29 Jan 2011 00:30:25 +0000 (01:30 +0100)]
Add wayland.png to .gitignore
Kristian Høgsberg [Fri, 28 Jan 2011 20:53:07 +0000 (15:53 -0500)]
Don't crash when the previous keyboard surface goes away
Just always set keyboard focus to the top surface.
Kristian Høgsberg [Fri, 28 Jan 2011 20:18:33 +0000 (15:18 -0500)]
Add initial basic support for fullscreen surfaces
Kristian Høgsberg [Fri, 28 Jan 2011 16:21:42 +0000 (11:21 -0500)]
Merge remote branch 'nobled/for-krh'
Benjamin Franzke [Fri, 28 Jan 2011 15:05:46 +0000 (16:05 +0100)]
configure: Drop gdk-pixbuf version dependency
The major version 2.0 is sufficient
nobled [Fri, 28 Jan 2011 13:47:21 +0000 (13:47 +0000)]
fix configure check for gcc
This shouldn't fail just because someone sets CC=gcc-4.5
explicitly. Besides, this way it also works with compilers
that advertise GCC-compatibility like clang and ICC.
Kristian Høgsberg [Fri, 28 Jan 2011 01:18:17 +0000 (20:18 -0500)]
compositor-wayland: Handle keyboard focus too
Kristian Høgsberg [Thu, 27 Jan 2011 16:57:19 +0000 (11:57 -0500)]
compositor-x11: Handle keyboard focus correctly so we avoid stuck modifiers
Tim Wiederhake [Thu, 27 Jan 2011 00:32:36 +0000 (01:32 +0100)]
Don't create buffer from NULL pointer
Fixes regression introduced in
f58d8ca1bd20180bfae3a3a047e8098e0b22b5aa.
Kristian Høgsberg [Thu, 27 Jan 2011 01:35:07 +0000 (20:35 -0500)]
compositor: Forward pointer focus notification from compostor backend
This lets the compositor place the pointer sprite correctly when it receives
pointer focus and allows it to send pointer focus to any client that might
receive pointer focus as the compositor receives it.
Kristian Høgsberg [Wed, 26 Jan 2011 20:33:24 +0000 (15:33 -0500)]
Test for rsvg-convert in configure.ac
If it's not present, we just don't install the icon.
Kristian Høgsberg [Wed, 26 Jan 2011 19:37:07 +0000 (14:37 -0500)]
compositor-x11: Set window icon
Kristian Høgsberg [Wed, 26 Jan 2011 19:02:31 +0000 (14:02 -0500)]
Set WM_CLASS for X11 compositor window
Don't want to be 'Unknown' in GNOME Shell.
Kristian Høgsberg [Wed, 26 Jan 2011 16:46:35 +0000 (11:46 -0500)]
connection: Also consume message data in error cases
Kristian Høgsberg [Wed, 26 Jan 2011 16:46:05 +0000 (11:46 -0500)]
shm: Check width, height and stride for invalid values
Tim Wiederhake [Tue, 25 Jan 2011 21:39:00 +0000 (22:39 +0100)]
Screenshots were upside down
Kristian Høgsberg [Tue, 25 Jan 2011 21:38:41 +0000 (16:38 -0500)]
Add gio for view fixes
Tim Wiederhake [Tue, 25 Jan 2011 21:22:00 +0000 (22:22 +0100)]
clients/view: Fix memory leak
Tim Wiederhake [Tue, 25 Jan 2011 21:21:59 +0000 (22:21 +0100)]
clients/view: Don't try to show inexistant files
Tim Wiederhake [Tue, 25 Jan 2011 21:21:58 +0000 (22:21 +0100)]
clients/view: Allow relative paths
Tim Wiederhake [Tue, 25 Jan 2011 21:21:57 +0000 (22:21 +0100)]
clients/view: Add mousewheel and arrow keys