Drew DeVault
8c0929cfb3
Fix backwards bit banging
2017-11-01 08:51:59 -04:00
Drew DeVault
c8f97a3a2c
Use surface matrix for software cursors
...
A similar change should probably be applied to hardware cursors, though
more complicated. Also, this doesn't actually fix the issue where the
cursor is too small when over a scale=2 surface. Apparently they don't
set their cursor scales to 2. Seems like a client bug? idk
2017-11-01 08:51:59 -04:00
Drew DeVault
a6930cd8ea
Handle output enter/leave correctly
2017-11-01 08:51:59 -04:00
Drew DeVault
9861add146
Send surface enter output events to clients
2017-11-01 08:50:33 -04:00
Drew DeVault
a7446792a1
Consider scale factor when rendering views
2017-11-01 08:44:07 -04:00
emersion
510ce27fb7
Re-enable hardware cursors
2017-11-01 11:01:18 +01:00
emersion
0beae99188
Apply output transformation to pointer events in Wayland backend
2017-11-01 11:00:27 +01:00
emersion
ec22fe7134
Make wlr_output_interface.enable optional
2017-10-31 15:19:55 +01:00
emersion
d2581eadbc
Assert mandatory impl fields in wlr_output_init
2017-10-31 15:08:45 +01:00
emersion
c97b5ac4ce
Fix output_cursor_render bounds check
2017-10-31 13:48:09 +01:00
emersion
9142def292
Do not render off-screen software cursors
2017-10-31 12:57:20 +01:00
emersion
ae9a46fc9b
Remove outdated TODOs, use wlr_surface_has_buffer
2017-10-31 12:30:57 +01:00
emersion
c3b09f73da
Fix cursor hotspot with rotated outputs on DRM backend
2017-10-31 12:30:57 +01:00
emersion
95566c6bdf
Transform cursor hotspot, fix wayland cursor hotspot
2017-10-31 12:30:56 +01:00
emersion
6656e25fd4
Transform cursor hotspot
2017-10-31 12:30:56 +01:00
emersion
1b6c729360
Add wlr_output_cursor
2017-10-31 12:30:03 +01:00
emersion
eea532911a
Send output current mode when changed
2017-10-23 21:03:00 +02:00
emersion
1cc8f21d8e
Cleanup wlr_gamma_control
2017-10-22 23:11:26 +02:00
emersion
e1d213fccd
Create globals only for enabled outputs in DRM backend
2017-10-22 22:21:23 +02:00
emersion
4952a633ca
Remove interface version checks
2017-10-22 11:18:27 +02:00
Drew DeVault
16f35ecbea
Merge branch 'master' into heghe/wl_list
2017-10-21 22:03:48 -04:00
Drew DeVault
169b68b17c
Rename remaining refs to wlr_list
2017-10-21 22:02:36 -04:00
Scott Anderson
37b8a096a9
Pass backend to render
2017-10-22 10:39:23 +13:00
Scott Anderson
822a9f65a4
Add pointer to backend inside wlr_output
2017-10-22 10:36:07 +13:00
Tony Crisci
eaed6b6d29
wl-output: send layout position
2017-10-20 07:29:01 -04:00
Heghedus Razvan
1d716241af
Replace list_t with wl_list in wlr_output
...
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
2017-10-20 11:46:09 +03:00
emersion
a7d7659a93
Fix render errors with gnome-terminal
2017-10-18 20:13:59 +02:00
Drew DeVault
62371a9974
Merge pull request #257 from emersion/fix-client-cursors
...
[WIP] Fix client cursors
2017-10-17 09:22:43 -04:00
emersion
786f4bdd4d
Disable hardware cursors for now
2017-10-17 00:04:33 +02:00
emersion
08720db01d
Release buffer in wlr_surface_flush_damage
2017-10-14 13:33:34 +02:00
emersion
6dc0517bb1
Fix software cursor when setting committed cursor surface
2017-10-14 13:24:29 +02:00
emersion
dd5114a514
Fix client cursors when software cursors are used
2017-10-14 12:44:25 +02:00
emersion
8fd4ae5de8
Fix cursor role name, fix segfault when surface->resource is NULL
2017-10-14 12:21:36 +02:00
emersion
19860c03f7
Better handling of hidden cursors in wayland backend, add TODOs
2017-10-12 13:25:29 +02:00
emersion
92daa790bb
Allow to update the cursor hotspot without its pixels
2017-10-12 09:40:51 +02:00
emersion
5c6a933890
Do not call wlr_surface_state_release_buffer anymore
2017-10-11 20:29:21 +02:00
Greg V
a5fe9aa736
Add FreeBSD compatibility
2017-10-11 00:07:21 +03:00
emersion
b1cba36aeb
Call frame_callback_list after rendering the cursor
2017-10-09 19:34:56 +02:00
emersion
8f7962ed44
Do not commit surface on set_cursor, breaks GTK+ apps
2017-10-09 15:45:46 +02:00
emersion
b76e64e7bf
Fix cleanup old cursor surface in wlr_output_set_cursor_surface
2017-10-09 15:23:58 +02:00
emersion
c4c948c5d9
Use attach x,y when computing hotspot, set sx,sy in surface_attach
2017-10-09 00:08:54 +02:00
emersion
008e1d596d
Fix cursor stride
2017-10-09 00:02:21 +02:00
emersion
c7a4346bfc
Hide cursor when surface == NULL
2017-10-08 23:39:38 +02:00
emersion
bceaee6eb7
Stop listening to cursor surface when manually setting cursor data
2017-10-08 23:29:04 +02:00
emersion
cebb202f7d
Set and check cursor surface role
2017-10-08 23:24:57 +02:00
emersion
8a77d1b6a2
Listen to cursor surface commit & destroy events
2017-10-08 23:11:59 +02:00
emersion
17354b630a
Read surface buffer to set output cursor
2017-10-08 22:30:31 +02:00
emersion
9b83caa658
Add wlr_output_set_cursor_surface
2017-10-08 21:21:06 +02:00
emersion
0ce3135304
Move read_pixels from output to renderer
2017-10-08 02:11:56 +02:00
emersion
a87f016017
Remove cairo dependency, write raw pixels
2017-10-07 19:01:11 +02:00
emersion
d4cc82f11a
Call glReadPixels right before swapping buffers
2017-10-07 16:22:03 +02:00
emersion
d0db6a80ab
Add post_frame event to wlr_output, use wlr_drm_plane_make_current in wlr_drm_output_read_pixels
2017-10-07 16:22:02 +02:00
emersion
35f9700251
First attempt to implement screenshooter
2017-10-07 16:22:02 +02:00
emersion
2ffa4f3fce
When output has no modes, send one anyway
2017-10-07 14:01:25 +02:00
Versus Void
641d08ce7e
Transform hotspot with cursor
...
Fix #188
2017-10-06 09:07:08 +03:00
emersion
6f98b5a337
Add set_gamma and get_gamma_size to wlr_output_impl
2017-09-06 18:53:08 +02:00
emersion
cd125377fc
Add wlr_output_{set_gamma,get_gamma_size}
2017-09-06 17:34:09 +02:00
Tony Crisci
d84deb0742
add wlr_output destroy event
2017-08-31 07:47:44 -04: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
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
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
2017-08-14 16:22:31 +02:00
Dominique Martinet
db77530a35
Fix output destory: impl->destroy must be called last + obvious double-free
2017-08-14 15:05:45 +02:00
Drew DeVault
2facf1df65
Fix software cursors
2017-08-14 08:43:17 -04:00
Drew DeVault
0de5eed048
Fix double free on wlr_outputs
2017-08-14 08:37:44 -04:00
Drew DeVault
41e735242d
Remove wlr_output_state, update backends
2017-08-13 11:38:03 -04:00
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
2017-08-11 19:17:03 +02:00
Drew DeVault
6569c2b626
Merge pull request #53 from nyorain/drm_buffer
...
Implement drm (egl) buffer attaching
2017-08-10 22:20:21 -04:00
Scott Anderson
5465621d0a
Update rotation matrix correctly. Fixes #60 .
2017-08-11 09:29:28 +12:00
nyorain
67369173aa
Implement drm (egl) buffer attaching
2017-08-10 10:59:58 +02:00
nyorain
e167f41fde
Rename wlr_surface -> wlr_texture; attach -> upload
2017-08-08 18:25:16 +02:00
Scott Anderson
afd058b754
Fix software cursor. Fixes #45
2017-08-08 20:22:26 +12:00
Scott Anderson
1db97a9af9
Updated DRM cursor rendering
2017-08-06 21:38:40 +12:00
Scott Anderson
aedfa27d3a
Clean up resources when plane is reassigned
2017-08-06 15:54:38 +12:00
nyorain
fdab81e1c9
Use meson build system
2017-08-05 22:34:24 +02:00
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.
2017-07-24 16:34:40 -04:00
Drew DeVault
8920b5d607
Merge branch 'wlcore'
2017-06-29 16:00:24 -04:00
Drew DeVault
f5b7bc033e
Add wlr_wl_compositor and remove wlr_wl_shm
2017-06-26 10:26:55 -04:00
Scott Anderson
0cd94f0cf0
Added software cursor fallback
2017-06-26 17:34:15 +12:00
Drew DeVault
168f0955ab
Add wl_output globals for wlr_outputs
2017-06-22 14:27:35 -04:00
Drew DeVault
bb16025318
Fix issues with projection on drm backend
2017-06-22 11:19:46 -04:00
Drew DeVault
f4453d104d
Reorganize wlr-common
2017-06-21 12:10:07 -04:00
Drew DeVault
fd91244e83
Update everyone to use new headers
2017-06-21 10:27:45 -04:00
Drew DeVault
b9d36c8149
Add dynamic output resizing for Wayland backend
...
This allows outputs to:
- Not support modesetting
- Resize themselves
2017-06-20 17:51:45 -04:00
Drew DeVault
7e038a6110
Add (broken) DRM hardware cursors
2017-06-16 15:38:34 -04:00
Drew DeVault
fc1dc1b5b0
Use constant VBO for quad, add matrix stuff
2017-06-07 21:35:07 -04:00
Drew DeVault
cda12a3eda
Add texture, use index buffer, tweak matricies
2017-06-07 11:06:14 -04:00
Scott Anderson
382f712792
Merge remote-tracking branch 'upstream/master' into rotation
2017-06-08 00:52:33 +12:00
Scott Anderson
632a7acb03
Filled out more wlr_output fields.
2017-06-08 00:39:40 +12:00
Scott Anderson
53dd622263
Provide user with transformation matrix
2017-06-07 16:43:57 +12:00
Drew DeVault
6f5c70ac69
Let backend track transform state
...
This will be necessary to provide it to clients via wl_output.
2017-06-06 11:48:30 -04:00
Drew DeVault
e2ee67125e
s/wayland.h/types.h/g
2017-05-31 16:24:32 -04:00
Drew DeVault
c7f6981d9c
Clean up outputs on exit
2017-05-31 16:17:04 -04:00
Drew DeVault
579909a368
Promote types to a standalone subproject
2017-05-31 15:43:13 -04:00