Commit graph

745 commits

Author SHA1 Message Date
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
Dominique Martinet
46c80fa51e rootston: fix startup with no config
Would choke on NULL name on strcmp later on:
 #0  0x00007ffff6e0ad4a in __strcmp_sse2_unaligned () at /usr/lib/libc.so.6
 #1  0x00005555555593d2 in config_get_keyboard (config=0x555555774f80, device=0x555555775768) at ../rootston/config.c:443
 #2  0x000055555555d7e3 in keyboard_add (device=0x555555775768, input=0x555555e96d70) at ../rootston/keyboard.c:206
 #3  0x000055555555ca39 in input_add_notify (listener=0x555555e96fa8, data=0x555555775768) at ../rootston/input.c:34
 #4  0x00007ffff7ba2b80 in wl_signal_emit (signal=0x5555557754f8, data=0x555555775768) at /usr/include/wayland-server-core.h:388
 #5  0x00007ffff7ba37e0 in wlr_x11_backend_start (backend=0x5555557754f0) at ../backend/x11/backend.c:286
 #6  0x00007ffff7b9372d in wlr_backend_start (backend=0x5555557754f0) at ../backend/backend.c:29
 #7  0x000055555555dcc0 in main (argc=1, argv=0x7fffffffe408) at ../rootston/main.c:39
