Tony Crisci
854a9381ca
improve collision detection algorithm
2017-08-17 21:05:13 -04:00
Tony Crisci
59a71f59b9
reconfigure output on resolution change
2017-08-17 21:05:13 -04:00
Tony Crisci
e0b409760d
fix output resolution callback
2017-08-17 21:05:13 -04:00
Tony Crisci
128f06405b
vt change bugfix
2017-08-17 21:05:13 -04:00
Tony Crisci
d9ebf0615a
add output resolution notify to example shared
2017-08-17 21:05:13 -04:00
Tony Crisci
5a9baf487e
add helper methods for intersection
2017-08-17 21:05:13 -04:00
Tony Crisci
dfb6a12036
layout-output example: only render if its on the output
2017-08-17 21:05:13 -04:00
Tony Crisci
2e9e237f9d
layout-output example: handle empty config
2017-08-17 21:05:13 -04:00
Tony Crisci
44181b57ac
Add wlr_output_layout implementation
...
An output layout consists of a mapping of outputs to their position in a global
coordinate system that usually cooresponds to the output position in physical
space in front of the user.
Add an example that allows configuration of an output layout and demonstrates
its boundaries with a bouncing image.
2017-08-17 21:05:13 -04:00
nyorain
edbaa7d6ac
Update keyboard modifiers in example compositor
2017-08-17 14:34:31 +02:00
nyorain
ad22b4874d
Fix wlr_seat; add to example compositor
2017-08-17 13:06:53 +02:00
Calvin Lee
901c14c409
Prevent alloc errors from crashing in `list_t`
...
This commit changes the `list_t` api so that alloc errors can be
detected and worked around. Also fixes errors not found in 5cc7342
2017-08-16 09:23:21 +02:00
Drew DeVault
19d6442f52
Merge pull request #91 from martinetd/move_wl_shell
...
Move wl_shell into wlroots
2017-08-15 17:39:18 -04:00
Drew DeVault
27c13d621d
Merge pull request #88 from 4e554c4c/alloc_crashing
...
Prevent alloc errors from crashing
2017-08-15 12:21:58 -04:00
Dominique Martinet
f9b55dfa95
Make wlr_wl_shell_create work like xdg
...
Also:
- rename wlr_xdg_shell_v6_init to create as that is what it does
- free wlr_xdg_shell on failure to create wl_global, the struct
is not initialized enough to call destroy at that point
2017-08-15 15:36:02 +02:00
Dominique Martinet
d49edc8243
wl_shell/compositor surface: do not check if it's in list before removing
2017-08-15 15:34:26 +02:00
Dominique Martinet
5dae8e1be8
example compositor: only iterate over wl_shell and xdg_shell surfaces
2017-08-15 15:34:26 +02:00
Dominique Martinet
f4e6b138fb
Move wl_shell into wlroots
2017-08-15 15:13:23 +02:00
Drew DeVault
f60b53c6e3
Change how surface matricies are calculated
2017-08-15 08:52:30 -04:00
Tony Crisci
e46ec57b43
implement surface sizing
2017-08-15 07:36:51 -04:00
Calvin Lee
5cc7342606
Prevent alloc errors from crashing
...
Resolves #76
2017-08-15 08:04:57 +02:00
Drew DeVault
4386816889
wlr_backend_init -> wlr_backend_start
...
Also renames create to init. We'll use create for anything that
allocates and init for anything that takes a pointer and initializes it.
2017-08-13 10:19:57 -04:00
Drew DeVault
d4b4bfb8bc
Fix #64
2017-08-13 08:26:32 -04:00
Dominique Martinet
de86965174
Use libinput_event_destroy/xkb_*_unref
...
Also sneak in a missing drmModeFreePlaneResources
2017-08-12 00:11:18 +02:00
Dominique Martinet
be3a0ad065
libinput backend: fill in handle_device_removed
...
And fix input_remove_notify accordingly
2017-08-12 00:11:18 +02:00
Dominique Martinet
1c7dd71208
WIP: example/shared.c free
...
Still missing something, the _remove functions are never called
2017-08-11 19:41:10 +02:00
Drew DeVault
62d8b252c0
Refactor meson and move xdg-shell into wlroots
2017-08-11 09:37:09 -04:00
Drew DeVault
3375381610
Fix segfault during xdg-shell cleanup
2017-08-10 22:24:24 -04:00
Drew DeVault
c24351681f
Refactor EGL handling
2017-08-10 22:15:37 -04:00
Drew DeVault
7095274a9e
Merge branch 'master' into drm_buffer
2017-08-10 13:19:39 -04:00
Drew DeVault
7da43ff8b0
Implement wlr_surface_flush_damage
2017-08-10 08:26:16 -04:00
nyorain
31d78ff497
Fix wlr_surface destruction bug
2017-08-10 12:42:35 +02:00
Tony Crisci
14654ecb77
implement compositor create region
...
Complete the implementation of wlr_region_create and put it in the compositor.
2017-08-10 05:59:43 -04:00
nyorain
1901c3e1b6
Fix example for updated gles
2017-08-10 11:03:58 +02:00
nyorain
67369173aa
Implement drm (egl) buffer attaching
2017-08-10 10:59:58 +02:00
Tony Crisci
8306f46dfb
implement surface frame
...
The surface frame callback lets a window know when it is a good time to show the
next frame if it is animating. In particular, this callback is used by
weston-simple-shm to throttle drawing.
2017-08-09 17:31:38 -04:00
Drew DeVault
bd2e9a7168
Style cleanup
2017-08-09 17:30:22 -04:00
Tony Crisci
5a7595af77
use generators for wayland protocol gen
2017-08-09 16:50:41 -04:00
Tony Crisci
26edd5fb9e
cleanup for style and formatting
2017-08-09 16:50:40 -04:00
Tony Crisci
816a7f8257
add xdg shell destructors
2017-08-09 16:50:07 -04:00
Tony Crisci
bdfe9faf58
Add todo for destroy_xdg_shell_surface
...
This free was causing crashes so remove the implementation and make a note to
do it later.
2017-08-09 12:31:16 -04:00
Tony Crisci
a6c7d8d14f
send configure event after creating toplevel
...
The xdg shell protocol requires us to send a configure in order for the client
to start attaching buffers.
2017-08-09 12:31:16 -04:00
Tony Crisci
5add87cac6
rename wlr_surface to wlr_texture
2017-08-09 12:31:16 -04:00
Tony Crisci
15885ab54a
implement xdg toplevel stubs
2017-08-09 12:31:16 -04:00
Tony Crisci
c3f15ea284
Add xdg shell stubs
2017-08-09 12:31:16 -04:00
Tony Crisci
347707c962
Add shell surface stubs
...
Add stubs for the wl_shell_surface interface.
Implement wl_shell_get_shell_surface by creating the shell surface and settings
its implementation to these stubs.
2017-08-09 12:30:11 -04:00
nyorain
cf9ee6ce3f
Move wlr_surface into wlr
2017-08-09 17:27:12 +02:00
nyorain
8473c3955c
Add first wlr_surface example implementation
2017-08-09 17:26:05 +02:00
Drew DeVault
ba87585bbe
Merge pull request #48 from nyorain/wlr_texture
...
Rename wlr_surface -> wlr_texture; attach -> upload
2017-08-08 13:12:16 -04:00
nyorain
e167f41fde
Rename wlr_surface -> wlr_texture; attach -> upload
2017-08-08 18:25:16 +02:00
Drew DeVault
9383aaf89e
Accomodate for hotspot in cursor position
2017-08-08 11:44:44 -04:00
Drew DeVault
7486263f7e
Add xcursor sublibrary
2017-08-07 21:13:04 -04:00
Scott Anderson
2f8b5c4448
More cleanups
2017-08-06 15:53:41 +12:00
Drew DeVault
5bf61ca7ed
Check for multi backend before using it
2017-08-05 23:08:35 -04:00
Scott Anderson
4d4da18437
Fixed VT switching
2017-08-06 13:37:49 +12:00
Scott Anderson
cb4d50e22c
Changed header paths.
2017-08-06 13:25:26 +12:00
Scott Anderson
ae4478e17f
Changed ownership of wlr_session to the multi backend.
...
Currently breaks VT switching for examples.
2017-08-06 13:25:26 +12:00
nyorain
fdab81e1c9
Use meson build system
2017-08-05 22:34:24 +02:00
Drew DeVault
7c393d5143
Missed a variable
2017-08-04 16:44:45 -04:00
Drew DeVault
95653c0bf7
Minor nitpicking in wl_compositor
2017-08-04 16:26:21 -04:00
Tony Crisci
effea557bb
Implement destroying surfaces
...
Add a signal for wlr_surface destruction on the wlr_surface that compositors
can listen to to remove the surface from their state.
Implement a listener for this in the example wl_compositor to remove the
surface from its internal list of surfaces.
Destroy the surface in the compositor destroy_surface callback given when the
surface resource was created.
Add a reference to the surface resource to the wlr_surface so a compositor can
find it in its list of resources upon wlr_resource destruction.
2017-08-04 11:53:55 -04:00
Tony Crisci
6610aa7ca7
Implement shm buffer surface attach interface
...
Implement surface_attach method. This is called when a client attaches an shm
buffer with wl_surface_attach().
Implement the GLES2 interface for attaching shm buffers. This creates an opengl
texture with the shm buffer contents for the surface.
This commit also includes some working code to render the surfaces onto the
screen for demonstration purposes.
2017-08-04 11:41:13 -04:00
Tony Crisci
555914a13b
Add surface interface stubs in compositor example
...
Add the wayland surface interface to the example compositor.
Implement the create_surface method to create a new wlr surface from the
wayland surface and add the interface.
2017-08-03 10:46:08 -04:00
Tony Crisci
aebe5ba48c
Use correct pixel format enum in touch example
...
Fix a call to `wlr_surface_attach_pixels()` in the main method of the touch
example to use the correct enum for this method (wayland instead of gl).
2017-07-31 14:54:00 -04:00
Drew DeVault
b08aa9fd35
Revert "Merge pull request #27 from ascent12/meson"
...
This reverts commit 85805da021
, reversing
changes made to 8189c64d7f
.
2017-07-11 22:16:56 -04:00
Drew DeVault
7b9c330bc5
Revert "Fixed linking error"
...
This reverts commit c81324bd0b
.
2017-07-11 22:16:52 -04:00
Scott Anderson
c81324bd0b
Fixed linking error
2017-07-12 13:46:47 +12:00
Scott Anderson
e54b1eded4
Small linking fix
2017-07-11 12:24:43 +12:00
Scott Anderson
a2ba226ba3
Use subdir
2017-07-11 09:56:54 +12:00
Scott Anderson
924bf0f669
Changed build system to meson
2017-07-11 00:28:56 +12:00
Scott Anderson
8189c64d7f
Fixed that warnings that showed up with optimisations.
2017-07-11 00:14:55 +12:00
Scott Anderson
ceef12cb5a
Exit cleanly if we cannot open Wayland socket.
2017-07-10 13:46:15 +12:00
Drew DeVault
8920b5d607
Merge branch 'wlcore'
2017-06-29 16:00:24 -04:00
Drew DeVault
486ec5953c
Add shim implementations of wl_{compositor,shell}
...
To example compositor
2017-06-28 18:51:58 -04:00
Drew DeVault
28736c5787
Move example -> examples
...
And the compositor example into its own directory
2017-06-28 18:23:49 -04:00