Commit Graph

9293 Commits

Author SHA1 Message Date
Kristian Høgsberg 2c875bd31e Cache modesetting data and just do drmModeSetCrtc on vt enter. 2008-12-19 11:13:44 -05:00
Kristian Høgsberg 38ccd3a23e Do vt ioctl on the right fd. 2008-12-19 10:15:35 -05:00
Ray Strode 19ad6a9db3 Restore framebuffer when switching back to VT
The kernel currently automatically redirects
output to the kernel framebuffer when switching
VTs away from wayland.  It doesn't restore
output back to wayland's fb when coming back
to the VT.  This patch works around that issue.
2008-12-19 01:49:22 -05:00
Ray Strode fe57347cb9 Add new event loop api for watching signals
This will provide us with a nice, safe mechanism
for getting notification of VT changes.
2008-12-19 01:49:22 -05:00
Ray Strode 90e701df08 Force pointer to stay on screen.
Without this change it's really easy to
accidentally send the pointer flying and not
be able to get it back.
2008-12-18 23:06:26 -05:00
Kristian Høgsberg 2d4219e542 Scale background pixbuf when loading.
This lets us avoid hitting the texture limit for some backgrounds.
2008-12-18 21:40:03 -05:00
Ray Strode 18fd33c9bb Fix rgb byte order for GdkPixbuf backgrounds. 2008-12-18 21:05:20 -05:00
Kristian Høgsberg e10b828562 Remember to handle rgb_visual case in surface_attach. 2008-12-18 19:58:44 -05:00
Kristian Høgsberg de31d5ca6f Add preliminary visual support. 2008-12-18 17:55:33 -05:00
Kristian Høgsberg c8c5d5872d Set terminal type to vt100. 2008-12-18 14:50:08 -05:00
Kristian Høgsberg b7037a02f0 Don't pin front buffer, kernel modesetting takes care of that now. 2008-12-18 13:18:02 -05:00
Kristian Høgsberg 5b7f832eab Fall back to solid color background if not image is found. 2008-12-18 12:10:37 -05:00
Kristian Høgsberg d2412e2c2e Redesign the compositor / server interface.
This lets the compositor directly provide the implementation of the RMI
objects for the surface object and a new compositor object.  We avoid the
manual forwarding of requests into the compositor and the clumsy compositor
interface struct.
2008-12-15 20:35:24 -05:00
Kristian Høgsberg 0ea4710b3d Use gdk-pixbuf for saving the screenshot. 2008-12-14 15:53:13 -05:00
Kristian Høgsberg 3f16956c06 Initialize count to 0 in wl_list_length().
Not sure how this ever really worked before...
2008-12-14 15:52:34 -05:00
Kristian Høgsberg 64949978f4 Fix default input device path. 2008-12-12 14:48:46 -05:00
Kristian Høgsberg a7700c8ff1 Handle per-device keyboard focus. 2008-12-12 13:48:30 -05:00
Kristian Høgsberg f0c7b2083a Don't close uninitialized fd, check forkpty error. 2008-12-12 13:39:03 -05:00
Kristian Høgsberg c492b482d0 Make multi-pointer work.
This also add command line parsing as a way to specify the input
device files to use.
2008-12-12 12:17:51 -05:00
Kristian Høgsberg d6531261de Add option parsing using GOption. 2008-12-12 12:17:51 -05:00
Kristian Høgsberg 864c468b42 Make sure we initialize object hash.
This patch also move the hash implementation details to wayland-util.c.
2008-12-12 12:17:47 -05:00
Kristian Høgsberg 997e71eb1e Use the screen size for sizing the background. 2008-12-12 10:33:04 -05:00
Kristian Høgsberg 9e4c76b530 Pass -fPIC when compiling shared libraries. 2008-12-12 10:26:04 -05:00
Kristian Høgsberg aad70ba986 Forgot to add egl-compositor.h. 2008-12-12 09:53:27 -05:00
Kristian Høgsberg 29573bc569 Implement passive grabs on button clicks. 2008-12-11 23:27:27 -05:00
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.
2008-12-11 23:18:45 -05:00
Kristian Høgsberg d1c58d60f6 Fix signature for pointer motion event. 2008-12-10 17:31:44 -05:00
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.
2008-12-10 17:26:28 -05:00
Kristian Høgsberg 4a8767bbb7 Install libraries plus headers and add pkg-config files. 2008-12-10 13:49:28 -05:00
Kristian Høgsberg 7fdff04cdc Only send key events to toplevel surface. 2008-12-10 13:25:00 -05:00
Kristian Høgsberg 5a75c90d01 Feed button events through compositor.
This also generalizes the code to send events to a surface a bit.
2008-12-10 13:16:50 -05:00
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.
2008-12-10 10:42:04 -05:00
Kristian Høgsberg 201a904889 Drop surface iterator API, just track surfaces in the compositor. 2008-12-10 00:40:50 -05:00
Kristian Høgsberg eac149ad06 Pass button clicks through to compositor.
This lets us handle raising windows, which is useful.
2008-12-10 00:24:18 -05:00
Kristian Høgsberg 98fed0fb84 Use bilinear filtering. 2008-12-09 13:35:35 -05:00
Kristian Høgsberg fdea72a078 Handle interrupted system calls in connection code. 2008-12-09 10:48:52 -05:00
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.
2008-12-08 22:22:25 -05:00
Kristian Høgsberg 73f4e760a2 Fix wl_method for screenshooter. 2008-12-08 14:07:33 -05:00
Kristian Høgsberg 6e0a2f8953 Tweak terminal font color. 2008-12-08 14:06:56 -05:00
Kristian Høgsberg 9f88b185a0 Don't forget to initialize overlay position. 2008-12-08 13:52:08 -05:00
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.
2008-12-08 13:50:07 -05:00
Kristian Høgsberg 1584c57edc Snap terminal size to an integer number of character cells. 2008-12-08 12:59:37 -05:00
Kristian Høgsberg 17809b1e43 Handle \e[J and \e[H so we can clear the terminal. 2008-12-08 12:20:40 -05:00
Kristian Høgsberg 721f09f187 Make sure we don't miss queue redraws between commit and ack. 2008-12-08 11:13:26 -05:00
Kristian Høgsberg c47303f2d2 Destroy back buffer in acknowledge handler. 2008-12-08 09:57:08 -05:00
Kristian Høgsberg 7a8431f670 Only update gears angle in frame handler. 2008-12-08 09:39:22 -05:00
Kristian Høgsberg 0d77fd484c Add key map for ctrl modifier as well. 2008-12-08 00:23:55 -05:00
Kristian Høgsberg b29415ee6d Update tail pointer correctly so scrolling works. 2008-12-08 00:16:39 -05:00
Kristian Høgsberg f04e838d4a Skip escape codes for now. 2008-12-08 00:07:49 -05:00
Kristian Høgsberg 6e83d58153 Add keyboard input to terminal. 2008-12-08 00:01:36 -05:00