2017-11-01 11:45:02 +01:00
Tony Crisci
c7c0d34e92
Merge pull request #352 from emersion/output-cursor
Add wlr_output_cursor
2017-10-31 17:58:28 -04:00
Tony Crisci
e5b49158b4 rootston: end grab on escape 2017-10-31 08:38:21 -04:00
emersion
ae9a46fc9b
Remove outdated TODOs, use wlr_surface_has_buffer 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
c45f2eef0e
Fix rootston 2017-10-31 12:30:06 +01:00
Drew DeVault
ebca06bfe4
Merge pull request #358 from acrisci/refactor/sec-to-msec
refactor input time_sec to time_msec
2017-10-30 15:50:31 -04: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
Tony Crisci
a224e74fad refactor input time_sec to time_msec 2017-10-30 06:40:06 -04:00
Valentin Hăloiu
34dcb083ca
Fix resize bounds check in rootson 2017-10-30 00:12:17 +01:00
Tony Crisci
c01248cf17 Merge branch 'master' into feature/xwm-rewrite 2017-10-29 10:43:10 -04:00
Drew DeVault
50e86a0efa Allow configuring output mode in rootston
Fixes #336
2017-10-28 15:32:08 -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
fb0c9a356e
Enforce resize bounds in rootston 2017-10-28 11:58:34 +02:00
Tony Crisci
c555a66dda Merge branch 'master' into feature/xwm-rewrite 2017-10-27 15:22:00 -04:00
emersion
2718b57180
Force resize for all edges in rootston 2017-10-27 20:36:25 +02:00
Drew DeVault
9f1ed70b81
Merge pull request #344 from emersion/compositor-action-cursors
Set compositor cursor for move, resize and rotate
2017-10-27 13:42:53 -04:00
emersion
315c01ba0f
Remove input.last_active_view 2017-10-27 19:21:26 +02:00
emersion
ec5beeb8b8
Move xcursor stuff into its own file 2017-10-27 19:09:38 +02:00
emersion
ad27cc3bff
Set compositor cursor for move, resize and rotate 2017-10-27 18:41:31 +02:00
Tony Crisci
6a4290b86a xwm: moveresize events 2017-10-27 10:48:09 -04:00
Drew DeVault
4bee96bd30 Merge pull request #333 from emersion/server-decoration
Add server-decoration protocol
2017-10-27 09:28:25 -04:00
emersion
a43acae000
Send server-decoration ack event automatically 2017-10-27 00:02:30 +02:00
emersion
882bda0664
Rename default keyboard section 2017-10-26 23:02:24 +02:00
emersion
c0c4816b13
Fix fallback when there are two config blocks for a keyboard 2017-10-26 22:38:03 +02:00
emersion
4e5d23daa9
Per-keyboard configuration 2017-10-26 19:59:32 +02:00
Tony Crisci
7914f4bda9 xwm: dont focus override redirect windows 2017-10-25 20:40:55 -04:00
emersion
7c85709de1
Focus last view on close in rootston 2017-10-25 20:34:40 +02:00
Tony Crisci
0d1dd84a48 xwm: improve activation and dont send focus twice 2017-10-25 08:39:28 -04:00
Tony Crisci
e5ee01254b xwm: map and unmap notify 2017-10-24 21:07:46 -04:00
Tony Crisci
a3f2754668 xwm: add surface to rootston on surface commit 2017-10-24 12:00:43 -04:00
Tony Crisci
1dbe314937 Merge branch 'master' into feature/data-device-selection 2017-10-24 07:57:36 -04:00
Tony Crisci
d33a9f8eaa wlr-seat: keyboard redesign 2017-10-24 07:18:11 -04:00
Drew DeVault
c5fff08f8a Forgot to rename these 2017-10-22 10:56:40 -04:00
Drew DeVault
16f35ecbea Merge branch 'master' into heghe/wl_list 2017-10-21 22:03:48 -04:00
Alexander Taylor
844f4387c7 Fixed default keybinding in config.c 2017-10-21 23:17:39 +01:00
Drew DeVault
1367ecc309 Merge pull request #309 from inclement/fix_rootston_default_config
Changed broken example rootston keybinding
2017-10-21 18:12:52 -04:00
Alexander Taylor
b5ed6dd6fc Changed broken default rootston keybinding 2017-10-21 23:05:55 +01:00
Tony Crisci
6fcac087fe rootston: remove mostly unused mapped icon param 2017-10-21 09:59:35 -04:00
Tony Crisci
3c7ef3aae6 Merge branch 'master' into feature/data-device-selection 2017-10-21 09:43:24 -04:00
Drew DeVault
ce2f945441 Merge pull request #303 from emersion/wl-signal-no-list-init
Remove wl_list_init when using wl_signal_add
2017-10-21 09:40:18 -04:00
Tony Crisci
a87b60e31e Merge branch 'master' into feature/data-device-selection 2017-10-21 09:37:58 -04:00
Alexander Taylor
613c792901 Moved comments in rootston keybinding example config
The comment strings are not stripped so the commands are not currently
recognised.
2017-10-21 14:31:54 +01:00
emersion
f2c4b80620
Remove calls to assert to check runtime errors in rootston 2017-10-21 13:25:39 +02:00
emersion
c8570d0e42
Remove wl_list_init when using wl_signal_add 2017-10-21 12:35:51 +02:00
Drew DeVault
1782d5e7b7 Implement simple touch support for rootston 2017-10-20 23:19:41 -04:00
D.B
8c759d7abe Add startup command option to rootston
Allows specifying a command to run at startup.
2017-10-20 17:49:04 +02: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
169bc216ed rootston: view set position 2017-10-19 12:33:02 -04:00
emersion
f874c3d585
Add a default meta key 2017-10-18 22:46:52 +02:00
Tony Crisci
c00a94ca76 data-device: fix drag icon position 2017-10-17 17:21:11 -04:00
Tony Crisci
b7c622a319 Merge branch 'master' into feature/data-device-selection 2017-10-17 16:01:17 -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
19784360f1 bug: fix view centering 2017-10-16 14:35:16 -04:00
Tony Crisci
b8de0a29b4 rootston: handle icon already being in the list 2017-10-16 08:00:01 -04:00
Tony Crisci
df0a8d3abe wlr-data-device: drag icons 2017-10-15 11:06:03 -04:00
Tony Crisci
6a7560fae0 wlr-data-device interface 2017-10-15 05:59:52 -04:00
emersion
8fd4ae5de8
Fix cursor role name, fix segfault when surface->resource is NULL 2017-10-14 12:21:36 +02:00
Versus Void
96079ff897 Move binding parsing to separate function 2017-10-12 22:21:43 +00:00
Versus Void
db3368ba43 New binding to switch windows 2017-10-12 22:21:35 +00:00
emersion
29abf93bb6
Check pointer focused surface instead of view at cursor 2017-10-12 14:28:37 +02:00
Drew DeVault
bf5299a3a5 Merge pull request #252 from myfreeweb/freebsd-compat
Add FreeBSD compatibility
2017-10-11 08:54:28 -04:00
Greg V
a5fe9aa736 Add FreeBSD compatibility 2017-10-11 00:07:21 +03:00
Tony Crisci
f7e7f6271d wl-shell: cleanup 2017-10-10 11:13:11 -04:00
Tony Crisci
fe3c6c929b wl-shell: popup input handling 2017-10-10 10:00:09 -04:00
Tony Crisci
d4c065e59b wl_shell: map transient surfaces closer to parent 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
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
Tony Crisci
654e2ccd6b move surface finder functions to wlroots 2017-10-09 16:51:55 -04:00
Drew DeVault
d0d6413772 Merge pull request #220 from versusvoid/optional-xwayland
Make Xwayland optional
2017-10-09 08:09:03 -04:00
emersion
8492174088
Switch back to compositor cursor when switching from one view to another 2017-10-09 13:12:38 +02:00
emersion
f44c44502d
Check client is focused before setting client cursor 2017-10-09 13:06:53 +02:00
emersion
4d157fe5de
Switch back to compositor cursor when leaving view 2017-10-09 12:51:28 +02:00
emersion
8a77d1b6a2
Listen to cursor surface commit & destroy events 2017-10-08 23:11:59 +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
7b6d785f52
Rename wlr_surface->signals to events 2017-10-08 19:12:28 +02:00
Drew DeVault
74d31983b5 Center views on focused output 2017-10-08 13:02:08 -04:00
Drew DeVault
82a6598ca7 Merge pull request #243 from acrisci/feature/input-bounds
Use wl_surface input bounds for input handling
2017-10-08 12:52:53 -04:00
Drew DeVault
8dcf3bfdf7 Merge pull request #239 from emersion/center-views
Center views in rootston
2017-10-08 12:51:42 -04:00
Tony Crisci
db15ab77b4 use input bounds for pointer events 2017-10-08 12:33:39 -04:00
emersion
b72da6cc44
Only center toplevel xdg shell views 2017-10-08 18:21:39 +02:00
emersion
518ef46ef2
Activate new views 2017-10-08 18:19:05 +02:00
emersion
e66e18f4de
Only center toplevel wl_shell views 2017-10-08 18:02:11 +02:00
emersion
3774d6c2c0
Center wl shell views 2017-10-08 17:59:38 +02:00
emersion
3c6f2f29bf
Do not remove the commit listener 2017-10-08 17:28:19 +02:00
Drew DeVault
9e1ff2dce9 Merge pull request #140 from emersion/screenshooter
Add screenshooter
2017-10-08 10:06:41 -04:00
emersion
d09d01236b
Center xdg shell views 2017-10-08 12:17:25 +02: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
117586c872 bug: fix a subsurface location calculation 2017-10-07 16:53:10 -04:00
Tony Crisci
4f848000af Merge branch 'master' into feature/xdg-popup 2017-10-07 13:04:04 -04:00
Tony Crisci
4680943e74 xdg-seat: keyboard grabs 2017-10-07 12:52:02 -04:00
emersion
05096ab458
rootston: create screenshooter interface 2017-10-07 16:22:03 +02:00
Versus Void
9cab66f0f9 Make xwayland compile-time optional 2017-10-06 21:50:25 +00:00
Versus Void
decd87043f Add config option to disable Xwayland 2017-10-06 21:48:50 +00:00
emersion
f402598ee1
Match default keybindings with sway's 2017-10-06 17:10:24 +02:00
emersion
fbca280949
Unset input->active_view when view is destroyed 2017-10-06 16:51:16 +02:00
emersion
b21f783c34
Disconnect wl_shell clients when closing 2017-10-06 16:44:55 +02:00
emersion
ecc0f712af
Update rootston.ini.example 2017-10-06 16:09:43 +02:00
emersion
69aff9b35e
Implement wlr_xdg_toplevel_v6_send_close 2017-10-06 16:03:35 +02:00
emersion
972e9dbd1b
Add close command, add close for xwayland 2017-10-06 16:03:35 +02:00
emersion
8ff548cdba
Require exec prefix to execute shell commands 2017-10-06 16:02:40 +02:00
Drew DeVault
6aafc2f61a Merge pull request #223 from versusvoid/xwayland-activate
Activate only active xwayland views
2017-10-06 09:34:48 -04:00
Drew DeVault
528f000a7a Deactivate xwayland when focus leaves there 2017-10-06 09:34:22 -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
Versus Void
4d7ff3cb48 Activate only active xwayland views
Fix #217
2017-10-06 13:57:25 +03:00
Versus Void
641d08ce7e Transform hotspot with cursor
Fix #188
2017-10-06 09:07:08 +03:00
Drew DeVault
7d57c1463d Fix #210 2017-10-05 14:55:55 -04:00
Versus Void
1b1346462e Fix focusing null view 2017-10-05 21:32:49 +00:00
Tony Crisci
9bf03e1a71 bug: use milisecond granularity for time events 2017-10-05 14:25:56 -04:00
Tony Crisci
17b134e178 wlr-seat: pointer grab interface 2017-10-05 13:30:46 -04:00
Drew DeVault
d74a6d254f Merge pull request #198 from emersion/rootston-move-resize-rotate
rootston: force move, resize and rotate
2017-10-05 13:12:29 -04:00
Versus Void
c5df6ca900 Fix memory leaks 2017-10-05 20:01:56 +00:00
emersion
1a775adbde
rootston: fix rotated subsurfaces 2017-10-04 23:05:57 +02:00
emersion
3b226ba81a
rootston: rotation by steps 2017-10-04 22:01:54 +02:00
emersion
09a6d863cf
rootston: fix cursor coordinates for rotated subsurfaces 2017-10-04 21:17:16 +02:00
emersion
dd07618727
rootston: rotate cursor coordinates 2017-10-04 21:05:00 +02:00
Tony Crisci
30eabf38b8 Merge branch 'master' into feature/xdg-popup 2017-10-03 18:58:38 -04:00
emersion
f9dbc1841d
rootston: add meta-key to config file 2017-10-03 22:14:25 +02:00
Tony Crisci
4c9807d3a6 rootston-desktop: popup input handling 2017-10-03 15:57:43 -04:00
Tony Crisci
f9379f9a46 rootston-desktop: use window geometry for input bounds 2017-10-03 15:57:22 -04:00
emersion
9b88f25208
rootston: rotate views! 2017-10-03 21:06:32 +02:00
emersion
a40d38798c
rootston: force move and resize 2017-10-03 19:14:36 +02:00
Drew DeVault
eadda29e84 Set WAYLAND_DISPLAY in rootston environment
Duh
2017-10-03 10:35:54 -04: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
eb0b315c6c
exec command if it's not exit 2017-10-03 08:46:10 +02:00
emersion
c686699817
Free config->bindings 2017-10-03 08:46:10 +02:00
emersion
517a709cdd
Bind logo+q when no config file is specified 2017-10-03 08:46:10 +02:00
emersion
238ded1578
Use a command string rather than an action enum 2017-10-03 08:46:10 +02:00
emersion
97d0fe8976
Parse bindings in config, execute bindings 2017-10-03 08:46:10 +02:00
emersion
d32018f1ac
Use keysyms instead of keycodes 2017-10-03 08:46:10 +02:00
emersion
ab6c1f88e6
Add keyboard state to rootston 2017-10-03 08:46:09 +02:00
Tony Crisci
e003296c23 xdg-popup: render popups in the right place 2017-10-02 19:10:36 -04:00
Versus Void
e88f3887ca Move wlr-example.ini.example to rootston.ini.example and reference it from examples' config parser 2017-10-02 16:17:34 +00:00
Drew DeVault
aa8a4f12b7 Fix keyboard handling in examples 2017-10-01 11:35:22 -04:00
Drew DeVault
6241ac41d5 Forgot that file :/ 2017-10-01 11:24:11 -04:00
Drew DeVault
f2ea691b93 Add basic drawing tablet support to rootston 2017-10-01 11:21:55 -04:00
Drew DeVault
a471ed3ed0 Reverse loop in view_at
Looks for the top-most view now.
2017-09-30 14:43:24 -04:00
Drew DeVault
bfb6914cdf Merge pull request #160 from acrisci/feature/subcompositor
Subcompositor
2017-09-30 14:31:57 -04:00
Drew DeVault
e3438233f1 Merge pull request #179 from emersion/wl-shell-resize
rootston: add resize support for wl_shell
2017-09-30 13:45:42 -04:00
emersion
ce7d1faf36
Fix segfault in handle_request_resize 2017-09-30 19:38:31 +02:00
Tony Crisci
8f41c497a7 Merge branch 'master' into feature/subcompositor 2017-09-30 13:29:31 -04:00
Tony Crisci
4c1bd9bde8 input events for subsurfaces 2017-09-30 12:59:45 -04:00
emersion
ce270fd73e
Add resize support for wl_shell 2017-09-30 16:43:48 +02:00
emersion
7f5d0624d6
Add x, y, width, height arguments to wlr_xwayland_surface_configure 2017-09-30 16:33:04 +02:00
Tony Crisci
8c2e1ed3e6 rootston: render subsurfaces 2017-09-30 10:09:16 -04:00
emersion
e19b39b66b
Add view->resize for xwayland 2017-09-30 16:05:18 +02:00
Drew DeVault
40303b7a09 Merge pull request #175 from emersion/xdg-shell-resize
rootston: add xdg shell resize support
2017-09-30 09:12:20 -04:00
Tony Crisci
2e8543cac0 update rootston for surface changes 2017-09-30 08:55:40 -04:00
Tony Crisci
23e7411442 rootston: create desktop before input 2017-09-30 08:46:18 -04:00
emersion
74f2d0cd63
Completely fix resize offset 2017-09-30 14:02:09 +02:00
emersion
77d28183b5
Partially fix resize offset 2017-09-30 13:54:51 +02:00
emersion
28d4b475dc
Add edges support, remove get_input_bounds 2017-09-30 13:22:42 +02:00
emersion
33a97576ca
Add view_resize 2017-09-30 11:57:39 +02:00
emersion
97679b8e12
React to xdg shell resize requests 2017-09-30 10:39:06 +02:00
emersion
97346e7a1b
xwayland: add state support 2017-09-29 22:26:03 +02:00
emersion
98707c16ad
Code style 2017-09-29 20:44:00 +02:00
emersion
d8c86431e0
xwayland: add signals for configure, set_{class,title} 2017-09-29 18:28:38 +02:00
Drew DeVault
ada7fde6fb DRY up focus and implement z ordering 2017-09-28 19:48:55 -04:00
Drew DeVault
10240af6ea Handle input device removal 2017-09-28 19:05:38 -04:00
emersion
b7927078e9
x11 -> xwayland, window -> surface, fix some calloc sizes and wrong types 2017-09-28 23:26:31 +02:00
Drew DeVault
c92199a953 Merge pull request #163 from emersion/wl_shell-fixes
wl_shell fixes
2017-09-28 13:29:49 -04: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
55d2462180
Remove ping_timer when destroying wlr_wl_shell_surface 2017-09-28 13:34:22 +02:00
emersion
d41a4a0bae
wl_shell: gluten-free cosmetic variable renaming 2017-09-28 01:02:30 +02:00
emersion
dd9c15c69e
rootston: no need to implement get_input_bounds and activate for wl_shell views 2017-09-28 00:58:41 +02:00
emersion
63f277f3b9
rootston: handle request_move 2017-09-28 00:29:37 +02:00
emersion
d6c6b7c506
class_ -> class, free more stuff in destroy_shell_surface 2017-09-27 23:47:39 +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
b84d59403f Initial keyboard support in rootston 2017-09-23 18:32:03 -04:00
Drew DeVault
0ca7932c3f Implement xdg surface request_move 2017-09-23 18:18:19 -04:00
Drew DeVault
96b401c05d Implement tool tip -> click simulation 2017-09-23 17:52:21 -04:00
Drew DeVault
eaf6c0ccf4 Implement pointer motion and buttons 2017-09-23 17:48:13 -04:00
Drew DeVault
5b92d4fecf Fix rootston executable name 2017-09-23 14:56:09 -04:00
Drew DeVault
57c50c78f0 Implement wlr_cursor in rootston 2017-09-23 14:53:15 -04:00
Drew DeVault
e81e99d16d Render XDG shell surfaces 2017-09-23 11:13:18 -04:00
Drew DeVault
7523de7c61 Wire up pointer, start on cursor 2017-09-23 10:36:32 -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
550748681d Establish rootston headers & main 2017-09-22 23:30:40 -04:00