Drew DeVault
dd4ebb5805
Merge pull request #104 from martinetd/init_output_scale
...
output: default scale to 1
2017-08-18 10:07:35 -04:00
Dominique Martinet
978f935947
output: default scale to 1
...
This prevents us from telling application our scale is 0, when it has no
reason to be.
2017-08-18 16:01:40 +02:00
Drew DeVault
1873951f0e
Merge pull request #97 from acrisci/feature/output-layout
...
Add wlr_output_layout implementation
2017-08-17 21:11:33 -04: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
420bd3e422
bugfix: correctly get the output_layout
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
10eee58d2d
Fix surface buffer uploading
2017-08-17 17:50:09 +02:00
Drew DeVault
18f1538108
Merge pull request #99 from nyorain/wlr_seat2
...
wlr_seat
2017-08-17 08:42:24 -04:00
nyorain
edbaa7d6ac
Update keyboard modifiers in example compositor
2017-08-17 14:34:31 +02:00
Drew DeVault
a616437c83
Update IRC channel in CONTRIBUTING.md
2017-08-17 08:26:43 -04:00
nyorain
2db04c369e
Fix style issues in wlr_seat
2017-08-17 14:14:31 +02:00
Drew DeVault
30b676e3a8
Merge pull request #98 from martinetd/wayland_backend_xdg
...
Wayland backend xdg
2017-08-17 08:07:29 -04:00
nyorain
ad22b4874d
Fix wlr_seat; add to example compositor
2017-08-17 13:06:53 +02:00
Drew DeVault
af5db7a44c
Initial pass on wlr_seat
2017-08-17 12:57:04 +02:00
Dominique Martinet
e2e149784b
wayland backend: fix xdg-shell for weston
...
- xdg toplevel configure can be called with 0 width/height,
in that case we are free to do as we like (so do nothing)
- need a display roundtrip after everything is setup but before
we start attaching buffers to the surface
2017-08-17 10:36:43 +02:00
Dominique Martinet
3377e5e4f2
wayland backend: fix xdg-shell for gnome
...
Calling wl_surface_commit after setting up the xdg_toplevel is
apparently good enough for them.
Still missing something for weston.
2017-08-17 10:24:27 +02:00
Dominique Martinet
fb05923eaa
wayland backend: Fix shell title/app_id to wlroots
2017-08-17 10:24:27 +02:00
Dominique Martinet
4f3d21c3ff
wayland output: add error handling for xdg shell
...
Note that this does not go on to the next backend, because
attempt_wl_backend does not check if we have any output created.
We cannot test simply because (right now) a run of our examples will go
in this function twice, the first of which will (rightly?) return no
display but needs to return backend creation success.
2017-08-17 10:24:27 +02:00
Dominique Martinet
577d2f6fcd
wayland backend: switch to xdg shell
...
Closes #72 and #96 .
2017-08-17 10:24:27 +02:00
Drew DeVault
e7fa4f12e1
Fix DRM problem introduced in 901c14c
2017-08-16 17:36:57 -04:00
Drew DeVault
beb84940cf
Improve no device detection support
2017-08-16 07:24:46 -04:00
Drew DeVault
3ac10a81bd
Merge pull request #94 from martinetd/libinput_no_device
...
libinput: fail if no input found on init
2017-08-16 07:22:36 -04:00
Drew DeVault
2164adc513
Merge pull request #95 from 4e554c4c/list_api
...
Prevent alloc errors from crashing in `list_t`
2017-08-16 07:21:27 -04: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
Dominique Martinet
880c239657
libinput: fail if no input found on init
...
This runs through events pending at init on initialization so we can
tell if some devices are available.
Note that with the way wlr_device_lists is managed, this checks that
there is at least one device we handle - it doesn't have to be a
keyboard, but there is at least a mouse or tablet_pad or something
that we care about.
Instead of failing inconditionally it might be better to leave the
decision to the user, e.g. add a "backend_has_devices" function to
call later.
(Tested by moving /dev/input off)
Fixes #24 .
2017-08-16 09:18:12 +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
dca3f630dd
Fix wlr_wl/xdg_shell_destroy segfault
...
- Implement xdg_shell_destroy and use it at the right place
(impl->destroy is never called)
- Remove wl_global_destroy for now, something is missing with the
display/registry_resource_list
2017-08-15 15:52:20 +02: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
Drew DeVault
09faf4ff64
Merge pull request #83 from acrisci/feature/buffer-damage2
...
Buffer damage and scaling (attempt 2)
2017-08-15 08:31:30 -04:00
Tony Crisci
d5f98dbf61
refactor getting surface size into a function
2017-08-15 08:22:22 -04:00
Tony Crisci
4f2b1cc930
implement get_buffer_size for egl buffers
2017-08-15 07:58:07 -04:00
Tony Crisci
2bf2dbb2bd
formatting fixup
2017-08-15 07:41:25 -04:00
Tony Crisci
5b1ce84350
implement buffer transform
2017-08-15 07:36:51 -04:00
Tony Crisci
84c6dbd58d
remove unused dimension from buffer calculations
2017-08-15 07:36:51 -04:00
Tony Crisci
e46ec57b43
implement surface sizing
2017-08-15 07:36:51 -04:00
Tony Crisci
b49650b555
initialize buffer damage before conversion
2017-08-15 07:36:50 -04:00
Tony Crisci
d87c58416b
clip surface damage to surface size
2017-08-15 07:36:50 -04:00