Kristian Høgsberg
95d843de11
Also fix compositor-wayland event handler
14 years ago
Kristian Høgsberg
b1868479ad
Update return types of event handler functions
...
Missed this in previous commit.
14 years ago
Kristian Høgsberg
127d0f0050
compositor-x11: Adjust to event loop changes
...
Instead of having a separate check function, we just mark our x11 event
source as needing a post-dispatch check. The event loop will call our
dispatch function again after all dispatching is done, this time with
mask = 0. If we don't process any events, return 0, so the event loop
doesn't keep calling us.
14 years ago
Benjamin Franzke
315b3dc73b
Make use of wayland-server shm common code
14 years ago
Benjamin Franzke
bab41fb70c
compositor: Use surface_attached_to list for shm-buffers
14 years ago
Benjamin Franzke
0c347f0d72
compositor: Add wlsc_shm_buffer_attach
14 years ago
Benjamin Franzke
bde55ec8e4
Implement buffer.damage in shm, use it in window.c
14 years ago
Benjamin Franzke
e997c5fb09
compositor-x11: Set xcb to be eventqueue owner
...
This'll fix egl_gallium (when bind_wayland_display is done).
14 years ago
Kristian Høgsberg
df2f197076
compositor: Pass NULL for context to wayland buffer eglCreateImageKHR()
14 years ago
Kristian Høgsberg
ee72482a00
compositor-x11: Use check function to make sure we handle all events
...
If somebody else did an X11 round trip, that could leave events in the
XCB buffer that we wouldn't see until the next X event came in. The new
event source check function lets us check the XCB queue after dispatching
and this way we'll see events we need to deal with right away.
14 years ago
Kristian Høgsberg
025f7b8f8e
compositor-x11: Use the keymap_notify immediately following the focus_in event
...
The event handling gets a little trickier this way but we need the
keymap sent immdiately after the focus_in event to determine which keys
are pressed as the compositor receives keyboard focus.
14 years ago
Kristian Høgsberg
94da7e1767
compositor-x11: Generalize handling of event pairs
...
We need to look at the focus_in and keymap notify pair to correctly determine
the set of held down keys at focus in time, so generalize the handling
of event pairs in preparation for that.
14 years ago
Kristian Høgsberg
cf57dc52ff
Update to work with scanner that doesn't hardcode wl_*
...
This lets us drop the wl_ prefix for the un-officual screenshooter protocol.
14 years ago
Kristian Høgsberg
91342c6081
Switch to new subscribe protocol and wayland-egl
14 years ago
Benjamin Franzke
e649fac2d8
compositor-openwfd: Fixup rebase
14 years ago
Benjamin Franzke
5d00709931
compositor: Add OpenWF Display backend
14 years ago
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.
14 years ago
Benjamin Franzke
431da9a4cc
Make use of a hardware cursor in compositor-drm
14 years ago
Benjamin Franzke
1178a3ce5c
compositor(-drm): Pageflip to fullscreen surfaces
14 years ago
Kristian Høgsberg
3ddd148fba
compositor-x11: Suppress keyboard repeat events
14 years ago
Kristian Høgsberg
10f097e8dd
Only invoke shell button bindings if there's a pointer focus surface
14 years ago
Kristian Høgsberg
547cadf375
Move more switcher details to switcher.c
14 years ago
Kristian Høgsberg
30021d7993
Move switcher behaviour into switcher.c
14 years ago
Kristian Høgsberg
0793756d52
Move shell bindings to shell.c
14 years ago
Kristian Høgsberg
a8ec86395d
Extend wlsc_binding to cover buttons too
14 years ago
Kristian Høgsberg
f512d07e2d
Update modifier state as input devices enter and leave
14 years ago
Kristian Høgsberg
0b9334a51a
Define _GNU_SOURCE for O_CLOEXEC flag
14 years ago
Kristian Høgsberg
c32c81b650
Remove typo
...
Failed to break up the patch into commits.
14 years ago
Kristian Høgsberg
3555d09813
Add a simple key binding mechanism
14 years ago
Kristian Høgsberg
04db9fa583
Call present after clearing repaint_needed
...
In case we end up scheduling a repaint in the finish_frame callback.
14 years ago
Kristian Høgsberg
cfc6d27b4c
Clip out pixels covered by opaque surfaces during repaint
14 years ago
Kristian Høgsberg
9cd7aca0e0
compositor-drm: Close drm fd on exec
14 years ago
Cyril Brulebois
20798291ca
Check return value of XOpenDisplay().
...
Instead of calling XGetXCBConnection() blindly, check XOpenDisplay()'s
return value to avoid a possible segfault in the former. That happens if
$DISPLAY is set, but if that display isn't available.
Signed-off-by: Cyril Brulebois <kibi@debian.org>
14 years ago
Benjamin Franzke
ec4d342aa9
Support per surface frame events
...
This fixes tearing with multi head.
14 years ago
Benjamin Franzke
264b3f9d84
compositor: Update only existing backgrounds in output_move
14 years ago
Benjamin Franzke
9c26ff3507
compositor-drm: Support output hotplugging
14 years ago
Benjamin Franzke
eefc36c760
compositor-drm: Fix multi head rendering
14 years ago
Marty Jack
13d9db2095
Beginnings of multiple monitor
...
Allocate the CRTCs from a bit mask to avoid the multiple monitor black
screen problem.
14 years ago
Kristian Høgsberg
58dc6dd3c5
compositor-x11: Remove unused variables
14 years ago
Kristian Høgsberg
d28ab36fe3
compositor-wayland: Ask for ES2 in the config
14 years ago
Benjamin Franzke
c649a92549
compositor: Remove drm.c, use shm.c for pointer images
14 years ago
Benjamin Franzke
2af7f10674
compositor: Remove wlsc_drm
14 years ago
Benjamin Franzke
84290d02ae
compositor-x11: Use an EGL Window Surface as output
14 years ago
Benjamin Franzke
be01456887
compositor-wayland: Use wayland-egl window surfaces
14 years ago
Benjamin Franzke
5b2cb6f911
compositor: Generate Framebuffer in the backends
14 years ago
Benjamin Franzke
1b765ffb8c
compositor: Add flags parameter to wlsc_output_init
...
Currently available flags:
- WL_OUTPUT_FLIPPED
14 years ago
Benjamin Franzke
faa0a9dfa9
compositor: Use eglBindWaylandDisplayWL
14 years ago
Benjamin Franzke
3b288afd1a
compositor-x11: Use x11 egl platform
14 years ago
Kristian Høgsberg
b2d71852fd
Split into a demo repository that holds the demo compositor and clients
14 years ago
Kristian Høgsberg
525e4c0bea
compositor: Clip repaint to the damage region
...
Drop glScissor, and just clip the surface against the repaint region and
render each rectangle in the resulting region.
14 years ago