Drew DeVault
d558745633
Handle tablet motion in example compositor
2017-09-21 18:51:33 -04:00
Tony Crisci
446adda1a3
compositor.c: implement cursor motion absolute
2017-09-21 17:51:31 -04:00
Tony Crisci
91323a9b9b
compositor.c: add guards for unconfigured surfaces
2017-09-21 14:05:14 -04:00
Tony Crisci
675a71dce7
compositor.c: determine xdg position by window geom
2017-09-21 13:48:46 -04:00
Tony Crisci
7a3edf6e62
use double for cursor coordinates
2017-09-21 11:38:04 -04:00
Tony Crisci
8b74450b39
wlr_seat: pointer events
2017-09-20 19:43:49 -04:00
Tony Crisci
b01909ae15
compositor.c: xdg-surface layout position
...
Add data structures to compositor.c xdg-surface implementation that allows them
to be rendered in the correct position in the layout, spanning outputs if
necessary.
2017-09-19 14:47:28 -04:00
Tony Crisci
94f4f1878d
xdg-surface-v6: implement ping
2017-09-16 12:35:49 -04:00
Tony Crisci
c912de6390
compositor.c: implement xdg-toplevel-v6 request events
2017-09-16 09:23:05 -04:00
Tony Crisci
27161a673f
xdg-shell new surface and ack configure events
2017-09-15 08:53:08 -04:00
Tony Crisci
9d2dc8447a
use wlr_surface on shell struct and listen to events
2017-09-13 07:57:16 -04:00
Tony Crisci
31bd8e089b
compositor.c: working pointer
2017-09-07 08:13:37 -04:00
Tony Crisci
9d9aaad020
compositor.c: fix formatting
2017-09-07 08:13:37 -04:00
emersion
1b588e7c1f
Add gamma_control skeleton
2017-09-06 14:48:27 +02:00
Drew DeVault
586ae674ae
Merge pull request #136 from acrisci/bug/rename-output-layout-create
...
Rename wlr_output_layout_init()
2017-09-06 08:29:55 +09:00
Tony Crisci
e733b0e643
Rename wlr_output_layout_init()
...
Rename wlr_output_layout_init() to wlr_output_layout_create() to be consistent
with the rest of the api.
2017-09-05 17:53:29 -04:00
Tony Crisci
500bcc49c4
move device configuration to config.h
2017-09-05 17:18:37 -04:00
Tony Crisci
0cdd7fac02
pointer.c: refactor device configuration
2017-09-05 08:24:53 -04:00
Tony Crisci
6904ed8bd9
bugfix: warp cursor to current position on output add
2017-09-05 07:52:17 -04:00
Tony Crisci
6d26fda57c
use monotonic clock time for animations
2017-08-31 23:43:02 -04:00
Tony Crisci
35eee80f9b
remove unused outputs list in output-layout.c
2017-08-31 07:47:44 -04:00
Tony Crisci
fa3d4ecc84
fix layout hotplugging issue in output-layout.c
2017-08-31 07:47:44 -04:00
Tony Crisci
f8e4ba3f5f
cleanup output-layout example
2017-08-31 07:47:44 -04:00
Tony Crisci
40bd6bcc43
implement output layout auto configuration
2017-08-31 07:47:44 -04:00
Tony Crisci
368f74e4df
Refactor meson build files
...
Use tabs for indentation and break up function calls over 80 col.
2017-08-30 14:30:47 -04:00
Tony Crisci
6699024b44
handle empty config file
2017-08-29 12:43:33 -04:00
Tony Crisci
9b65d0b3f0
refactor and rename wlr_geometry to wlr_box
2017-08-29 12:36:39 -04:00
Tony Crisci
a51b76083e
rename wlr_cursor_init to wlr_cursor_create
2017-08-29 12:36:39 -04:00
Tony Crisci
34f4a7b972
pointer.c: fix formatting
2017-08-29 12:36:39 -04:00
Tony Crisci
1193dd564b
config fixes
2017-08-29 12:36:36 -04:00
Drew DeVault
30611894f2
Implement tablet_tool support in pointer example
2017-08-28 22:12:35 -04:00
Tony Crisci
4fbe322fa6
fix memory errors
2017-08-28 11:07:54 -04:00
Tony Crisci
5c845f14ed
handle input device destroy
2017-08-28 10:29:53 -04:00
Tony Crisci
df0ee7f25f
implement tablet tool devices
2017-08-28 10:23:14 -04:00
Tony Crisci
5e06d61e42
implement touch up and touch down
2017-08-27 17:35:12 -04:00
Tony Crisci
ed126b0881
add touch events
2017-08-27 11:34:25 -04:00
Tony Crisci
dc7e32552d
config: fix uninitialized variables and accept trailing for geom
2017-08-26 11:53:16 -04:00
Tony Crisci
0a97b68278
implement cursor and device geometry mapping
2017-08-26 08:32:11 -04:00
Tony Crisci
d0cf8d0d01
add device configuration
2017-08-26 08:32:11 -04:00
Tony Crisci
699d489f93
add cursor configuration
2017-08-26 08:32:11 -04:00
Tony Crisci
b3a43e2261
add configuration file
2017-08-26 08:32:11 -04:00
Tony Crisci
54f87146c3
refactor example config and add ini.c
2017-08-26 08:32:11 -04:00
Tony Crisci
98f4cdfccb
implement wlr_cursor_map_input_to_output
2017-08-26 08:32:11 -04:00
Tony Crisci
a4810203cc
change output layout coords to double type
2017-08-26 08:32:11 -04:00
Tony Crisci
e3d47376dc
add wlr_cursor basic implementation
2017-08-26 08:32:11 -04:00
Dominique Martinet
1458a95e65
example compositor: loop through xwayland surfaces
2017-08-23 22:03:49 +02:00
Dominique Martinet
eb5b9cc6da
xwayland: move & split internal header file
2017-08-23 22:03:49 +02:00
Dominique Martinet
b2bab1af5c
xwayland: split xwm structure out, initial xwm.c
2017-08-23 22:03:49 +02:00
Dominique Martinet
60451521bd
start xwayland in example compositor
2017-08-23 22:03:49 +02:00
Dominique Martinet
2948f53721
example compositor: handle keyboard after we're done with init
...
the libinput backend does wl_display roundtrips, during which there is a
small window where keystrokes can be handled before the rest of the example
compositor is ready.
Setting the callback later ensures we're not called at this point
2017-08-20 14:19:30 +02:00
Dominique Martinet
1ca08dc4cb
wlr_compositor: change _init/finish to _create/destroy
2017-08-19 23:17:39 +02:00
Dominique Martinet
4110788159
move wl_compositor into wlroots as wlr_compositor
2017-08-19 21:56:51 +02:00
Dominique Martinet
5885679e33
examples: separate compositor_fini from run
...
compositor_fini destroys the display, but it is an error to destroy it
before e.g. wlr_seat that references it.
This lets us order destroy calls properly, following first-in-last-out
logic.
2017-08-19 09:31:06 +02:00
Dominique Martinet
f24b3df980
wlr renderer/texture: rename init to create when it does alloc
2017-08-19 08:33:31 +02:00
Tony Crisci
f03be94309
rename wlr_cursor to wlr_xcursor
...
This is for the implementation of another type that should be called wlr_cursor.
2017-08-18 19:48:55 -04:00
Tony Crisci
e3edb08126
bring output configuration into shared.h
2017-08-18 19:31:16 -04:00
Tony Crisci
769549c652
Refactor example output config
...
Put all the config parsing into shared.h so it is shared among the examples.
2017-08-18 17:44:10 -04:00
nyorain
f2a9098691
Fix wlr_data_device_manager
2017-08-18 19:58:36 +02:00
nyorain
86314caa5b
Implement wlr_data_{source,device,device_manager}
2017-08-18 18:56:21 +02:00
Drew DeVault
3138c5ddf0
Clean up wlr_output_layout
2017-08-17 21:06:28 -04:00
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