Tony Crisci
3a04f5b2db
consistently name surface state variables
2017-09-30 08:55:40 -04:00
Tony Crisci
693e30dff7
refactor surface commit
2017-09-30 08:55:40 -04:00
Tony Crisci
86bc4840a0
subsurface commit and render
2017-09-30 08:55:40 -04:00
Tony Crisci
5cbb4f5ca0
refactor surface commit
2017-09-30 08:55:40 -04:00
Tony Crisci
cb2d05e83b
subsurface sync and position
2017-09-30 08:55:40 -04:00
Tony Crisci
7f39578824
cleanup wlr_surface.[ch]
2017-09-30 08:55:40 -04:00
Tony Crisci
68eeebc647
subsurface implementation stubs
2017-09-30 08:55:40 -04:00
Tony Crisci
b2c71287f2
set toplevel role on wlr_surface
2017-09-13 07:57:14 -04:00
Tony Crisci
74e9578889
add surface destroy signal
2017-09-11 13:01:53 -04:00
Dominique Martinet
ea906ea3e2
wlr surface/shell types: add message on creation
...
Not sure if we really want to keep that, would be helpful to get more
logging levels at some point
2017-08-23 22:03:49 +02:00
Dominique Martinet
84c0c87a5d
wlr_surface: change update_size/damage to bool
2017-08-19 14:37:57 +02:00
Dominique Martinet
4da976bfad
wlr_surface: small refactoring
...
- split surface damage and buffer damage
- the pending buffers are always valid, so can be 'fini'shed
- consider opaque buffer and input buffer in commit, just to free
- only update size if scale/transform/buffer changed
2017-08-19 09:31:06 +02:00
Dominique Martinet
03b29eb32c
wlr region/surface: explicitely select interface fields
2017-08-19 09:31:06 +02:00
Dominique Martinet
fc1a851415
wlr_surface: clear/fini buffers when appropriate
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
Dominique Martinet
bb3b9d0156
wlr_surface: use post_event instead of queue
...
This fixes not sending anything back to the client if the only event
it's waiting for is a buffer release, and nothing else is in the pipe.
Workaround for #102 - there probably is a better solution as weston and
wlc do not need to use post_event here.
2017-08-18 19:38:11 +02:00
Tony Crisci
c6631e2140
Fix wild pointer to buffer
...
After the buffer is released from the release event, it should no longer be
accessed.
Fixes a GTK crash.
2017-08-18 12:41:42 -04:00
nyorain
10eee58d2d
Fix surface buffer uploading
2017-08-17 17:50:09 +02: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
Drew DeVault
f60b53c6e3
Change how surface matricies are calculated
2017-08-15 08:52:30 -04:00
Tony Crisci
d5f98dbf61
refactor getting surface size into a function
2017-08-15 08:22:22 -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
Tony Crisci
72a33b736f
implement texture get buffer size
2017-08-15 07:36:50 -04:00
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.
2017-08-15 07:36:50 -04:00
Tony Crisci
e22e443717
fix formatting in surface_damage
2017-08-15 07:36:50 -04:00
Tony Crisci
0b3d56384f
implement surface_damage_buffer
2017-08-15 07:36:17 -04:00
Calvin Lee
5cc7342606
Prevent alloc errors from crashing
...
Resolves #76
2017-08-15 08:04:57 +02:00
nyorain
f998bb8299
Fix style issues
2017-08-14 17:09:56 +02: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
Tony Crisci
73adb49f15
release buffer on surface flush when no damage
2017-08-10 11:12:33 -04:00
Drew DeVault
888986b038
Remove excess logging
2017-08-10 08:36:45 -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
nyorain
67369173aa
Implement drm (egl) buffer attaching
2017-08-10 10:59:58 +02:00
Drew DeVault
750d0ad458
Flesh out wlr_surface state lifecycle a bit
...
Sprinked some TODOs around for future work
2017-08-09 23:34:50 -04:00
Drew DeVault
4de930542f
Implement partial texture uploads
2017-08-09 22:17:40 -04:00
Drew DeVault
4dfc6460f3
Style fixes
2017-08-09 17:52:02 -04: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
Tony Crisci
87fe13a9fa
release shm buffer after uploading
2017-08-09 17:31:38 -04:00
nyorain
fb58307a50
Fix surface destruction
2017-08-09 17:27:12 +02:00
nyorain
cf9ee6ce3f
Move wlr_surface into wlr
2017-08-09 17:27:12 +02:00