Commit Graph

836 Commits

Author SHA1 Message Date
emersion e737f65e38
Fix cursor on transformed output with DRM backend 2017-12-26 18:16:37 +01:00
emersion 4a11609b76
Fix use-after-free when destroying selection sources 2017-12-25 18:18:26 +01:00
emersion 6dffaa7bb7
Implement xwayland primary selection sync 2017-12-25 16:10:16 +01:00
emersion d4d860666c
Correctly free primary selection manager & source 2017-12-23 17:43:55 +01:00
emersion 077bdfa789
Send primary selection when clients get keyboard focus 2017-12-23 00:03:15 +01:00
emersion 4476f79850
Fix primary clipboard issues 2017-12-22 23:45:07 +01:00
emersion a95d09d561
Add missing gtk-primary-selection interfaces 2017-12-22 22:22:29 +01:00
emersion 0a171d3ace
Add wlr_primary_selection_device_manager and wlr_primary_selection_source 2017-12-22 19:20:12 +01:00
emersion 01cefbb868
Output fixes
Fixes setting a hardware cursor image twice (used to fallback to
software cursor) and destroy handlers.
2017-12-19 11:06:09 +01:00
Tony Crisci d654a12b2e remove display_destroy unlisten before output free 2017-12-18 16:24:56 -05:00
Tony Crisci c59210ad17 remove display destroy when output is destroyed 2017-12-18 15:10:32 -05:00
Tony Crisci c838679393 fix memory leaks 2017-12-18 14:53:24 -05:00
Tony Crisci 20327d82cb Merge branch 'master' into keyboard-fixes 2017-12-18 10:04:27 -05:00
Tony Crisci 37c83d5c6d misc keyboard fixes 2017-12-18 09:59:59 -05:00
emersion 2c31cac116
Do not segfault when loading an unknown keymap 2017-12-18 15:11:05 +01:00
Drew DeVault f3769a4b1f
Merge pull request #496 from emersion/headless-backend
Headless backend
2017-12-17 20:48:01 -05:00
Drew DeVault 10c72f4bf6
Merge pull request #487 from emersion/xwm-selection
xwm clipboard sync, 2nd edition
2017-12-17 20:03:26 -05:00
emersion 804c7a73a6
Allow clients to unset the selection 2017-12-18 00:44:43 +01:00
emersion 0256de0002
Add full refresh rate support to custom modes 2017-12-17 18:02:55 +01:00
Drew DeVault 3363ea869a
Merge pull request #492 from emersion/seat-client-multiple-resources
Support multiple resources per seat client
2017-12-16 11:53:14 -05:00
emersion 50d91bd260
Fix potential memory leak 2017-12-16 17:46:07 +01:00
emersion 9e345f0f98
Simplify seat pointer functions 2017-12-16 17:17:07 +01:00
emersion 9310d101bc
Fix potential segfault 2017-12-16 16:16:29 +01:00
Drew DeVault 95fddf2fa8 s/L_INFO/L_DEBUG/ @ software cursor fallback 2017-12-16 09:56:30 -05:00
emersion 8af6fbd7a0
Support multiple resources per seat client for data_device 2017-12-16 14:22:59 +01:00
emersion 4f0443a344
Support multiple resources per seat client for pointer, keyboard, touch 2017-12-16 13:53:39 +01:00
emersion 80b0b327de
Remove fractional output PR artifact 2017-12-15 17:14:30 +01:00
emersion 51db087210
Introduce fractional scaling 2017-12-15 01:00:03 +01:00
Drew DeVault 23fb663ea4
Merge pull request #453 from emersion/surface-transform
Add surface transforms support
2017-12-14 14:43:04 -05:00
emersion 466e86b7b2
Merge branch 'master' into surface-transform 2017-12-14 20:31:18 +01:00
emersion 75ef7860bb
Merge branch 'master' into display-destroy 2017-12-14 20:29:30 +01:00
emersion 257559d890
Remove output instead of terminating display when a wayland backend view closed 2017-12-13 21:48:59 +01:00
emersion 3b4b8953d9
Update output layout when scale or transform changes 2017-12-12 21:58:00 +01:00
emersion c67a5824b8
Merge branch 'master' into display-destroy 2017-12-11 16:14:03 +01:00
emersion 529675b7b0
Add wlr_output_set_custom_mode 2017-12-11 12:14:23 +01:00
Dominique Martinet 542d886984 wlr_seat: send keyboard modifiers to the right client on enter
We were previously sending modifiers to the leaving client instead.
Fixes #476.
2017-12-10 08:09:33 +01:00
Drew DeVault eb4e91f96d
Merge pull request #474 from emersion/customize-repeat-info
Make keyboard repeat info configurable
2017-12-08 15:47:11 -05:00
emersion a3c0f97810
Make keyboard repeat info configurable 2017-12-08 17:03:05 +01:00
emersion 15bb9a53b4
Fix unscaled cursor sx, sy 2017-12-08 14:40:57 +01:00
emersion 5dc303fc26
Fix client cursors hotspot on scaled outputs 2017-12-08 14:33:02 +01:00
emersion c5fa415a03
Send wl_surface.{enter,leave} to cursor surfaces 2017-12-08 14:23:33 +01:00
emersion 18eb1eee3f
Listen to display destroy in xwayland, rename wlr_egl_free 2017-12-08 00:59:37 +01:00
emersion bdb6e0b84c
Remove destroy event in screenshooter for now 2017-12-07 01:19:41 +01:00
emersion 0e066f0d76
Listen to display destroy in output 2017-12-07 01:12:04 +01:00
emersion cbf5763c22
Listen to display destroy in xdg-shell-v6 2017-12-07 01:08:35 +01:00
emersion 9ddaea14a1
Listen to display destroy in wl-shell 2017-12-07 01:05:49 +01:00
emersion 983ea3033f
Listen to display destroy in seat 2017-12-07 01:02:07 +01:00
emersion 088ff9a614
Listen to display destroy in gamma control manager 2017-12-07 00:55:50 +01:00
emersion c7900663bc
Add display destroy listener to data device 2017-12-07 00:50:55 +01:00
emersion e6d2e72401
Remove display destroy listeners, add compositor listener 2017-12-07 00:44:45 +01:00
emersion 32591d66d6
Add display destroy listener in server decoration 2017-12-07 00:36:05 +01:00
emersion dfe11a2b0e
Add display destroy listener in screenshooter, destroy display in rootston 2017-12-07 00:13:06 +01:00
emersion dac0233804
Send new output to clients when changing transform 2017-12-06 16:54:08 +01:00
emersion bf2b58eb6d
Add wlr_output_set_scale
Fixes #465
2017-12-06 16:36:46 +01:00
Tony Crisci 41d7bad470 wl-shell: add commit event 2017-12-03 12:37:23 -05:00
emersion 4a56957a37
Fix inverted flipped-90 and flipped-270 2017-12-01 09:49:32 +01:00
emersion 6a69b4419f
Make wlr_output_transform_* functions public, refactoring 2017-12-01 09:15:33 +01:00
Tony Crisci 5d7eb438d9
Merge pull request #437 from emersion/fullscreen
Fullscreen support
2017-11-30 03:25:05 -05:00
emersion 0781f6e483
Fix initial hardware cursor position 2017-11-29 00:26:55 +01:00
emersion cc2468923b
Fix non-HiDPI-aware fullscreen surface rendering in wlr_output 2017-11-21 21:12:12 +01:00
emersion 3262661e1e
Fix HiDPI support 2017-11-21 20:58:15 +01:00
emersion 5a664e1e46
Fix messed up outputs after fullscreen 2017-11-21 18:43:22 +01:00
emersion dcb168914e
Merge branch 'master' into fullscreen 2017-11-21 18:34:12 +01:00
Drew DeVault 1228d0da19
Merge pull request #387 from emersion/laggy-move-resize
Fix laggy move-resize
2017-11-21 11:13:18 -05:00
emersion 17d9e2ce35
Unify view events naming, remove client from event structs 2017-11-21 09:50:00 +01:00
emersion 151901123f
Merge branch 'master' into refactor-wlr-list 2017-11-20 21:15:58 +01:00
emersion a268f57ed5
Forgot a call to glClear 2017-11-20 21:05:05 +01:00
emersion 54f1135c05
Fix fullscreen in xdg-shell 2017-11-20 20:53:13 +01:00
emersion 80998cdf57
Add support for fullscreen xwayland views 2017-11-20 17:58:26 +01:00
emersion b04a9a248d
Initial fullscreen support 2017-11-20 17:27:36 +01:00
emersion 7904b625f0
Merge branch 'master' into laggy-move-resize 2017-11-19 22:28:51 +01:00
Tony Crisci af23192ede wlr-seat: remove client bound and unbound signal 2017-11-19 11:13:59 -05:00
Tony Crisci 8f38b0504b wlr-data-device: map icon by default 2017-11-19 10:14:57 -05:00
Tony Crisci 3b74db467b data-device: wlr-drag-icon 2017-11-19 09:33:55 -05:00
emersion 016744ef4d
Refactor wlr_list inside wlroots 2017-11-19 00:17:40 +01:00
Tony Crisci 458fe633df data-device: fix memory leak 2017-11-18 14:04:20 -05:00
Tony Crisci f277f28eef Merge branch 'master' into feature/wlr-seat-touch 2017-11-18 13:43:25 -05:00
emersion cd566ccd8e
Add cursor theme to rootston config 2017-11-18 09:47:53 +01:00
emersion a3a8b7bfd8
Fixed a bug with move-resize, removed xdg-shell ack_configure event
Fixed move-resizing a view when only one coordinate changes.
2017-11-18 09:09:23 +01:00
emersion e2843d87c8
Ensure to move the view when configured 2017-11-17 23:52:42 +01:00
Tony Crisci fb18e345a6 wlr-seat: return serial from touch down interface 2017-11-16 17:44:10 -05:00
Tony Crisci 4434be835d wlr-seat: clear touch focus on touch point destroy 2017-11-16 17:20:55 -05:00
Tony Crisci ae7d8870e7 data-device: bug: fix touch detection 2017-11-16 16:45:56 -05:00
Tony Crisci 584ff1df4c Merge branch 'master' into feature/wlr-seat-touch 2017-11-16 16:19:17 -05:00
emersion bb79ada49f
Fix a bunch of mistakes detected with scan-build 2017-11-16 10:30:54 +01:00
emersion bf1f461eba
Call wl_output_send_done when current mode is updated 2017-11-15 22:35:16 +01:00
Tony Crisci 12758a00a2 rootston: touch to focus 2017-11-15 08:34:48 -05:00
Tony Crisci ac4841ba37 put dnd icon in the right place 2017-11-15 08:34:48 -05:00
Tony Crisci a337e95505 wlr-touch: make dnd work 2017-11-15 08:34:48 -05:00
Tony Crisci 4eab61f86f wlr-seat: refactor touch grab interface 2017-11-15 08:34:48 -05:00
Tony Crisci b310fdac82 wlr-data-device: cleanup 2017-11-15 08:34:48 -05:00
Tony Crisci 6a516f7c41 basic touch dnd 2017-11-15 08:34:48 -05:00
Tony Crisci 94e7dc8a3e data-device: touch grab stubs 2017-11-15 08:34:48 -05:00
Tony Crisci cbb6fd7352 wlr-seat: touch grab begin and end 2017-11-15 08:34:48 -05:00
Tony Crisci 4240096b83 wlr-seat: default touch grab 2017-11-15 08:34:48 -05:00
Tony Crisci e5a31ae870 wlr-seat: basic touch 2017-11-15 08:34:48 -05:00
emersion 3f6cf517b9
Add wlr_xdg_surface_v6_popup_get_position 2017-11-15 14:03:13 +01:00
emersion f8b43940b1
Merge branch 'master' into cursor-scale 2017-11-12 22:12:50 +01:00
Drew DeVault 1e0e73efaa Spawn views on last active output 2017-11-12 09:55:28 -05:00
emersion 8605243459
Introduce wlr_xcursor_manager 2017-11-12 11:10:56 +01:00
emersion ac1573b0e7
Add scale parameter to wlr_cursor_set_image 2017-11-11 17:27:44 +01:00
Tony Crisci 2a9dc60f28 Merge branch 'master' into feature/multiseat 2017-11-11 09:59:39 -05:00
Drew DeVault e6babc07a0
Merge pull request #390 from emersion/rootston-maximize
Maximize views in rootston
2017-11-10 08:26:20 -05:00
Drew DeVault 425713b837 Merge branch 'hidpi' 2017-11-10 08:21:50 -05:00
Timidger 80bf3cfff0 Fixes #399 Adds wlr_data_device_manager destructor
Fixed issues
2017-11-09 18:52:58 -08:00
Tony Crisci 739361aa70 wlr-keyboard: take out modifiers event struct (for now) 2017-11-09 17:29:28 -05:00
emersion bf1b12a725
Fix maximize delay in xdg-shell 2017-11-09 21:41:11 +01:00
emersion 26dadacb71
Add wl_shell support for maximized views 2017-11-09 20:06:05 +01:00
Drew DeVault 66587eb430 Merge remote-tracking branch 'origin/master' into hidpi 2017-11-09 08:36:27 -05:00
Tony Crisci 79f5bd6ef8 Merge branch 'master' into feature/multiseat 2017-11-08 20:21:59 -05:00
emersion 882e620639
Always read state from wlr_keyboard in the seat 2017-11-08 19:02:56 +01:00
emersion 84d5e6bbb4
Send current keyboard state when entering a surface 2017-11-08 10:57:46 +01:00
Tony Crisci 09c6092423 multiseat: somewhat working 2017-11-07 15:56:11 -05:00
Tony Crisci b74c4cf974 Merge branch 'master' into feature/multiseat 2017-11-05 08:09:45 -05:00
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
Tony Crisci 5354fe8729 move keyboard to seat 2017-11-04 09:23:57 -04:00
Drew DeVault 6d8e1abfc0 Improve input sensitivity
We now use doubles until the last minute, which makes it so we can move
the pointer more precisely. This also includes a fix for tablet tools,
which move absolutely and sometimes do not update the X or Y axis.
2017-11-04 01:35:12 -04:00
Drew DeVault 86b8729998 Merge remote-tracking branch 'origin/master' into hidpi 2017-11-02 23:34:02 -04:00
Drew DeVault ca8cf7d48d Rethink HiDPI output layouts, fixes everything
Except for subsurfaces not rendering at the right scale. But that part
is (somewhat) easy.
2017-11-02 23:17:39 -04:00
emersion f8de7aa0fd
Add checks for wl_resource_create 2017-11-02 23:14:24 +01:00
emersion 0384c9c094
Process surface position for software cursor hotspots 2017-11-02 19:24:48 +01:00
emersion b46d2a8b33
Fix wlr_output_cursor_destroy 2017-11-02 11:42:42 +01:00
emersion d11973ed7d
Fix disabled cursors 2017-11-02 11:37:43 +01:00
emersion e18460c981
Add wlr_output.needs_swap 2017-11-01 20:08:15 +01:00
emersion 0df7a3c22d
Add wlr_seat_pointer_request_set_cursor_event.serial 2017-11-01 18:15:37 +01:00
Drew DeVault 0d9d670dbd
Merge pull request #365 from emersion/wayland-backend-transform
Cursors ✕ Output Transformations fixes
2017-11-01 10:21:02 -04:00
emersion a15b35aa10
Remove mysterious hotspot switch in DRM backend 2017-11-01 14:36:58 +01:00
emersion 60c018c017
Fix hidden software cursors, fix cursor transformations on DRM backend 2017-11-01 14:25:41 +01:00
Drew DeVault b2ff9f13b7
Merge pull request #368 from acrisci/bug/seat-clear-focus
wlr-seat bug: dont set focus surface to null then clear focus
2017-11-01 09:20:49 -04:00
Tony Crisci b23dd6a6f8 wlr-seat bug: dont set focus surface to null then clear focus 2017-11-01 09:08:35 -04:00
Drew DeVault ed74f473d6 Fix various rebase-related bugs 2017-11-01 08:57:30 -04:00
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
Tony Crisci 1a756b3123 bugfix: dnd force cancel 2017-11-01 08:05:02 -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 7dc716a2bb
Fix memory leak in wlr_cursor 2017-10-31 14:58:58 +01:00
emersion 2c63aa2056
Destroy x11 output with backend 2017-10-31 14:21:12 +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 ca9dfd2e14
Emit add event after configuring wlr_output_layout_output 2017-10-31 12:30:57 +01:00
emersion ae9a46fc9b
Remove outdated TODOs, use wlr_surface_has_buffer 2017-10-31 12:30:57 +01:00
emersion 6a74a3586f
Fix wlr_cursor_destroy, handle device remove in examples/multi-cursor 2017-10-31 12:30:57 +01:00
emersion 044173d1df
Add multi-pointer example 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 4230a577cc
Remove wlr_cursor_set_xcursor for now 2017-10-31 12:30:56 +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 2e2d63a164
Manage wlr_output_cursor from wlr_cursor 2017-10-31 12:30:56 +01:00
emersion 1b6c729360
Add wlr_output_cursor 2017-10-31 12:30:03 +01:00
Tony Crisci e9c2cf09dc
Merge pull request #361 from emersion/output-layout-checked-allocs
Check allocation errors in wlr_output_layout
2017-10-31 07:07:06 -04:00
emersion 88f85f7477
Fix code style issues 2017-10-31 12:01:49 +01:00
emersion 816d6890ee
Fix remaining unchecked allocs in types and code style 2017-10-31 11:58:39 +01:00
emersion 78245a3998
Check allocation errors in wlr_output_layout 2017-10-31 11:29:53 +01:00
Tony Crisci 74bca7251b rename wlr_seat to seat on seat structs 2017-10-30 08:44:39 -04:00
Tony Crisci fddef4d58e rename seat handle to seat client 2017-10-30 08:37:54 -04:00
Drew DeVault 4281aefbf8
Merge pull request #324 from acrisci/feature/keyboard-redesign
wlr-seat: keyboard redesign
2017-10-28 10:56:41 -04:00
emersion a43acae000
Send server-decoration ack event automatically 2017-10-27 00:02:30 +02:00
emersion e84d573b91
Complete server-decoration implementation 2017-10-24 23:22:27 +02:00
emersion e521b0404b
Add server-decoration skeleton 2017-10-24 21:56:18 +02:00
emersion 9ccf66f53d
Remove gamma_control->link from list in destroy 2017-10-24 21:44:30 +02:00
Drew DeVault bbf08f3ef9 Merge pull request #262 from acrisci/feature/data-device-selection
wlr-data-device
2017-10-24 08:22:13 -04:00
Drew DeVault 93042e844b Merge pull request #325 from acrisci/bug/texture-destroy
Revert "wlr-surface: destroy texture on null buffer commit"
2017-10-24 08:22:06 -04:00
Tony Crisci 1dbe314937 Merge branch 'master' into feature/data-device-selection 2017-10-24 07:57:36 -04:00
Tony Crisci 06d8893543 wlr-seat: edit todos 2017-10-24 07:24:48 -04:00
Tony Crisci d33a9f8eaa wlr-seat: keyboard redesign 2017-10-24 07:18:11 -04:00
emersion eea532911a
Send output current mode when changed 2017-10-23 21:03:00 +02:00
Tony Crisci 6e7caaee6b Revert "wlr-surface: destroy texture on null buffer commit"
This reverts commit 0e7d13fab7.
2017-10-23 09:09:12 -04:00
Tony Crisci 0e7d13fab7 wlr-surface: destroy texture on null buffer commit 2017-10-22 21:07:54 -04:00
Tony Crisci d1dd0a6970 refactor buffer detection 2017-10-22 21:07:32 -04: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
Drew DeVault c5fff08f8a Forgot to rename these 2017-10-22 10:56:40 -04: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
Drew DeVault 24ae081001 Merge pull request #308 from ascent12/render-fixups
Render fixups
2017-10-21 18:08:58 -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
Scott Anderson 9b984253e2 Move egl.h to render/egl.h 2017-10-22 10:36:07 +13:00
Tony Crisci 3c7ef3aae6 Merge branch 'master' into feature/data-device-selection 2017-10-21 09:43:24 -04:00
Tony Crisci a87b60e31e Merge branch 'master' into feature/data-device-selection 2017-10-21 09:37:58 -04:00
emersion c8570d0e42
Remove wl_list_init when using wl_signal_add 2017-10-21 12:35:51 +02: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
Tony Crisci a339b10dcd xdg-shell: improve configure request change detection 2017-10-20 11:44:36 +03:00
Tony Crisci a5659b65c7 xdg-shell: send same-as-current configure if needed 2017-10-20 11:44:36 +03:00
Tony Crisci fcf4724da9 xdg-shell: improve configure request change detection 2017-10-19 10:15:56 -04:00
Tony Crisci ec83d9df58 xdg-shell: send same-as-current configure if needed 2017-10-19 09:57:55 -04:00
Tony Crisci 39308cb868 Merge branch 'master' into feature/data-device-selection 2017-10-18 15:43:13 -04:00
emersion a7d7659a93
Fix render errors with gnome-terminal 2017-10-18 20:13:59 +02:00
Tony Crisci b7c622a319 Merge branch 'master' into feature/data-device-selection 2017-10-17 16:01:17 -04:00
Drew DeVault 9129687ad6 Merge pull request #280 from acrisci/bug/xdg-shell-pending-different-force
xdg-shell: force configure when pending different
2017-10-17 09:34:47 -04:00
Tony Crisci 82076bd772 xdg-shell: force configure when pending different 2017-10-17 09:22:50 -04: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
Tony Crisci 2bd52c83ce bug: detect invalid texture in xdg-shell 2017-10-17 08:29:57 -04:00
emersion 786f4bdd4d
Disable hardware cursors for now 2017-10-17 00:04:33 +02:00
Tony Crisci 19784360f1 bug: fix view centering 2017-10-16 14:35:16 -04:00
Tony Crisci 09f16058c8 cleanup: redo buggy set pointer function 2017-10-16 10:00:32 -04:00
Tony Crisci f9d578700e bug: fix seat handle destroy handler 2017-10-16 09:14:16 -04:00
Tony Crisci c0e8585a4c data-device: handle multiple data devices 2017-10-16 08:56:59 -04:00
Tony Crisci 2d35e20691 data-device: keyboard grabs 2017-10-16 07:52:04 -04:00
Tony Crisci 570a951947 data-device: button release drag bugfixes 2017-10-16 06:43:41 -04:00
Tony Crisci 3f3110452c wlr-seat: pointer state button info 2017-10-16 06:31:53 -04:00
Tony Crisci 34f27ff691 wlr-seat: selection signal 2017-10-16 05:07:09 -04:00
Tony Crisci 02f4acc69f data-device: refactor set selections for xwayland 2017-10-15 14:49:43 -04:00
Tony Crisci df0a8d3abe wlr-data-device: drag icons 2017-10-15 11:06:03 -04:00
Tony Crisci a1bfa4a2f2 wlr-data-device: basic drag and drop 2017-10-15 05:59:52 -04:00
Tony Crisci 07259cf8ea wlr-data-device: source actions 2017-10-15 05:59:52 -04:00
Tony Crisci 25831d287e wlr-data-device: offer set actions 2017-10-15 05:59:52 -04:00
Tony Crisci 3892acecac wlr-data-device: basic clipboard 2017-10-15 05:59:52 -04:00
Tony Crisci 6a7560fae0 wlr-data-device interface 2017-10-15 05:59:52 -04: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
Tony Crisci 327f656c35 bug: emit wlr-seat pointer grab end event 2017-10-12 13:33:42 -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
Drew DeVault 2272f3d47c Don't segfault wlr_keyboard when no xkb state 2017-10-11 22:45:39 -04:00
emersion 5c6a933890
Do not call wlr_surface_state_release_buffer anymore 2017-10-11 20:29:21 +02:00
Drew DeVault f73cb2aa1f Merge pull request #260 from versusvoid/fix-accessing-freed-client
Destroy surfaces on client destruction (XDG shell)
2017-10-11 09:08:39 -04:00
Versus Void 508a21f93e Destroy surfaces on client destruction 2017-10-11 16:02:16 +00:00
Drew DeVault bf5299a3a5 Merge pull request #252 from myfreeweb/freebsd-compat
Add FreeBSD compatibility
2017-10-11 08:54:28 -04:00
emersion 67f0c3ca42
Rename release label 2017-10-11 14:02:41 +02:00
emersion 36b4465eb9
Do not release buffer before emitting commit event 2017-10-11 08:38:32 +02:00
Greg V a5fe9aa736 Add FreeBSD compatibility 2017-10-11 00:07:21 +03:00
emersion 669a452aef
Fix wlr_output_layout_intersects 2017-10-10 20:05:10 +02:00
Tony Crisci 821cf92498 wl-shell: fix popup grab 2017-10-10 12:20:39 -04:00
Tony Crisci f7e7f6271d wl-shell: cleanup 2017-10-10 11:13:11 -04:00
Tony Crisci 1b2742d0b2 bug: emit surface new event later 2017-10-10 10:28:43 -04:00
Tony Crisci d4c065e59b wl_shell: map transient surfaces closer to parent 2017-10-10 08:39:08 -04:00
Tony Crisci 22a16a59ca wl-shell: basic pointer grab 2017-10-10 08:39:08 -04:00
Tony Crisci cd1204f71f wl-shell: render popups in the right place 2017-10-10 08:39:08 -04:00
Drew DeVault fbddc81b59 Merge pull request #254 from versusvoid/fix-frame-callback-double-free
Destroy callbacks before callback list reinitialization
2017-10-10 08:37:19 -04:00
Versus Void d3af2c09c2 Destroy callbacks before callback list reinitialization 2017-10-10 13:16:56 +03:00
Versus Void a6db47196c Upload texture on surface commit 2017-10-10 11:18:38 +03:00
Drew DeVault c39bfe7f84 Merge pull request #206 from emersion/client-cursor
Client provided cursors
2017-10-09 17:56:05 -04:00
Drew DeVault 1c3c2ff90a Merge pull request #250 from acrisci/feature/surface-finder-to-wlr
move surface finder functions to wlroots
2017-10-09 17:28:27 -04:00
Tony Crisci 100b39c608 bug: null buffer commit detection 2017-10-09 17:19:17 -04:00
Tony Crisci 654e2ccd6b move surface finder functions to wlroots 2017-10-09 16:51:55 -04: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
Tony Crisci 761b35339e bug: handle commit empty buffer 2017-10-08 17:03:27 -04: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 65d57920e5
rootston: handle request_set_cursor 2017-10-08 20:37:47 +02:00
emersion 78d3582b70
Add request_set_cursor event 2017-10-08 20:32:43 +02:00
emersion 7b6d785f52
Rename wlr_surface->signals to events 2017-10-08 19:12:28 +02:00
Tony Crisci db15ab77b4 use input bounds for pointer events 2017-10-08 12:33:39 -04:00
Drew DeVault 9e1ff2dce9 Merge pull request #140 from emersion/screenshooter
Add screenshooter
2017-10-08 10:06:41 -04:00
emersion 0ce3135304
Move read_pixels from output to renderer 2017-10-08 02:11:56 +02:00
Drew DeVault 543601e86c Merge pull request #183 from acrisci/feature/xdg-popup
xdg-popup
2017-10-07 17:40:46 -04:00
Tony Crisci 9721dc80e1 wlr-data-source: cleanup 2017-10-07 16:41:45 -04:00
Tony Crisci 1fd81ebf2d wlr-data-source: add set_actions stub 2017-10-07 16:39:03 -04:00
Tony Crisci 51de398885 bug: fix clipboard 2017-10-07 16:33:22 -04:00
Tony Crisci d61621e2fa wlr-data-device-mgr: cleanup 2017-10-07 15:49:44 -04:00
Tony Crisci 4f848000af Merge branch 'master' into feature/xdg-popup 2017-10-07 13:04:04 -04:00
emersion a87f016017
Remove cairo dependency, write raw pixels 2017-10-07 19:01:11 +02:00
Tony Crisci 4680943e74 xdg-seat: keyboard grabs 2017-10-07 12:52:02 -04:00
emersion b27b6cd69c
Check wl_shm_buffer format 2017-10-07 18:25:27 +02:00
emersion 4374c52135
Free screenshot state 2017-10-07 16:22:03 +02:00
emersion ecd5263d4d
Flip screenshots 2017-10-07 16:22:03 +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 1c8b72e0cd
Add screenshooter skeleton 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
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
emersion 69aff9b35e
Implement wlr_xdg_toplevel_v6_send_close 2017-10-06 16:03:35 +02:00
Tony Crisci 27ee171d25 xdg-popup: protocol errors and ungrab 2017-10-06 08:41:43 -04:00
Tony Crisci 67ea307753 xdg-shell: cleanup 2017-10-06 07:52:18 -04:00
Tony Crisci 48ae4fc588 rootston: handle grab end 2017-10-06 07:32:59 -04:00
Tony Crisci 4657f10dd2 Merge branch 'master' into feature/xdg-popup 2017-10-06 07:04:27 -04:00
Tony Crisci d3ebf99b0f xdg-popup: basic pointer grab 2017-10-06 06:54:43 -04:00
Versus Void 641d08ce7e Transform hotspot with cursor
Fix #188
2017-10-06 09:07:08 +03:00
Tony Crisci 17b134e178 wlr-seat: pointer grab interface 2017-10-05 13:30:46 -04:00
Versus Void 134f708c55 Fix double free 2017-10-05 19:02:18 +00:00
Tony Crisci 30eabf38b8 Merge branch 'master' into feature/xdg-popup 2017-10-03 18:58:38 -04:00
Drew DeVault 836242b0c4 Merge pull request #197 from versusvoid/buffer-reset
Reset buffer resource pointer on destroy signal.
2017-10-03 15:28:48 -04:00
Versus Void 606311c755 Reset buffer resource pointer on destroy signal 2017-10-03 19:57:54 +00:00
Tony Crisci d1cb0edf20 wlr-seat: honor seat version 2017-10-03 15:18:22 -04:00
Drew DeVault 5f3c56de28 Merge pull request #184 from emersion/rootston-keys
Keyboard modifiers
2017-10-03 10:36:16 -04:00
emersion 521e893528
Add modifiers signal, remove wlr_keyboard_update_modifiers 2017-10-03 14:03:26 +02:00
emersion d71344bcdd
Fix modifiers support with backend != wayland 2017-10-03 09:15:48 +02:00
emersion d3d9aca40c
Add modifiers support in wayland backend, parse modifiers in rootston config 2017-10-03 08:46:11 +02:00
emersion 3a8fdebaaa
Fix modifiers handling, add wlr_keyboard_get_modifiers 2017-10-03 08:46:11 +02:00
emersion 2fccff16eb
Begin modifiers support 2017-10-03 08:46:11 +02:00
Versus Void 2207d616c9 Free xkb structures on wlr_keyboard destroy 2017-10-03 08:34:30 +03:00
Tony Crisci e003296c23 xdg-popup: render popups in the right place 2017-10-02 19:10:36 -04:00
Tony Crisci 86b66f1d6f xdg-popup: configure requests 2017-10-02 19:10:36 -04:00
Tony Crisci 97cdcccaf0 xdg-surface: get popup 2017-10-02 19:10:36 -04:00
Tony Crisci c665f905ff xdg-positioner 2017-10-02 19:10:36 -04:00
Tony Crisci aae8bdea30 xdg-shell: protocol destroy 2017-10-02 06:28:07 -04:00
Tony Crisci 28f7256148 xdg-toplevel: fix memory leaks 2017-09-30 17:13:32 -04:00
Tony Crisci 8b7ae61ad4 subsurface handle parent destroy 2017-09-30 13:24:59 -04:00
Tony Crisci 19e30aab9b subcompositor protocol errors 2017-09-30 08:55:40 -04:00
Tony Crisci 93f79378f7 subsurface stacking requests 2017-09-30 08:55:40 -04:00
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 78cd62a663 publish subcompositor global 2017-09-30 08:55:40 -04:00
Tony Crisci a4196fd9c9 cleanup wlr_compositor.c 2017-09-30 08:55:40 -04:00
Tony Crisci 0f56326cb8 fix libinput wlr-keyboard use after free 2017-09-28 20:29:26 -04:00
Drew DeVault 262c3b1638 Remove unnecessary logging 2017-09-28 18:47:52 -04:00
Drew DeVault c92199a953 Merge pull request #163 from emersion/wl_shell-fixes
wl_shell fixes
2017-09-28 13:29:49 -04:00
emersion 8146d60a87
Fix 80 char limit with 4 width tabs 2017-09-28 19:24:33 +02:00
Drew DeVault 220a6e9bf6 Add xwayland activate and fix EGL bug 2017-09-28 09:11:16 -04:00
Drew DeVault 906a816abf Fix rootston keyboard, add Xwayland 2017-09-28 08:54:57 -04:00
emersion baed05b55e
Add TODO for pointer grab in set_popup 2017-09-28 13:46:30 +02:00
emersion 643a69f0b2
Call wlr_surface_set_role in wl_shell_get_shell_surface 2017-09-28 13:41:17 +02:00
emersion 55d2462180
Remove ping_timer when destroying wlr_wl_shell_surface 2017-09-28 13:34:22 +02:00
emersion 9d405cffa7
Use enums instead of uint32_t where applicable 2017-09-28 13:12:01 +02:00
emersion dbdfc46448
Add helper shell_surface_set_state 2017-09-28 13:06:59 +02:00
emersion 3d03ef2d02
role -> state 2017-09-28 12:45:47 +02:00
emersion 27ca8eaced
Fix typo: s/transcient/transient/ 2017-09-28 12:38:41 +02:00
emersion a04462ba8b
wl_shell: listen for wlr_surface destroy signal 2017-09-28 01:31:31 +02:00
emersion eaa414bbd8
wl_shell: properly set wl_surface->resource 2017-09-28 01:10:39 +02:00
emersion d41a4a0bae
wl_shell: gluten-free cosmetic variable renaming 2017-09-28 01:02:30 +02:00
emersion d6c6b7c506
class_ -> class, free more stuff in destroy_shell_surface 2017-09-27 23:47:39 +02:00
emersion 241fec4d87
wl_shell: add wlr_wl_shell_surface_{configure,popup_done} 2017-09-27 23:45:09 +02:00
emersion 14ab56b6c5
wl_shell: implement set_popup request 2017-09-27 23:10:33 +02:00
emersion 663bfe4cd8
wlr_wl_shell: implement all requests except set_popup 2017-09-27 21:15:31 +02:00
emersion e001e40022
Set view->surface 2017-09-27 15:03:35 +02:00
emersion acf58e04de
Fix segfault, add wl_shell view 2017-09-27 14:48:53 +02:00
emersion ed9a43c213
Add first try to add wl_shell to rootston 2017-09-26 23:59:25 +02:00
Drew DeVault 1ddda91b1b Fix broken keyboard handling 2017-09-25 16:44:26 -04:00
Drew DeVault e6a6634bc5 Minor tweaks to (broken) keyboard support 2017-09-25 08:47:00 -04:00
Drew DeVault f4387b437f Merge branch 'master' into rootston 2017-09-25 08:29:51 -04:00
Drew DeVault 61e451ea1b Move keyboard logic to wlr_{keyboard,seat} 2017-09-24 14:12:56 -04:00
Drew DeVault eaf6c0ccf4 Implement pointer motion and buttons 2017-09-23 17:48:13 -04:00
Tony Crisci 84a8f1b42d add keys array param to seat keyboard enter 2017-09-23 14:41:57 -04:00
Tony Crisci 9cde828c94 bugfix: correct type in keyboard resource destroy 2017-09-23 14:10:17 -04:00