Benjamin Franzke
48c4ea2dbd
compositor-drm: Merge drm_output_destroy and destroy_output
2011-08-31 16:24:27 -04:00
Benjamin Franzke
117483daaa
compositor-drm: Coding style fixes
...
- Reformat indentation and 80-column wrap
- Use output->base rather than output_base
- Remove traling space
2011-08-31 16:24:25 -04:00
Matt Roper
361d2ade02
Update compositor shutdown code
...
Adds a general wlsc_compositor_shutdown() function that all output
backends call when shutting down. wlsc_compositor_shutdown() will call
a new 'destroy' method of each output to perform backend-specific
cleanup (e.g., turning off the hardware cursor in the DRM compositor).
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
2011-08-29 17:12:27 -04:00
Matt Roper
045037e005
Turn off hardware cursors on VT switch before dropping DRM master.
...
The DRM cursor ioctl requires DRM master. We shouldn't drop
master until after we're done turning off the hardware cursors
for a VT switch.
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
2011-08-27 12:10:19 -04:00
Ander Conselvan de Oliveira
90bc9e6532
compositor-drm: Fix compilation error caused by typo.
2011-08-17 09:30:16 -04:00
Ander Conselvan de Oliveira
c483917512
compositor-drm: Make unused parts of the cursor image transparent
...
The bo for the cursor image is always created with size 64x64 even if
the actual cursor image is smaller than that. If this memory is not
initialized, random data can create artifacts near the cursor.
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
2011-08-16 21:32:54 -04:00
Benjamin Franzke
9eaee35613
compositor-drm: Ignore disconnected connectors width
...
- Fixes segfault, if first enumerated connector is not connected.
- Corrects x-offset where e.g. the 2. of 3 connectors is not connected.
(where width of 1. output would have taken twice as
offset for output at 3. connector)
2011-08-12 10:17:12 -04:00
Kristian Høgsberg
86ec8e80d8
compositor: Use systemd seats for input devices as well
2011-07-19 16:10:11 -07:00
Kristian Høgsberg
8d51f141ca
compositor: Use systemd seat configuration conventions
...
http://www.freedesktop.org/wiki/Software/systemd/multiseat
2011-07-15 21:28:38 -04:00
Kristian Høgsberg
6244668cc5
compositor-drm: Drop cursor debug message
2011-07-15 17:26:34 -04:00
Benjamin Franzke
a8bdeae1b6
compositor: Fix cursor damaging on multi head
...
Removing cursors from the surface list,
for usage as hardware cursor needs lower damaging.
Also damge when re-adding to the surface list.
2011-07-01 15:51:41 -04:00
Benjamin Franzke
a16e002bd8
compositor-drm: Pass physical size to output_init
2011-06-24 11:57:06 +02:00
Benjamin Franzke
060cf805bb
Use gbm for compositor-{drm,openwfd}
2011-06-23 21:25:37 +02:00
Kristian Høgsberg
8f0ce05f52
compositor: Send out more detailed output events
2011-06-21 11:16:58 -04:00
Egbert Eich
e7b8d9055e
compositor: Set EGL_PLATFORM env variable for each backend.
...
I may have missed something, but - since the Wayland compositor
already picks a platform backend, opens a connection and initializes the
backend specific display data structure it doesn't make sense
to let egl pick a platform. If it picks a different one the
display specific data structure will most likely not match.
Thus determine the platform in the Wayland rendering backend by setting
the EGL_PLATFORM env variable.
For the client any other platform than 'wayland' doesn't seem to make
sense.
I'm not sure if I've got the the platform ofr openfwd right.
Signed-off-by: Egbert Eich <eich@freedesktop.org>
2011-05-10 16:42:08 -04:00
Kristian Høgsberg
d8e181bd3f
compositor-drm: Hide hw cursors on vt switch
2011-05-06 15:38:28 -04:00
Kristian Høgsberg
9396fc515b
compositor-drm: Fix vt switching
...
Don't take input or render while switched away, drop and set master correctly.
2011-05-06 15:15:37 -04:00
Kristian Høgsberg
6c709a3e4f
Fix warnings and symbol visibility from missing CFLAGS
2011-05-06 14:52:41 -04:00
Kristian Høgsberg
e4c40a4734
compositor: Disable hw cursor if we're texturing the cursor
2011-05-06 14:04:21 -04:00
Kristian Høgsberg
4d07a1c213
compositor: Scanout client buffers even if they're not map_fullscreen
2011-05-06 14:03:12 -04:00
Kristian Høgsberg
7981d00a59
compositor-drm: Use EGL_DRM_BUFFER_USE_CURSOR_MESA
2011-05-06 13:23:49 -04:00
Kristian Høgsberg
8050bd217f
compositor-drm: Fix modularization breakage
2011-05-04 15:08:04 -04:00
Kristian Høgsberg
1c5621840b
compositor: Split backends into modules
2011-05-02 22:09:20 -04:00
Benjamin Franzke
d59eb1c3aa
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.
2011-04-29 22:20:25 +02:00
Benjamin Franzke
e5b3b2601c
Cast fd's to intptr_t before casting to EGLNativeDisplay
...
Fixes warnings on 64bit.
Also use wlsc_compositor::destroy_image in compositor-openwfd.
2011-04-26 11:18:43 -04:00
Kristian Høgsberg
b5819dc61d
compositor: Stop using EGL_EGLEXT_PROTOTYPES and look up extension functions
2011-04-25 15:35:05 -04:00
Kristian Høgsberg
b1868479ad
Update return types of event handler functions
...
Missed this in previous commit.
2011-04-22 12:27:57 -04:00
Benjamin Franzke
66aa235b4c
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.
2011-04-20 17:30:12 +02:00
Benjamin Franzke
431da9a4cc
Make use of a hardware cursor in compositor-drm
2011-04-20 15:29:35 +02:00
Benjamin Franzke
1178a3ce5c
compositor(-drm): Pageflip to fullscreen surfaces
2011-04-19 09:05:08 +02:00
Kristian Høgsberg
0b9334a51a
Define _GNU_SOURCE for O_CLOEXEC flag
2011-04-12 11:34:32 -04:00
Kristian Høgsberg
11e2828bdc
Merge remote-tracking branch 'bnf/surface-frame-event'
...
Conflicts:
compositor/compositor.c
2011-04-11 16:47:50 -04:00
Kristian Høgsberg
9cd7aca0e0
compositor-drm: Close drm fd on exec
2011-04-11 13:19:16 -04:00
Benjamin Franzke
ec4d342aa9
Support per surface frame events
...
This fixes tearing with multi head.
2011-03-17 11:54:35 +01:00
Benjamin Franzke
9c26ff3507
compositor-drm: Support output hotplugging
2011-03-15 17:21:36 +01:00
Benjamin Franzke
eefc36c760
compositor-drm: Fix multi head rendering
2011-03-13 15:02:58 -04:00
Marty Jack
13d9db2095
Beginnings of multiple monitor
...
Allocate the CRTCs from a bit mask to avoid the multiple monitor black
screen problem.
2011-03-13 15:02:01 -04:00
Benjamin Franzke
c649a92549
compositor: Remove drm.c, use shm.c for pointer images
2011-03-02 11:31:46 -05:00
Benjamin Franzke
2af7f10674
compositor: Remove wlsc_drm
2011-03-02 11:31:46 -05:00
Benjamin Franzke
5b2cb6f911
compositor: Generate Framebuffer in the backends
2011-03-01 16:21:01 +01:00
Benjamin Franzke
1b765ffb8c
compositor: Add flags parameter to wlsc_output_init
...
Currently available flags:
- WL_OUTPUT_FLIPPED
2011-03-01 16:21:01 +01:00
Benjamin Franzke
faa0a9dfa9
compositor: Use eglBindWaylandDisplayWL
2011-03-01 16:20:56 +01:00
Benjamin Franzke
feb370e4ea
compositor-drm: Flush before pageflipping
...
This fixes compositor-drm flickering on r600.
2011-02-14 08:28:44 -05:00
Kristian Høgsberg
8525a50362
Move buffer creation and buffer details into drm.c and shm.c
2011-01-14 16:20:21 -05:00
Kristian Høgsberg
e4762a6ac1
Move tty and vt handling out in its own file
2011-01-14 14:59:13 -05:00
Kristian Høgsberg
43db4015f9
Split out evdev handling to its own file
2011-01-14 14:45:42 -05:00
Kristian Høgsberg
9c3e8d734e
Move grab state to struct wl_input_device
2010-12-08 09:48:52 -05:00
Kristian Høgsberg
caa6442556
compositor: Use a virtual destructor when shutting down
...
Backend can now rely on their destroy function getting called on shutdown,
so reset tty etc there instead of handling SIGTERM twice.
2010-12-01 16:53:15 -05:00
Darxus
55973f2f5a
Some additional return value checking
2010-11-22 21:54:15 -05:00
Jesse Barnes
f2912fa85f
compositor: put console into KD_GRAPHICS mode at vt enter time
...
This will keep the kernel from changing graphics state out from under us
(e.g. blanking).
2010-11-09 14:25:49 -05:00