profile/ivi/wayland.git
13 years agoTODO: Update
Kristian Høgsberg [Thu, 19 May 2011 15:53:39 +0000 (11:53 -0400)]
TODO: Update

13 years agoAdd event to associate visuals with a pixel format token
Kristian Høgsberg [Fri, 13 May 2011 01:29:22 +0000 (21:29 -0400)]
Add event to associate visuals with a pixel format token

13 years agoserver: Send error if client tries to bind to non-existant object
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

13 years agoDefine shm specific errors
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.

13 years agoUnify error events
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.

13 years agoTODO: Consolidate and update
Kristian Høgsberg [Wed, 11 May 2011 02:56:01 +0000 (22:56 -0400)]
TODO: Consolidate and update

13 years agoconnection.c: Use sizeof int for allocating fd extra storage
Kristian Høgsberg [Wed, 11 May 2011 01:49:22 +0000 (21:49 -0400)]
connection.c: Use sizeof int for allocating fd extra storage

13 years agodisplay: Adds wl_display_flush to send buffered commands
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.

13 years agowayland-util: Drop unused struct wl_argument
Benjamin Franzke [Tue, 10 May 2011 10:56:22 +0000 (12:56 +0200)]
wayland-util: Drop unused struct wl_argument

13 years agoAdd configure option to disable scanner compilation
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>
13 years agoAdd a destroy_listener to wl_resource
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.

13 years agoconnection: Define _GNU_SOURCE for F_DUPFD_CLOEXEC
Benjamin Franzke [Wed, 4 May 2011 19:21:52 +0000 (21:21 +0200)]
connection: Define _GNU_SOURCE for F_DUPFD_CLOEXEC

13 years agoscanner: Fail if there's a 'destroy' request not marked as a destructor
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

13 years agoscanner: Initialize wl_message structs completely
Kristian Høgsberg [Wed, 4 May 2011 19:29:55 +0000 (15:29 -0400)]
scanner: Initialize wl_message structs completely

13 years agoconnection: Handle fd passing in an CLOEXEC safe way
Kristian Høgsberg [Wed, 4 May 2011 16:35:16 +0000 (12:35 -0400)]
connection: Handle fd passing in an CLOEXEC safe way

13 years agommap shm buffers read/write
Kristian Høgsberg [Mon, 2 May 2011 18:48:48 +0000 (14:48 -0400)]
mmap shm buffers read/write

13 years agoAdd some things related to wayland-scanner to .gitignore
Casey Dahlin [Fri, 29 Apr 2011 06:37:47 +0000 (02:37 -0400)]
Add some things related to wayland-scanner to .gitignore

13 years agoevent-loop: Drop unused idle_list
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.

13 years agoDon't define wl_shell in wayland-server.h
Kristian Høgsberg [Fri, 22 Apr 2011 21:54:18 +0000 (17:54 -0400)]
Don't define wl_shell in wayland-server.h

13 years agoevent-loop: Idle callback are a special case of a checked source
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

13 years agoevent-loop: Dont use a check callback just dispatch again
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."

13 years agoAdd common shm-server code
Benjamin Franzke [Tue, 8 Mar 2011 10:32:24 +0000 (11:32 +0100)]
Add common shm-server code

13 years agoRemove buffer.attach vfunc
Benjamin Franzke [Mon, 7 Mar 2011 14:09:36 +0000 (15:09 +0100)]
Remove buffer.attach vfunc

13 years agoAdd buffer.damage request to the protocol
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.

13 years agoevent-loop: Add an optional post-dispatch source callout
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().

13 years agoPass version number to global bind function
Kristian Høgsberg [Mon, 18 Apr 2011 16:35:01 +0000 (12:35 -0400)]
Pass version number to global bind function

13 years agoscanner: Don't hardcode the wl_ prefix in the code generator
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

13 years agoUse wl_client_post_global() for connect events
Kristian Høgsberg [Thu, 14 Apr 2011 20:29:59 +0000 (16:29 -0400)]
Use wl_client_post_global() for connect events

13 years agoIntroduce display.bind to request events from a global
Kristian Høgsberg [Thu, 14 Apr 2011 14:38:44 +0000 (10:38 -0400)]
Introduce display.bind to request events from a global

13 years agoPrint line numbers in scanner errors
Kristian Høgsberg [Wed, 13 Apr 2011 20:50:02 +0000 (16:50 -0400)]
Print line numbers in scanner errors

13 years agoMove proxy prototype to wayland-client.h
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.

13 years agoAdd lockfile to the socket
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

13 years agoMerge remote-tracking branch 'bnf/surface-frame-event'
Kristian Høgsberg [Mon, 11 Apr 2011 20:40:48 +0000 (16:40 -0400)]
Merge remote-tracking branch 'bnf/surface-frame-event'

