Commit Graph

303 Commits

Author SHA1 Message Date
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
Tony Crisci 53021f8ed4 rootston: break up input.h 2017-11-02 20:31:19 -04:00
emersion 3f4ad47421
Use compositor theme for xwm cursor 2017-11-02 16:49:22 +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 60c018c017
Fix hidden software cursors, fix cursor transformations on DRM backend 2017-11-01 14:25:41 +01:00
Drew DeVault ed74f473d6 Fix various rebase-related bugs 2017-11-01 08:57:30 -04:00
Drew DeVault 7f76f46318 Adjust rendering to compensate for disparate scale
Something about my math is off, but I'm not certain what. Would
appreciate a second opinion.
2017-11-01 08:51:59 -04:00
Drew DeVault bafb970871 View view_at (and pointer events) for hidpi 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
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