Commit graph

8030 commits

Author SHA1 Message Date
Kristian Høgsberg fcb6cbd5d0 Drop early, obsolete compositor. 2008-12-02 15:17:28 -05:00
Kristian Høgsberg 3620295d17 Drop unused clients, pointer and window. 2008-12-02 15:16:11 -05:00
Kristian Høgsberg ffd710e653 Put Wayland under the MIT license. 2008-12-02 15:15:01 -05:00
Kristian Høgsberg c2b633e6c2 Add wl_client_marshal() for sending events. 2008-11-28 19:12:45 -05:00
Kristian Høgsberg 4a29890da7 Generalize event loop a bit and pull in the timerfd stuff. 2008-11-28 18:35:25 -05:00
Kristian Høgsberg fbdbbdc153 Finally implement the commit/ack/frame protocol and improve repaint loop.
This implements the commit/ack/frame protocol that let clients batch up
a series of requests and then commit them atomically using the commit request.
The commit requests generats two following events: the acknowledge event,
which lets the client know that the server has received the request and
which frame the rendering has been scheduled for.  At this point the client
can start rendering the next frame or free up temporary buffers.  Then when
the compositor finally makes the newly composited frame visible on screen
the server sends a frame event, which contains the number of the frame that
was presented and the time when it happened.

The window and flower clients have been updated to use these two events in
their main loops and everything now updates per frame.  The EGL compositor
repaint loop has been tweaked to delay the compositing of the screen to
10ms after last swapbuffer completed so as to allow processing as many
requests as possible before blocking on the next vertical retrace.
2008-11-28 17:06:10 -05:00
Kristian Høgsberg 44f36e3585 Make ack event signal that the requests have been composited. 2008-11-26 12:57:31 -05:00
Kristian Høgsberg f3723fe79e Add .gitignore. 2008-11-25 23:18:29 -05:00
Kristian Høgsberg 0ee84083a2 Convert touchpad absolute events to relative. 2008-11-25 23:16:31 -05:00
Kristian Høgsberg 18fb78307b Use struct buffer from cairo-util.c in flower.c. 2008-11-25 22:53:28 -05:00
Kristian Høgsberg 73c305851d Make overlay animation actually stop. 2008-11-25 22:45:46 -05:00
Kristian Høgsberg 4097923a64 Add commit request + ack event to wayland core.
Use in window.c to manage life cycle of buffer correctly.
2008-11-25 22:40:39 -05:00
Kristian Høgsberg 961a04cef0 Correct pointer hotspot location. 2008-11-25 22:38:56 -05:00
Kristian Høgsberg ffb7406eaa Add different type of overlay animation. 2008-11-25 18:10:39 -05:00
Kristian Høgsberg 5c1e6ecab4 Tweak overlay animation a bit. 2008-11-25 13:51:36 -05:00
Kristian Høgsberg 443853cbda Pick a config instead of hard coding one. 2008-11-25 12:12:05 -05:00
Kristian Høgsberg bf9541ffa3 Allocate and set mode in egl-compositor.
Pass the front buffer name to eglCreateSurfaceForName to create the
fullscreen EGLSurface.
2008-11-25 12:10:09 -05:00
Kristian Høgsberg f53f4bbd52 Quit screenshooter when idle. 2008-11-24 11:32:43 -05:00
Kristian Høgsberg 9af92b380c Animate overlay on/off. 2008-11-24 01:12:46 -05:00
Kristian Høgsberg cddc0ad502 Add keyboard input, move input device creation to compositor. 2008-11-24 00:31:49 -05:00
Kristian Høgsberg ec8ef722e9 Add missing breaks in evdev switch. 2008-11-24 00:13:13 -05:00
Kristian Høgsberg a5a2c8e5db Rename input.c to evdev.c. 2008-11-24 00:12:20 -05:00
Kristian Høgsberg 1e4b86af1a Expose screenshooting as an interface, drop SIGUSR hack.
This pulls in a bit of extra infrastructure for discovering adertised objects on the
client side.
2008-11-24 00:06:16 -05:00
Kristian Høgsberg 14fcff7726 Generalize the object advertising mechanism. 2008-11-23 19:10:23 -05:00
Kristian Høgsberg 548798266e Add an overlay type window in the compositor. 2008-11-23 17:07:32 -05:00
Kristian Høgsberg aa5b5bed73 Load and draw background in compositor. 2008-11-21 21:31:54 -05:00
Kristian Høgsberg 4c9f2c9b1a Move pointer drawing into compositor. 2008-11-21 19:25:44 -05:00
Kristian Høgsberg e9d550bdd4 Optimize blur further, resize gears with window. 2008-11-19 00:49:39 -05:00
Kristian Høgsberg 29590034f4 Remove redundant glFlush(). 2008-11-17 23:33:19 -05:00
Kristian Høgsberg 873302649a Optimize blur a bit more. 2008-11-17 22:23:55 -05:00
Kristian Høgsberg 8c304f6d9a A couple more theme tweaks. 2008-11-10 10:46:53 -05:00
Kristian Høgsberg 6e635f3472 Get corner radius right for inner bevel. 2008-11-09 09:15:46 -05:00
Kristian Høgsberg 8d7ca6be21 Add quick screenshot hack. 2008-11-09 00:22:51 -05:00
Kristian Høgsberg 10bdd298b8 Optimize window blur calculation. 2008-11-08 23:27:27 -05:00
Kristian Høgsberg 2f2cfae227 Factor out common cairo code, add blur function. 2008-11-08 23:09:51 -05:00
Kristian Høgsberg e4feb56316 Make window prettier again. 2008-11-08 18:53:37 -05:00
Kristian Høgsberg 30749426dc Tweak pointer image a bit. 2008-11-08 16:01:59 -05:00
Kristian Høgsberg b7a01928be Add prototypes warnings, use -fvisibility. 2008-11-08 15:49:49 -05:00
Kristian Høgsberg f099fd24a3 Use the eagle pkg-config file instead of assuming ../eagle. 2008-11-08 15:30:41 -05:00
Kristian Høgsberg 78231c8dd0 Implement surface copy request, use it for egl gears. 2008-11-08 15:06:01 -05:00
Kristian Høgsberg 1cbaa6abac Use glib main loop for all clients. 2008-11-07 15:54:48 -05:00
Kristian Høgsberg fb59084fbf Add glib main loop integration, use it in flower client. 2008-11-07 14:27:23 -05:00
Kristian Høgsberg 7f77bd8fbe Add copy and damage surface requests. 2008-11-07 08:39:37 -05:00
Kristian Høgsberg 5503bf82c4 dlopen the compositor, add a glx compositor. 2008-11-06 10:53:03 -05:00
Kristian Høgsberg 61ba898b73 README: Add link to google group. 2008-11-06 10:53:03 -05:00
Kristian Høgsberg 56f3c71f8c Add a FIXME for when we have a working fbconfig chooser. 2008-11-06 10:53:03 -05:00
Kristian Høgsberg b8bf19b7a9 Clear depth buffer, but only depth buffer for gears. 2008-11-06 10:53:03 -05:00
Kristian Høgsberg 8a9cda8cfb Add the gears from glxgears. 2008-11-06 10:53:03 -05:00
Kristian Høgsberg 33a52bd07d Add README for the adventurous, allow evdev override from getenv(). 2008-11-06 10:53:02 -05:00
Kristian Høgsberg 35370f8073 Redraw window in idle handler. 2008-11-06 10:53:02 -05:00