13 years agoMake all fds close-on-exec
Kristian Høgsberg [Mon, 11 Apr 2011 13:24:11 +0000 (09:24 -0400)]
Make all fds close-on-exec

13 years agoMake wl_client_create() public
Kristian Høgsberg [Mon, 11 Apr 2011 13:15:09 +0000 (09:15 -0400)]
Make wl_client_create() public

13 years agoSupport passing the Wayland fd in the environment
Kristian Høgsberg [Mon, 11 Apr 2011 13:14:43 +0000 (09:14 -0400)]
Support passing the Wayland fd in the environment

13 years agoFix usage help text in wayland-scanner
Harald Fernengel [Wed, 6 Apr 2011 13:36:01 +0000 (15:36 +0200)]
Fix usage help text in wayland-scanner

13 years agoExtent frame event to be surface dependent
Benjamin Franzke [Mon, 14 Mar 2011 11:03:13 +0000 (12:03 +0100)]
Extent frame event to be surface dependent

13 years agoClose signal file descriptor in event loop on remove and failure.
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.

13 years agoClose timer file descriptors in event loop on remove and failure.
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.

13 years agoStored signal_number in event_source structure.
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.

13 years agoFix event loop timer update.
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.

13 years agoFix double remove from surface destroy_listener_list
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.

13 years agoServer socket creation error handling.
Iskren Chernev [Fri, 11 Mar 2011 14:59:53 +0000 (16:59 +0200)]
Server socket creation error handling.

13 years agoAdded wl_connection_create failure checks.
Iskren Chernev [Fri, 11 Mar 2011 12:43:10 +0000 (14:43 +0200)]
Added wl_connection_create failure checks.

13 years agoBetter handling of creation errors in display.
Iskren Chernev [Fri, 11 Mar 2011 12:58:06 +0000 (14:58 +0200)]
Better handling of creation errors in display.

13 years agoBetter cleanup on display creation failure.
Iskren Chernev [Fri, 11 Mar 2011 12:19:00 +0000 (14:19 +0200)]
Better cleanup on display creation failure.

13 years agoMerge branch 'setup_display' of git://anongit.freedesktop.org/~bnf/wayland
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

13 years agoprotocol/wayland: Drop drm interface (move into mesa)
Benjamin Franzke [Mon, 21 Feb 2011 08:58:29 +0000 (09:58 +0100)]
protocol/wayland: Drop drm interface (move into mesa)

13 years agoAdd wayland-scanner.mk to EXTRA_DIST for make distcheck
Rico Tzschichholz [Thu, 24 Feb 2011 09:53:06 +0000 (10:53 +0100)]
Add wayland-scanner.mk to EXTRA_DIST for make distcheck

13 years agoOnly allow one listener per proxy
Kristian Høgsberg [Fri, 18 Feb 2011 20:28:54 +0000 (15:28 -0500)]
Only allow one listener per proxy

13 years agoSeveral typo fixes in specs/main.tex
Liu, Xinyun [Fri, 18 Feb 2011 13:40:49 +0000 (08:40 -0500)]
Several typo fixes in specs/main.tex

13 years agoSplit into a core repository that only holds the core Wayland libraries
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

13 years agocompositor: Clip repaint to the damage region
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.

13 years agocompositor-drm: Flush before pageflipping
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.

13 years agocompositor: Switch away from using VBOs and just stream the vertex data
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.

13 years agoUse pixman regions to reduce repainting
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.

13 years agofix typo in window.c
Tim Wiederhake [Fri, 11 Feb 2011 18:37:40 +0000 (19:37 +0100)]
fix typo in window.c

13 years agowayland-client: Support WAYLAND_DEBUG client side as well
Kristian Høgsberg [Thu, 10 Feb 2011 17:27:35 +0000 (12:27 -0500)]
wayland-client: Support WAYLAND_DEBUG client side as well

13 years agoconfigure: remove libdrm dependency for clients
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>
13 years agowindow.c: Use eglGetProcAddress to look up extension functions
Kristian Høgsberg [Wed, 9 Feb 2011 15:57:44 +0000 (10:57 -0500)]
window.c: Use eglGetProcAddress to look up extension functions

13 years agowindow.c: Include wayland-egl.h before EGL headers so we get the right platform
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

13 years agowayland-egl: Define WL_EGL_PLATFORM in wayland-egl.h
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.

13 years agocompositor-x11: Don't send enter/leave notify if we have an implicit grab
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

13 years agoAdd struct wl_egl_display argument to wl_egl_window_create
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().

13 years agoPrint object interface name when printing message arguments in debug mode
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

13 years agoFollow wayland-egl renames
Kristian Høgsberg [Mon, 7 Feb 2011 15:30:38 +0000 (10:30 -0500)]
Follow wayland-egl renames

