Kristian Høgsberg
191454e6c2
compositor: Rename scanout surfaces
...
Let's call the surface that's about to be pageflipped 'pending' and the
one we're currently showing 'scanout'.
2011-10-24 13:25:17 -04:00
Benjamin Franzke
02dee2caad
compositor-drm: Fix invalid usage of udev ressources
...
The reference returned by udev_list_entry_get_name is
only valid until udev_enumerate_unref is called.
Call unref after the last usage of such.
2011-10-07 10:00:11 +02:00
Benjamin Franzke
a764ee5158
compositor-drm: Enumerate only cards with name card*
...
To exclude /dev/dri/controlD* from the enumeration.
2011-10-07 09:57:50 +02:00
Benjamin Franzke
439d98697a
compositor-drm: Be patient when output creation fails
...
Do not fail if e.g. only one of 3 connectors cant be enabled.
Could be that we just have not enough crtcs available.
2011-10-07 09:56:54 +02:00
Kristian Høgsberg
96aa7da24a
Change remaining GPLv2 headers to MIT
...
The files in question are copyright Benjamin Franzke (who agrees),
Intel Corporation, Red Hat and myself. On behalf of Red Hat,
Richard Fontana says:
"Therefore, to the extent that Red Hat, Inc. has any copyright
interest in the files you cited as of this date (compositor-drm.c,
compositor.c, compositor.h, screenshooter.c in
http://cgit.freedesktop.org/wayland/wayland-demos/tree/compositor ),
Red Hat hereby elects to apply the CC0 1.0 Universal Public Domain
Dedication to such copyrighted material. See:
http://creativecommons.org/publicdomain/zero/1.0/legalcode .
Thanks,
Richard E. Fontana
Open Source Licensing and Patent Counsel
Red Hat, Inc."
2011-09-19 17:29:24 -04:00
Tiago Vignatti
faee80196f
compositor: choose tty from command line
...
This is a backend option, so you should use something like '-otty='.
Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
2011-09-01 16:07:07 -04:00
Benjamin Franzke
91eacca38b
Remove egl display type setenv hack
...
No longer needed with mesa 7.12-devel egl display autodetection.
2011-08-31 16:25:18 -04:00
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