Commit Graph

233 Commits

Author SHA1 Message Date
Drew DeVault 2f6cfe4057 Fix software cursors on scaled outputs
There was an issue where it would only work within the boundaries of the
unscaled resolution.
2017-11-04 11:47:34 -04:00
Dominique Martinet 43cd3c7aea Indentation fix
Some space sneaked in. tabtabtab.
2017-11-01 20:14:52 +01:00
emersion 60c018c017
Fix hidden software cursors, fix cursor transformations on DRM backend 2017-11-01 14:25:41 +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 95566c6bdf
Transform cursor hotspot, fix wayland cursor hotspot 2017-10-31 12:30:56 +01:00
Tony Crisci 875a5b446f remove time usec 2017-10-30 15:43:06 -04:00
Tony Crisci a224e74fad refactor input time_sec to time_msec 2017-10-30 06:40:06 -04:00
emersion eea532911a
Send output current mode when changed 2017-10-23 21:03:00 +02:00
Drew DeVault 16f35ecbea Merge branch 'master' into heghe/wl_list 2017-10-21 22:03:48 -04:00
Scott Anderson 822a9f65a4 Add pointer to backend inside wlr_output 2017-10-22 10:36:07 +13:00
Scott Anderson 9b984253e2 Move egl.h to render/egl.h 2017-10-22 10:36:07 +13:00
Heghedus Razvan d3f0878d71 Replace list_t with wl_list in wlr_wl_backend
Now wlr_backend->outputs is a list of wlr_wl_backend_output instead of
wlr_output.

Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
2017-10-20 19:44:59 +03:00
emersion 8c5a110d4c
Fix hidden cursor on wayland backend 2017-10-18 19:14:16 +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 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
Greg V a5fe9aa736 Add FreeBSD compatibility 2017-10-11 00:07:21 +03:00
emersion 9b83caa658
Add wlr_output_set_cursor_surface 2017-10-08 21:21:06 +02:00
Drew DeVault 08ccc7f653 Merge pull request #221 from versusvoid/wayland-xkb_state_update_mask
Use xkb_state_update_mask() with Wayland backend
2017-10-06 15:16:10 -04:00
Versus Void 568b270cdf Use xkb_state_update_mask() with Wayland backend
Fix #158
2017-10-06 22:02:29 +00:00
Versus Void 641d08ce7e Transform hotspot with cursor
Fix #188
2017-10-06 09:07:08 +03:00
Scott Anderson 517ba0bc16 Change egl_get_config to always use visual id 2017-09-29 16:15:09 +13:00
Drew DeVault 61e451ea1b Move keyboard logic to wlr_{keyboard,seat} 2017-09-24 14:12:56 -04:00
Drew DeVault 0699aa62d8 Initial pass on roots_input 2017-09-23 10:13:05 -04:00
Drew DeVault b6d7c3ed8e Initialize display, backend; add frame handling 2017-09-23 00:30:39 -04:00
Drew DeVault 9fa822c666 Fix minor typos 2017-09-17 18:29:52 -04:00
Tony Crisci 98f4cdfccb implement wlr_cursor_map_input_to_output 2017-08-26 08:32:11 -04:00
Dominique Martinet 062d923b0a wayland backend: wl_event_source_remove on destroy 2017-08-19 09:31:06 +02:00
Dominique Martinet 58efb8f90a wayland backend: remove explicit scale = 1
This is now set correctly in the wlr_output init
2017-08-19 07:38:45 +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
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 27c13d621d Merge pull request #88 from 4e554c4c/alloc_crashing
Prevent alloc errors from crashing
2017-08-15 12:21:58 -04:00
Drew DeVault d2e796edb7 Merge pull request #86 from nyorain/master
Fix style issues
2017-08-15 07:18:22 -04:00
Calvin Lee 5cc7342606 Prevent alloc errors from crashing
Resolves #76
2017-08-15 08:04:57 +02:00
nyorain d7dcbbc175 Add wayland backend cursor support 2017-08-14 18:02:05 -04:00
nyorain f998bb8299 Fix style issues 2017-08-14 17:09:56 +02:00
Dominique Martinet e922e62924 wayland input_device_destroy: add missing braces 2017-08-14 16:30:10 +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 53e7bebd23 Refactor out wlr_pointer_state 2017-08-14 16:22:31 +02:00
Dominique Martinet 0a3246ad97 Refactor out wlr_keyboard_state 2017-08-14 16:22:31 +02:00
Dominique Martinet e6ad67911b Refactor out wlr_input_device_state 2017-08-14 16:22:31 +02:00
Drew DeVault 41e735242d Remove wlr_output_state, update backends 2017-08-13 11:38:03 -04: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
Dominique Martinet f2e2794365 wayland backend: do not watch wayland fd for writable
Wayland fd is always writable and will busy-loop.
The dispatch function gets called with 0-mask when we need to flush
display anyway, so this saves CPU at no visible impact.
2017-08-13 07:53:33 +02:00
Drew DeVault 81cd90297d Refactor out wlr_backend_state from wl/multi 2017-08-12 11:43:36 -04:00
Dominique Martinet 3ea878b76e wayland backend: free seatName 2017-08-12 01:19:45 +02:00
Dominique Martinet 8427749dd0 wayland backend: emit signal for input/output removal 2017-08-12 01:16:12 +02:00
Drew DeVault c24351681f Refactor EGL handling 2017-08-10 22:15:37 -04:00
Drew DeVault 4aaf76cb66 wlr_output_update_matrix during wl backend init 2017-08-10 13:27:14 -04:00
nyorain 67369173aa Implement drm (egl) buffer attaching 2017-08-10 10:59:58 +02:00
Drew DeVault 97f6e9b69a Remove excessive logging in wayland backend 2017-06-28 16:35:18 -04:00
Drew DeVault 97213cc00e Add new interfaces to wayland backend 2017-06-26 18:23:38 -04:00
Drew DeVault 168f0955ab Add wl_output globals for wlr_outputs 2017-06-22 14:27:35 -04:00
nyorain 4ca872c914 Improve wayland backend pointer error logging 2017-06-22 18:04:13 +02:00
nyorain dbde1f7340 Store wayland backend axis source 2017-06-22 17:58:53 +02:00
nyorain 272030652a Implement absolute motion events for wayland 2017-06-22 17:55:00 +02:00
nyorain d26a9ba968 Fix pointer motion coords 2017-06-22 17:12:09 +02:00
nyorain c1520077b6 Implement wayland backend input events 2017-06-22 16:53:48 +02:00
nyorain 0b8e6cccc8 Add wayland input listener skeletons 2017-06-22 15:41:59 +02: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 c2d0090ad7 Support multiple wl backend outputs 2017-06-20 18:22:21 -04:00
Drew DeVault b2bf5b23b9 Implement output_transform for wl backend 2017-06-20 18:02:00 -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 c9d5a0b2fb Clean up Wayland backend GL context and such 2017-06-20 15:29:27 -04:00
nyorain 51f35e7af0 Cleanup some leaks/incorrect destructions 2017-06-20 19:01:20 +02:00
nyorain 500e9184f1 Fix egl workaround; Test with weston 2017-06-20 18:44:11 +02:00
nyorain 50ce35e9da Implement wayland backend output 2017-06-20 18:27:05 +02:00
nyorain e22626ef6a Adapt codestyle 2017-06-19 22:39:20 +02:00
nyorain 792d535225 Rework wayland backend output implementation 2017-06-19 22:36:40 +02:00
nyorain 10526de444 Fix furhter wayland backend issues 2017-06-19 19:40:58 +02:00
nyorain 8fbf1ca3ff Continue wayland backend update
Update wayland backend to new api.
Start to use the input interfaces.
Compiling now, not tested.
2017-06-19 19:05:10 +02:00
nyorain 904739c405 Start to fix wayland backend
Starts to update the wayland backend to the new backend api.
Not yet updated to libinput branch (not yet compiling).
2017-06-19 17:46:50 +02:00
Drew DeVault 1aed987301 Add free functions for allocated resources 2017-04-25 21:26:29 -04:00
Drew DeVault 1e8970b4a9 Flesh out wl_seat and fix some bugs 2017-04-25 19:33:13 -04:00
Drew DeVault 5ca9d612f4 Flesh out wayland backend registry 2017-04-25 19:19:21 -04:00
Drew DeVault de01e654ce Flesh out wayland backend somewhat, add example 2017-04-25 15:06:58 -04:00
Drew DeVault 52e6ed54cb Initial commit 2017-04-25 11:32:52 -04:00