13 years agocompositor: Implement super-tab window switching
Kristian Høgsberg [Sun, 6 Feb 2011 21:54:59 +0000 (16:54 -0500)]
compositor: Implement super-tab window switching

13 years agocompositor: Set repaint_on_timeout when we schedule a timeout repaint
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

13 years agosimple-client: Port to wayland-egl and use eglSwapBuffers()
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.

13 years agogears: Remove unused drm_fd field
Kristian Høgsberg [Fri, 4 Feb 2011 19:14:23 +0000 (14:14 -0500)]
gears: Remove unused drm_fd field

13 years agoPort window.c to use wayland-egl
Kristian Høgsberg [Fri, 4 Feb 2011 19:11:33 +0000 (14:11 -0500)]
Port window.c to use wayland-egl

13 years agoAdd wayland-egl.h
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.

13 years agoUpdate compositor initiated resize to use a 3x3 grid
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.

13 years agocompositor: Calculate resizing direction
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.

13 years agowindow: add null checks
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.

13 years agoadd newlines in error messages
nobled [Tue, 1 Feb 2011 18:48:46 +0000 (18:48 +0000)]
add newlines in error messages

13 years agoconnection: Handle broken pipes in sendmsg
Benjamin Franzke [Sat, 29 Jan 2011 12:12:39 +0000 (13:12 +0100)]
connection: Handle broken pipes in sendmsg

13 years agoFix out of source build [wayland.png]
Benjamin Franzke [Sat, 29 Jan 2011 08:51:57 +0000 (09:51 +0100)]
Fix out of source build [wayland.png]

13 years agoAdd wayland.png to .gitignore
Tim Wiederhake [Sat, 29 Jan 2011 00:30:25 +0000 (01:30 +0100)]
Add wayland.png to .gitignore

13 years agoDon't crash when the previous keyboard surface goes away
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.

13 years agoAdd initial basic support for fullscreen surfaces
Kristian Høgsberg [Fri, 28 Jan 2011 20:18:33 +0000 (15:18 -0500)]
Add initial basic support for fullscreen surfaces

13 years agoMerge remote branch 'nobled/for-krh'
Kristian Høgsberg [Fri, 28 Jan 2011 16:21:42 +0000 (11:21 -0500)]
Merge remote branch 'nobled/for-krh'

13 years agoconfigure: Drop gdk-pixbuf version dependency
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

13 years agofix configure check for gcc
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.

13 years agocompositor-wayland: Handle keyboard focus too
Kristian Høgsberg [Fri, 28 Jan 2011 01:18:17 +0000 (20:18 -0500)]
compositor-wayland: Handle keyboard focus too

13 years agocompositor-x11: Handle keyboard focus correctly so we avoid stuck modifiers
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

13 years agoDon't create buffer from NULL pointer
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.

13 years agocompositor: Forward pointer focus notification from compostor backend
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.

13 years agoTest for rsvg-convert in configure.ac
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.

13 years agocompositor-x11: Set window icon
Kristian Høgsberg [Wed, 26 Jan 2011 19:37:07 +0000 (14:37 -0500)]
compositor-x11: Set window icon

13 years agoSet WM_CLASS for X11 compositor window
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.

13 years agoconnection: Also consume message data in error cases
Kristian Høgsberg [Wed, 26 Jan 2011 16:46:35 +0000 (11:46 -0500)]
connection: Also consume message data in error cases

13 years agoshm: Check width, height and stride for invalid values
Kristian Høgsberg [Wed, 26 Jan 2011 16:46:05 +0000 (11:46 -0500)]
shm: Check width, height and stride for invalid values

13 years agoScreenshots were upside down
Tim Wiederhake [Tue, 25 Jan 2011 21:39:00 +0000 (22:39 +0100)]
Screenshots were upside down

13 years agoAdd gio for view fixes
Kristian Høgsberg [Tue, 25 Jan 2011 21:38:41 +0000 (16:38 -0500)]
Add gio for view fixes

13 years agoclients/view: Fix memory leak
Tim Wiederhake [Tue, 25 Jan 2011 21:22:00 +0000 (22:22 +0100)]
clients/view: Fix memory leak

13 years agoclients/view: Don't try to show inexistant files
Tim Wiederhake [Tue, 25 Jan 2011 21:21:59 +0000 (22:21 +0100)]
clients/view: Don't try to show inexistant files

13 years agoclients/view: Allow relative paths
Tim Wiederhake [Tue, 25 Jan 2011 21:21:58 +0000 (22:21 +0100)]
clients/view: Allow relative paths

13 years agoclients/view: Add mousewheel and arrow keys
Tim Wiederhake [Tue, 25 Jan 2011 21:21:57 +0000 (22:21 +0100)]
clients/view: Add mousewheel and arrow keys