Kristian Høgsberg
29573bc569
Implement passive grabs on button clicks.
16 years ago
Kristian Høgsberg
5ee1a60f1a
Rewrite input event delivery path.
...
Instead of having the input driver push the events into the core server,
only to have the server call back out to the compositor hooks, the driver now
just calls the compositor directly. The input drivers are always dependent on
the type of compositor anyway so there was no point in passing the events
through the server. Now the server is only involved when it's time to actually
send the events to the clients.
16 years ago
Kristian Høgsberg
d1c58d60f6
Fix signature for pointer motion event.
16 years ago
Kristian Høgsberg
b96785ca61
Drop glx-compositor for now.
...
Might want to resurrect this later, but for now, let's not try to
drag it along.
16 years ago
Kristian Høgsberg
4a8767bbb7
Install libraries plus headers and add pkg-config files.
16 years ago
Kristian Høgsberg
7fdff04cdc
Only send key events to toplevel surface.
16 years ago
Kristian Høgsberg
5a75c90d01
Feed button events through compositor.
...
This also generalizes the code to send events to a surface a bit.
16 years ago
Kristian Høgsberg
715a081cf4
Feed motion events through compositor.
...
This lets us pass events only to the window that we're mousing over
and we can now transform input events back to the window coordinate space.
16 years ago
Kristian Høgsberg
201a904889
Drop surface iterator API, just track surfaces in the compositor.
16 years ago
Kristian Høgsberg
eac149ad06
Pass button clicks through to compositor.
...
This lets us handle raising windows, which is useful.
16 years ago
Kristian Høgsberg
98fed0fb84
Use bilinear filtering.
16 years ago
Kristian Høgsberg
fdea72a078
Handle interrupted system calls in connection code.
16 years ago
Kristian Høgsberg
dbd54640f4
Implement a bunch of escape codes.
...
Bash command line editing and gdb is pretty much there. Emacs, vi and even less
need more work.
16 years ago
Kristian Høgsberg
73f4e760a2
Fix wl_method for screenshooter.
16 years ago
Kristian Høgsberg
6e0a2f8953
Tweak terminal font color.
16 years ago
Kristian Høgsberg
9f88b185a0
Don't forget to initialize overlay position.
16 years ago
Kristian Høgsberg
221067654c
Let clients override the suggested size on resize.
...
This lets gears enforce a square aspect ration and minimum size of 300x300
and the terminal now properly resizes in steps of character cells.
16 years ago
Kristian Høgsberg
1584c57edc
Snap terminal size to an integer number of character cells.
16 years ago
Kristian Høgsberg
17809b1e43
Handle \e[J and \e[H so we can clear the terminal.
16 years ago
Kristian Høgsberg
721f09f187
Make sure we don't miss queue redraws between commit and ack.
16 years ago
Kristian Høgsberg
c47303f2d2
Destroy back buffer in acknowledge handler.
16 years ago
Kristian Høgsberg
7a8431f670
Only update gears angle in frame handler.
16 years ago
Kristian Høgsberg
0d77fd484c
Add key map for ctrl modifier as well.
16 years ago
Kristian Høgsberg
b29415ee6d
Update tail pointer correctly so scrolling works.
16 years ago
Kristian Høgsberg
f04e838d4a
Skip escape codes for now.
16 years ago
Kristian Høgsberg
6e83d58153
Add keyboard input to terminal.
16 years ago
Kristian Høgsberg
269d6e3daf
Run command in a pty and feed output to wayland terminal.
16 years ago
Kristian Høgsberg
44e3c5e1ad
Add some text contents to terminal.
16 years ago
Kristian Høgsberg
0c4457f0c2
Refactor window logic into reusable parts, add a new terminal application.
...
The gears code is moved into a new file gearc.c and the window decoration
and management code stays in window.c. A new application 'terminal' is the
second user of the windowing code, but doesn't do anything useful yet.
16 years ago
Kristian Høgsberg
dc0f355f0a
Fix API to always include socket name length.
16 years ago
Kristian Høgsberg
cb70316105
Update .gitignore.
16 years ago
Kristian Høgsberg
841883b43c
Fail if we can't create the compositor.
16 years ago
Kristian Høgsberg
122912c69b
Make the wayland server a library used by the compositors.
16 years ago
Kristian Høgsberg
87e0a384da
Use type strings for method and event signatures.
16 years ago
Kristian Høgsberg
d4de54efe7
Use autoconf instead of $(shell ...) in the Makefile.
16 years ago
Kristian Høgsberg
b820b82cad
Add note about how clients could embed other applications.
16 years ago
Kristian Høgsberg
e2ce43a9be
Fix namespace convention for glib source.
16 years ago
Kristian Høgsberg
35052568d0
Exit if load_compositor() fails.
16 years ago
Kristian Høgsberg
d91e049735
Update .gitignore.
16 years ago
Kristian Høgsberg
fcb6cbd5d0
Drop early, obsolete compositor.
16 years ago
Kristian Høgsberg
3620295d17
Drop unused clients, pointer and window.
16 years ago
Kristian Høgsberg
ffd710e653
Put Wayland under the MIT license.
16 years ago
Kristian Høgsberg
c2b633e6c2
Add wl_client_marshal() for sending events.
16 years ago
Kristian Høgsberg
4a29890da7
Generalize event loop a bit and pull in the timerfd stuff.
16 years ago
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.
16 years ago
Kristian Høgsberg
44f36e3585
Make ack event signal that the requests have been composited.
16 years ago
Kristian Høgsberg
f3723fe79e
Add .gitignore.
16 years ago
Kristian Høgsberg
0ee84083a2
Convert touchpad absolute events to relative.
16 years ago
Kristian Høgsberg
18fb78307b
Use struct buffer from cairo-util.c in flower.c.
16 years ago
Kristian Høgsberg
73c305851d
Make overlay animation actually stop.
16 years ago