Kristian Høgsberg [Fri, 6 May 2011 18:52:41 +0000 (14:52 -0400)]
Fix warnings and symbol visibility from missing CFLAGS
Kristian Høgsberg [Fri, 6 May 2011 18:49:06 +0000 (14:49 -0400)]
Make sure all targets use GCC_CFLAGS
Benjamin Franzke [Fri, 6 May 2011 09:10:57 +0000 (11:10 +0200)]
configure: Remove a xcb-dri2 leftover
Fixes compositor and clients trying to link against xcb-dri2.
Kristian Høgsberg [Fri, 6 May 2011 18:04:21 +0000 (14:04 -0400)]
compositor: Disable hw cursor if we're texturing the cursor
Kristian Høgsberg [Fri, 6 May 2011 18:03:12 +0000 (14:03 -0400)]
compositor: Scanout client buffers even if they're not map_fullscreen
Kristian Høgsberg [Fri, 6 May 2011 17:23:49 +0000 (13:23 -0400)]
compositor-drm: Use EGL_DRM_BUFFER_USE_CURSOR_MESA
Kristian Høgsberg [Thu, 5 May 2011 19:30:40 +0000 (15:30 -0400)]
meego-tablet-shell: Destroy tablet_client resource in destroy request
Kristian Høgsberg [Thu, 5 May 2011 19:25:28 +0000 (15:25 -0400)]
meego-tablet-shell: Handle app switcher choices
Benjamin Franzke [Wed, 4 May 2011 19:19:43 +0000 (21:19 +0200)]
compositor-openwfd: Fixup backend split
Kristian Høgsberg [Wed, 4 May 2011 20:17:20 +0000 (16:17 -0400)]
meego-tablet-shell: Rename tablet_client.poke to activate and add a destructor
Kristian Høgsberg [Wed, 4 May 2011 20:16:43 +0000 (16:16 -0400)]
meego-tablet-shell: Add requests to let ux-daemon ask for appgrid or panels
Kristian Høgsberg [Wed, 4 May 2011 19:08:04 +0000 (15:08 -0400)]
compositor-drm: Fix modularization breakage
Kristian Høgsberg [Wed, 4 May 2011 15:35:02 +0000 (11:35 -0400)]
meego-tablet-shell: Track the state of the UI explicitly
Kristian Høgsberg [Tue, 3 May 2011 17:11:43 +0000 (13:11 -0400)]
meego-tablet-shell: Handle meta key with super modifier so we get the release
Kristian Høgsberg [Tue, 3 May 2011 16:41:03 +0000 (12:41 -0400)]
meego-tablet-shell: Handle animation surface going away
Kristian Høgsberg [Tue, 3 May 2011 02:09:20 +0000 (22:09 -0400)]
compositor: Split backends into modules
Kristian Høgsberg [Mon, 2 May 2011 19:24:11 +0000 (15:24 -0400)]
meego-tablet-shell: Use KEY_COMPOSE for the menu key
This is what the Windows menu key maps to in evdev keycodes.
Kristian Høgsberg [Mon, 2 May 2011 18:38:18 +0000 (14:38 -0400)]
compositor: Rename tweener to spring
Because it's a spring model, not a tweener.
Kristian Høgsberg [Mon, 2 May 2011 18:35:40 +0000 (14:35 -0400)]
compositor: Group matrix and inverse in struct wlsc_transform
Kristian Høgsberg [Mon, 2 May 2011 18:21:03 +0000 (14:21 -0400)]
meego-tablet-shell: Factor out zoom animation
Kristian Høgsberg [Mon, 2 May 2011 18:11:15 +0000 (14:11 -0400)]
meego-tablet-shell: Match meego-ux-daemon key bindings
Kristian Høgsberg [Mon, 2 May 2011 17:57:38 +0000 (13:57 -0400)]
meego-tablet-shell: Only clear CLOEXEC flag in child
Kristian Høgsberg [Mon, 2 May 2011 17:53:45 +0000 (13:53 -0400)]
compositor: Export matrix functions
Kristian Høgsberg [Mon, 2 May 2011 17:52:00 +0000 (13:52 -0400)]
compositor: Drop broken opaque repaint optimization for now
Kristian Høgsberg [Mon, 2 May 2011 17:47:51 +0000 (13:47 -0400)]
compositor: Remove unused surface matrix, add optional transform
Kristian Høgsberg [Mon, 2 May 2011 17:38:03 +0000 (13:38 -0400)]
Tweak tweener constants and add friction parameter
Kristian Høgsberg [Mon, 2 May 2011 17:37:47 +0000 (13:37 -0400)]
configure.ac: Just look for png, not png12
Kristian Høgsberg [Mon, 2 May 2011 17:35:17 +0000 (13:35 -0400)]
Remove unused surface->buffer field
If we make sure the link is either on a list or initialized, we can alway
just remove it.
Benjamin Franzke [Sat, 30 Apr 2011 08:41:27 +0000 (10:41 +0200)]
compositor-wayland: Fix interface renames (prefix)
Kristian Høgsberg [Mon, 2 May 2011 16:11:07 +0000 (12:11 -0400)]
compositor: Screenhoot into a client provided shm buffer
This moves the png writing part to the client and removes the gdk-pixbuf
dependency from the compositor.
Kristian Høgsberg [Sat, 23 Apr 2011 19:03:15 +0000 (15:03 -0400)]
compositor: Use libpng directly instead of gdb-pixbuf
Kristian Høgsberg [Mon, 2 May 2011 14:36:04 +0000 (10:36 -0400)]
Just use getopt_long for option parsing
Benjamin Franzke [Fri, 29 Apr 2011 20:14:54 +0000 (22:14 +0200)]
compositor-drm: Retrieve extension functions before wlsc_compositor_init
wlsc_compositor_init calls pointer_create, which calls
create_cursor which needs EGL_MESA_drm_image functions.
Casey Dahlin [Fri, 29 Apr 2011 06:58:45 +0000 (02:58 -0400)]
Add some new things to .gitignore
libtoytoolkit.a, and generated protocol headers for meego-tablet.
Benjamin Franzke [Thu, 28 Apr 2011 19:29:59 +0000 (21:29 +0200)]
compositor-openwfd: Use wfd_device_id as drm fd
owfdrm uses non-0 (0 == WFD_INVALID_DEVICE_ID) fd's as wfd_device_ids.
This is not standardized, but also not invalid.
Benjamin Franzke [Thu, 28 Apr 2011 05:21:19 +0000 (07:21 +0200)]
compositor: Fix drm compositor cflags typo
Kristian Høgsberg [Tue, 26 Apr 2011 15:47:00 +0000 (11:47 -0400)]
Add --disable-clients configure option
Benjamin Franzke [Tue, 26 Apr 2011 13:36:26 +0000 (15:36 +0200)]
compositor: Recalculate fullscreen surface x,y in surface_attach
Benjamin Franzke [Tue, 26 Apr 2011 07:21:13 +0000 (09:21 +0200)]
Cast fd's to intptr_t before casting to EGLNativeDisplay
Fixes warnings on 64bit.
Also use wlsc_compositor::destroy_image in compositor-openwfd.
Kristian Høgsberg [Tue, 26 Apr 2011 15:10:32 +0000 (11:10 -0400)]
configure: Only check dependencies for the enabled compositor backends
Kristian Høgsberg [Mon, 25 Apr 2011 19:59:15 +0000 (15:59 -0400)]
compositor: Fix overlapping options
Kristian Høgsberg [Mon, 25 Apr 2011 19:41:59 +0000 (15:41 -0400)]
compositor-x11: Only use xcb_poll_for_queued_event if we have it
Otherwise we can just fall back to xcb_poll_for_event, and just do a
harmless read on the socket.
Kristian Høgsberg [Mon, 25 Apr 2011 19:08:20 +0000 (15:08 -0400)]
compositor: Stop using EGL_EGLEXT_PROTOTYPES and look up extension functions
Kristian Høgsberg [Sat, 23 Apr 2011 19:34:50 +0000 (15:34 -0400)]
compositor: Don't use glClear for clearing
Draw solid color rectangles clipped to the repaint area instead.
Benjamin Franzke [Mon, 25 Apr 2011 17:44:47 +0000 (19:44 +0200)]
compositor: Use stride/4 as width for shm textures
Benjamin Franzke [Mon, 25 Apr 2011 15:47:44 +0000 (17:47 +0200)]
compositor: Use EGL_WL_bind_wayland_display only if available
Kristian Høgsberg [Sat, 23 Apr 2011 17:17:43 +0000 (13:17 -0400)]
Add meego-tablet-shell
We'll probably break it out into its own repo down the road, but for
now keeping it here is convenient.
Kristian Høgsberg [Sat, 23 Apr 2011 17:04:11 +0000 (13:04 -0400)]
compositor: Support loadable shells
The shell module is responsible for implementing the higher level
compositor behavior. We default to the desktop-lite shell built in to
the compositor.
Kristian Høgsberg [Fri, 22 Apr 2011 19:38:14 +0000 (15:38 -0400)]
compositor: Fade to black on idle timeout
Kristian Høgsberg [Fri, 22 Apr 2011 18:23:51 +0000 (14:23 -0400)]
compositor: Refactor shader setup a bit
Kristian Høgsberg [Fri, 22 Apr 2011 18:05:32 +0000 (14:05 -0400)]
compositor-openwfd: Fix event handler return type
Kristian Høgsberg [Fri, 22 Apr 2011 18:01:18 +0000 (14:01 -0400)]
compositor: Implement a simple screensaver feature
We'll need protocol for screensaver inhibit requests.
Kristian Høgsberg [Fri, 22 Apr 2011 17:01:26 +0000 (13:01 -0400)]
Also fix compositor-wayland event handler
Kristian Høgsberg [Fri, 22 Apr 2011 16:27:57 +0000 (12:27 -0400)]
Update return types of event handler functions
Missed this in previous commit.
Kristian Høgsberg [Fri, 22 Apr 2011 16:18:13 +0000 (12:18 -0400)]
compositor-x11: Adjust to event loop changes
Instead of having a separate check function, we just mark our x11 event
source as needing a post-dispatch check. The event loop will call our
dispatch function again after all dispatching is done, this time with
mask = 0. If we don't process any events, return 0, so the event loop
doesn't keep calling us.
Benjamin Franzke [Tue, 8 Mar 2011 10:32:57 +0000 (11:32 +0100)]
Make use of wayland-server shm common code
Benjamin Franzke [Mon, 7 Mar 2011 17:04:59 +0000 (18:04 +0100)]
compositor: Use surface_attached_to list for shm-buffers
Benjamin Franzke [Mon, 7 Mar 2011 14:17:56 +0000 (15:17 +0100)]
compositor: Add wlsc_shm_buffer_attach
Benjamin Franzke [Mon, 7 Mar 2011 14:08:09 +0000 (15:08 +0100)]
Implement buffer.damage in shm, use it in window.c
Benjamin Franzke [Fri, 25 Mar 2011 13:06:37 +0000 (14:06 +0100)]
compositor-x11: Set xcb to be eventqueue owner
This'll fix egl_gallium (when bind_wayland_display is done).
Kristian Høgsberg [Fri, 22 Apr 2011 03:48:13 +0000 (23:48 -0400)]
compositor: Pass NULL for context to wayland buffer eglCreateImageKHR()
Kristian Høgsberg [Thu, 21 Apr 2011 18:51:44 +0000 (14:51 -0400)]
compositor-x11: Use check function to make sure we handle all events
If somebody else did an X11 round trip, that could leave events in the
XCB buffer that we wouldn't see until the next X event came in. The new
event source check function lets us check the XCB queue after dispatching
and this way we'll see events we need to deal with right away.
Kristian Høgsberg [Wed, 20 Apr 2011 22:53:07 +0000 (18:53 -0400)]
Fix clients to work with wl_ prefixed interface names
Kristian Høgsberg [Tue, 19 Apr 2011 16:38:22 +0000 (12:38 -0400)]
compositor-x11: Use the keymap_notify immediately following the focus_in event
The event handling gets a little trickier this way but we need the
keymap sent immdiately after the focus_in event to determine which keys
are pressed as the compositor receives keyboard focus.
Kristian Høgsberg [Tue, 19 Apr 2011 13:23:29 +0000 (09:23 -0400)]
compositor-x11: Generalize handling of event pairs
We need to look at the focus_in and keymap notify pair to correctly determine
the set of held down keys at focus in time, so generalize the handling
of event pairs in preparation for that.
Kristian Høgsberg [Mon, 18 Apr 2011 14:33:25 +0000 (10:33 -0400)]
Update to work with scanner that doesn't hardcode wl_*
This lets us drop the wl_ prefix for the un-officual screenshooter protocol.
Kristian Høgsberg [Thu, 14 Apr 2011 18:44:58 +0000 (14:44 -0400)]
Switch to new subscribe protocol and wayland-egl
Benjamin Franzke [Wed, 20 Apr 2011 18:16:25 +0000 (20:16 +0200)]
compositor-openwfd: Fixup rebase
Benjamin Franzke [Sun, 3 Apr 2011 22:30:25 +0000 (00:30 +0200)]
compositor: Add OpenWF Display backend
Benjamin Franzke [Wed, 20 Apr 2011 15:06:13 +0000 (17:06 +0200)]
Optimize fullscreen scanout abit
Use the drm fb_id used for the scanout-test
as well for the corresponding pageflip.
Move most of the scanout details into compositor-drm.
Kristian Høgsberg [Wed, 20 Apr 2011 13:35:15 +0000 (09:35 -0400)]
Merge remote-tracking branch 'bnf/fullscreen-pageflip'
Benjamin Franzke [Wed, 20 Apr 2011 09:02:58 +0000 (11:02 +0200)]
Make use of a hardware cursor in compositor-drm
Benjamin Franzke [Sun, 10 Apr 2011 14:49:52 +0000 (16:49 +0200)]
compositor(-drm): Pageflip to fullscreen surfaces
Kristian Høgsberg [Fri, 15 Apr 2011 19:48:07 +0000 (15:48 -0400)]
compositor-x11: Suppress keyboard repeat events
Kristian Høgsberg [Thu, 14 Apr 2011 15:54:59 +0000 (11:54 -0400)]
window.c: Check for cairo device failure the right way
Kristian Høgsberg [Wed, 13 Apr 2011 15:52:54 +0000 (11:52 -0400)]
Only invoke shell button bindings if there's a pointer focus surface
Kristian Høgsberg [Wed, 13 Apr 2011 02:23:30 +0000 (22:23 -0400)]
Move more switcher details to switcher.c
Kristian Høgsberg [Tue, 12 Apr 2011 21:42:30 +0000 (17:42 -0400)]
Move switcher behaviour into switcher.c
Kristian Høgsberg [Tue, 12 Apr 2011 21:25:42 +0000 (17:25 -0400)]
Move shell bindings to shell.c
Kristian Høgsberg [Tue, 12 Apr 2011 21:22:49 +0000 (17:22 -0400)]
Extend wlsc_binding to cover buttons too
Kristian Høgsberg [Tue, 12 Apr 2011 21:16:00 +0000 (17:16 -0400)]
Update modifier state as input devices enter and leave
Kristian Høgsberg [Tue, 12 Apr 2011 15:34:32 +0000 (11:34 -0400)]
Define _GNU_SOURCE for O_CLOEXEC flag
Kristian Høgsberg [Mon, 11 Apr 2011 20:59:05 +0000 (16:59 -0400)]
Remove double definition of window_get_wl_surface()
Kristian Høgsberg [Mon, 11 Apr 2011 20:49:17 +0000 (16:49 -0400)]
Remove typo
Failed to break up the patch into commits.
Kristian Høgsberg [Mon, 11 Apr 2011 20:47:50 +0000 (16:47 -0400)]
Merge remote-tracking branch 'bnf/surface-frame-event'
Conflicts:
compositor/compositor.c
Kristian Høgsberg [Mon, 11 Apr 2011 17:58:13 +0000 (13:58 -0400)]
Add a simple key binding mechanism
Kristian Høgsberg [Mon, 11 Apr 2011 17:39:43 +0000 (13:39 -0400)]
Call present after clearing repaint_needed
In case we end up scheduling a repaint in the finish_frame callback.
Kristian Høgsberg [Mon, 11 Apr 2011 17:34:24 +0000 (13:34 -0400)]
Clip out pixels covered by opaque surfaces during repaint
Kristian Høgsberg [Mon, 11 Apr 2011 17:19:16 +0000 (13:19 -0400)]
compositor-drm: Close drm fd on exec
Kristian Høgsberg [Mon, 11 Apr 2011 17:18:31 +0000 (13:18 -0400)]
Fix window_set_child_size() for windows without decoration
Kristian Høgsberg [Mon, 11 Apr 2011 17:17:44 +0000 (13:17 -0400)]
Add struct window accessor for the wl_surface
Tim Wiederhake [Mon, 11 Apr 2011 17:16:33 +0000 (13:16 -0400)]
Define global handler on display creation
Otherwise the initial announcement of interfaces gets lost.
Cyril Brulebois [Wed, 6 Apr 2011 16:05:40 +0000 (18:05 +0200)]
Check return value of XOpenDisplay().
Instead of calling XGetXCBConnection() blindly, check XOpenDisplay()'s
return value to avoid a possible segfault in the former. That happens if
$DISPLAY is set, but if that display isn't available.
Signed-off-by: Cyril Brulebois <kibi@debian.org>
Kristian Høgsberg [Fri, 18 Mar 2011 04:15:25 +0000 (00:15 -0400)]
Merge remote-tracking branch 'bnf/fixes'
Benjamin Franzke [Fri, 18 Feb 2011 22:00:55 +0000 (23:00 +0100)]
gears: Use wayland egl surface instead of images
Benjamin Franzke [Thu, 10 Feb 2011 11:04:30 +0000 (12:04 +0100)]
window: Use window surfaces for windows
Benjamin Franzke [Thu, 17 Mar 2011 14:43:21 +0000 (15:43 +0100)]
simple-client: Request a alpha channel in choose config
Benjamin Franzke [Mon, 14 Mar 2011 11:07:26 +0000 (12:07 +0100)]
Support per surface frame events
This fixes tearing with multi head.
Benjamin Franzke [Wed, 16 Mar 2011 12:48:42 +0000 (13:48 +0100)]
compositor: Update only existing backgrounds in output_move
Benjamin Franzke [Tue, 15 Mar 2011 14:08:41 +0000 (15:08 +0100)]
compositor-drm: Support output hotplugging