Drew DeVault
3138c5ddf0
Clean up wlr_output_layout
7 years ago
Tony Crisci
5a9baf487e
add helper methods for intersection
7 years ago
Tony Crisci
420bd3e422
bugfix: correctly get the output_layout
7 years ago
Tony Crisci
2e9e237f9d
layout-output example: handle empty config
7 years ago
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.
7 years ago
nyorain
10eee58d2d
Fix surface buffer uploading
7 years ago
nyorain
2db04c369e
Fix style issues in wlr_seat
7 years ago
nyorain
ad22b4874d
Fix wlr_seat; add to example compositor
7 years ago
Drew DeVault
af5db7a44c
Initial pass on wlr_seat
7 years ago
Drew DeVault
19d6442f52
Merge pull request #91 from martinetd/move_wl_shell
...
Move wl_shell into wlroots
7 years ago
Drew DeVault
27c13d621d
Merge pull request #88 from 4e554c4c/alloc_crashing
...
Prevent alloc errors from crashing
7 years ago
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
7 years ago
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
7 years ago
Dominique Martinet
d49edc8243
wl_shell/compositor surface: do not check if it's in list before removing
7 years ago
Dominique Martinet
5dae8e1be8
example compositor: only iterate over wl_shell and xdg_shell surfaces
7 years ago
Dominique Martinet
f4e6b138fb
Move wl_shell into wlroots
7 years ago
Drew DeVault
f60b53c6e3
Change how surface matricies are calculated
7 years ago
Tony Crisci
d5f98dbf61
refactor getting surface size into a function
7 years ago
Tony Crisci
2bf2dbb2bd
formatting fixup
7 years ago
Tony Crisci
5b1ce84350
implement buffer transform
7 years ago
Tony Crisci
84c6dbd58d
remove unused dimension from buffer calculations
7 years ago
Tony Crisci
e46ec57b43
implement surface sizing
7 years ago
Tony Crisci
b49650b555
initialize buffer damage before conversion
7 years ago
Tony Crisci
d87c58416b
clip surface damage to surface size
7 years ago
Tony Crisci
72a33b736f
implement texture get buffer size
7 years ago
Tony Crisci
f0f190bfa5
implement buffer scale
...
Keep track of the scale of the buffer set by surface.set_buffer_scale.
Calculate the height and width of the texture from the buffer depending on the
scale when it is attached.
Use buffer damage to determine the damage of the buffer when flushing damage.
Convert surface damage to buffer damage and union to the surface buffer_damage
prior to flushing damage.
7 years ago
Tony Crisci
e22e443717
fix formatting in surface_damage
7 years ago
Tony Crisci
0b3d56384f
implement surface_damage_buffer
7 years ago
nyorain
7d0bf9a1a7
Simplify tablet pad destruction
7 years ago
Calvin Lee
5cc7342606
Prevent alloc errors from crashing
...
Resolves #76
7 years ago
nyorain
aa20634309
Simplify input device destruction code
7 years ago
nyorain
f998bb8299
Fix style issues
7 years ago
Dominique Martinet
4bbf718e7d
impl->destroy cleanup:
...
- remove trivial destroy() function
- make sure we check impl and impl->destroy before calling
- always call free if not implemented
7 years ago
Dominique Martinet
ba20d5b3ca
Refactor out wlr_touch_state
7 years ago
Dominique Martinet
bd67849c03
Refactor out wlr_tablet_tool_state
7 years ago
Dominique Martinet
a289940bff
Refactor out wlr_tablet_pad_state
7 years ago
Dominique Martinet
53e7bebd23
Refactor out wlr_pointer_state
7 years ago
Dominique Martinet
0a3246ad97
Refactor out wlr_keyboard_state
7 years ago
Dominique Martinet
e6ad67911b
Refactor out wlr_input_device_state
7 years ago
Dominique Martinet
db77530a35
Fix output destory: impl->destroy must be called last + obvious double-free
7 years ago
Drew DeVault
2facf1df65
Fix software cursors
7 years ago
Drew DeVault
0de5eed048
Fix double free on wlr_outputs
7 years ago
Drew DeVault
41e735242d
Remove wlr_output_state, update backends
7 years ago
Drew DeVault
d4b4bfb8bc
Fix #64
7 years ago
Dominique Martinet
0354aaeff2
Complete a few destroy functions
...
This adds missing free calls for:
- drm outputs
- libinput backend in general
- final udev free
- output mode state
7 years ago
Drew DeVault
62d8b252c0
Refactor meson and move xdg-shell into wlroots
7 years ago
Drew DeVault
6569c2b626
Merge pull request #53 from nyorain/drm_buffer
...
Implement drm (egl) buffer attaching
7 years ago
Drew DeVault
c24351681f
Refactor EGL handling
7 years ago
Scott Anderson
5465621d0a
Update rotation matrix correctly. Fixes #60 .
7 years ago
Drew DeVault
7095274a9e
Merge branch 'master' into drm_buffer
7 years ago
Tony Crisci
73adb49f15
release buffer on surface flush when no damage
7 years ago
Drew DeVault
888986b038
Remove excess logging
7 years ago
Drew DeVault
7da43ff8b0
Implement wlr_surface_flush_damage
7 years ago
nyorain
31d78ff497
Fix wlr_surface destruction bug
7 years ago
Tony Crisci
14654ecb77
implement compositor create region
...
Complete the implementation of wlr_region_create and put it in the compositor.
7 years ago
nyorain
67369173aa
Implement drm (egl) buffer attaching
7 years ago
Drew DeVault
750d0ad458
Flesh out wlr_surface state lifecycle a bit
...
Sprinked some TODOs around for future work
7 years ago
Drew DeVault
4de930542f
Implement partial texture uploads
7 years ago
Drew DeVault
4dfc6460f3
Style fixes
7 years ago
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.
7 years ago
Tony Crisci
87fe13a9fa
release shm buffer after uploading
7 years ago
nyorain
fb58307a50
Fix surface destruction
7 years ago
nyorain
cf9ee6ce3f
Move wlr_surface into wlr
7 years ago
nyorain
1bea754521
Implement wlr_region using pixman
7 years ago
nyorain
e167f41fde
Rename wlr_surface -> wlr_texture; attach -> upload
7 years ago
Scott Anderson
afd058b754
Fix software cursor. Fixes #45
7 years ago
Scott Anderson
1db97a9af9
Updated DRM cursor rendering
7 years ago
Scott Anderson
aedfa27d3a
Clean up resources when plane is reassigned
7 years ago
nyorain
fdab81e1c9
Use meson build system
7 years ago
Tony Crisci
a43016b8e2
bugfix: fix cursor software rendering fallback
...
wlr_surface_attach_pixels() expects a wl_shm_format but a GL format was
given. This caused a bug where software rendering of the cursor would
fail when no pixel format can be found.
7 years ago
Drew DeVault
b08aa9fd35
Revert "Merge pull request #27 from ascent12/meson"
...
This reverts commit 85805da021
, reversing
changes made to 8189c64d7f
.
7 years ago
Scott Anderson
a2ba226ba3
Use subdir
7 years ago
Scott Anderson
924bf0f669
Changed build system to meson
8 years ago
Drew DeVault
8920b5d607
Merge branch 'wlcore'
8 years ago
Drew DeVault
f5b7bc033e
Add wlr_wl_compositor and remove wlr_wl_shm
8 years ago
Scott Anderson
0cd94f0cf0
Added software cursor fallback
8 years ago
Drew DeVault
168f0955ab
Add wl_output globals for wlr_outputs
8 years ago
Drew DeVault
bb16025318
Fix issues with projection on drm backend
8 years ago
Drew DeVault
f4453d104d
Reorganize wlr-common
8 years ago
Drew DeVault
fd91244e83
Update everyone to use new headers
8 years ago
Drew DeVault
b9d36c8149
Add dynamic output resizing for Wayland backend
...
This allows outputs to:
- Not support modesetting
- Resize themselves
8 years ago
Drew DeVault
632a04f1b7
Implement keyboard LEDs
8 years ago
Drew DeVault
ecb04afcad
Implement tablet pads
8 years ago
Drew DeVault
7e038a6110
Add (broken) DRM hardware cursors
8 years ago
Drew DeVault
4a9966b1a4
Implement wlr_tablet_tool
8 years ago
Drew DeVault
3f24f8a1be
Flesh out touch events and add demo
8 years ago
Drew DeVault
d6905f86cb
Allocate wlr_touch devices
8 years ago
Drew DeVault
a63230e59c
Implement libinput wlr_pointer
8 years ago
Drew DeVault
5dd96c0772
Incorporate XKBCommon into example
8 years ago
Drew DeVault
7a5f35b5bb
Reassign ownership of libinput handle
8 years ago
Drew DeVault
0e75d157f5
Initialize keyboards from libinput
8 years ago
Drew DeVault
fc1dc1b5b0
Use constant VBO for quad, add matrix stuff
8 years ago
Drew DeVault
cda12a3eda
Add texture, use index buffer, tweak matricies
8 years ago
Scott Anderson
382f712792
Merge remote-tracking branch 'upstream/master' into rotation
8 years ago
Scott Anderson
632a7acb03
Filled out more wlr_output fields.
8 years ago
Scott Anderson
53dd622263
Provide user with transformation matrix
8 years ago
Drew DeVault
6f5c70ac69
Let backend track transform state
...
This will be necessary to provide it to clients via wl_output.
8 years ago
Drew DeVault
e2ee67125e
s/wayland.h/types.h/g
8 years ago
Drew DeVault
c7f6981d9c
Clean up outputs on exit
8 years ago
Drew DeVault
579909a368
Promote types to a standalone subproject
8 years ago