Commit graph

577 commits

Author SHA1 Message Date
emersion
4ca38b84ed
backend/drm: fix hardware cursors not moving
This adds back `wlr_output::needs_swap`. This allows a backend to
request buffer swaps even if the output isn't damaged. This is
needed by the DRM backend to trigger pageflips when the cursor
moves.
2018-01-20 16:43:14 +01:00
emersion
bc001e90e9
rootston: fix artifacts when un-maximizing a view 2018-01-20 01:04:35 +01:00
emersion
d6c74d8a16
rooston: restrict damage to output extents 2018-01-19 14:32:42 +01:00
emersion
e29a0df8c1
output: fix software cursors damage tracking 2018-01-19 14:08:47 +01:00
emersion
b296481007
rootston: remove repaint timer, listen for damage instead 2018-01-19 13:14:16 +01:00
emersion
7f9f918b78
rootston: damage output on mode change 2018-01-19 11:31:04 +01:00
emersion
977a401fa1
rootston: damage tracking for fullscreen views 2018-01-19 11:04:12 +01:00
emersion
59ba8f35ed
rootston: use surface damage 2018-01-18 21:34:10 +01:00
emersion
3ba447a8f9
rootston: fix damage test 2018-01-18 20:08:26 +01:00
emersion
bed7522108
rootston: fix segfault when destroying unmapped xwayland view
This happens when closing chromium for instance.
2018-01-18 19:50:34 +01:00
emersion
bde255933e
output: add wlr_output::damage, fixes #572 2018-01-18 19:47:21 +01:00
emersion
baa17ec755
rootston: damage whole output when created 2018-01-18 18:57:11 +01:00
emersion
8b3f3ddb7f
rootston: fix double-buffering artifacts 2018-01-18 17:18:21 +01:00
emersion
7c11d3e372
rootston: fix repaint timer for outputs with refresh rate 2018-01-18 16:36:49 +01:00
emersion
96d6f34edd
rootston: replace view_damage with view_apply_damage and view_damage_whole 2018-01-18 16:30:56 +01:00
emersion
7f5a538cb7
rootston: fix segfault when rendering surface outside output 2018-01-18 14:50:30 +01:00
emersion
5017d7f762
rootston: only draw damaged regions 2018-01-18 14:36:42 +01:00
emersion
01bcc2ab01
rootston: damage views when moved 2018-01-18 12:25:39 +01:00
emersion
5089f2d9fb
rootston: do not swap buffers when output isn't damaged 2018-01-18 11:42:54 +01:00
emersion
1a084807ce
rootston: do not redraw if output has no damage 2018-01-18 03:31:46 +01:00
Tony Crisci
b6f29e87e8 dont use pointer for modifiers 2018-01-17 08:31:15 -05:00
Tony Crisci
43896af90f Merge branch 'master' into modifier-fixes 2018-01-17 08:27:47 -05:00
emersion
6e9c652fc4
rootston: hide cursor if seat has no pointer 2018-01-17 14:01:13 +01:00
Tony Crisci
61bd79200c basic decorations 2018-01-16 19:04:26 -05:00
emersion
7f56ccd713
rootston: set real seat capabilities 2018-01-16 20:33:55 +01:00
Tony Crisci
3751a17321 decorate xwayland views 2018-01-16 07:51:10 -05:00
Tony Crisci
dc701b72fc abstract box matrix 2018-01-16 07:14:47 -05:00
Drew DeVault
b331c5c2c5
Merge pull request #549 from emersion/output-enabled
Add wlr_output::enabled
2018-01-15 20:53:13 -05:00
Tony Crisci
c690420501
Merge pull request #562 from emersion/xwayland-fullscreen-render-children
xwayland: render children window in fullscreen
2018-01-15 07:53:32 -05:00
Tony Crisci
e46d2dd0f8
Merge pull request #556 from raazvvann/heghe/idle-protocol
Idle protocol
2018-01-14 15:55:04 -05:00
emersion
65b28b3823
xwayland: render children window in fullscreen 2018-01-14 18:19:37 +01:00
Drew DeVault
66d4d2928f Remove unnecessary wlr_backend_destroy 2018-01-13 20:29:54 -05:00
Heghedus Razvan
440cf7112d Include idle protocol in rootston
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
2018-01-10 14:33:00 +02:00
emersion
e56b82e896
rootston: add toggle_outputs command 2018-01-07 00:37:36 +01:00
emersion
77fc0505e6
rootston: do not attempt to render disabled outputs 2018-01-07 00:30:55 +01:00
Tony Crisci
b40a5f084a keyboard grab enter with modifiers 2018-01-06 11:06:09 -05:00
Tony Crisci
0ef2df21f2 compositor modifier hook 2018-01-05 07:00:50 -05:00
emersion
be3a7b0017
Disable outputs in rootston config 2018-01-04 15:48:28 +01:00
Drew DeVault
b23bd8ea28
Merge pull request #544 from emersion/fix-views-outside-output-layout
Fix views outside output layout
2018-01-01 11:45:08 -05:00
Calvin Lee
5a26ed645a Allow configurable verbosity 2017-12-31 14:50:19 -07:00
emersion
1fe1d64042
Fix views outside output layout 2017-12-31 12:49:06 +01:00
Dominique Martinet
a477e5d302 roots_seat_destroy: also destroy seat in public function
Rework the functions a bit so that the handler does the bulk of the work
except for destroying the seat itself, and the main public function
just explicitely calls the handler and destroys the seat
2017-12-29 20:32:01 +01:00
Dominique Martinet
689004ff21 rootston seat: implement part of roots_seat_destroy
... and have it listen to seat destroy notifier
2017-12-29 19:00:51 +01:00
Björn Esser
ff13849624
config: Avoid clash with other config-headers 2017-12-27 17:13:58 +01:00
Tony Crisci
815d71a3aa validate grab serial for shell events 2017-12-27 08:04:01 -05:00
Tony Crisci
069f120b70 rootston: remove input event ring buffer 2017-12-27 07:31:53 -05:00
emersion
a79dc7df51
Merge pull request #524 from acrisci/role-committed
[wip] Role committed
2017-12-27 13:02:49 +01:00
Tony Crisci
68328700c7 wl-shell: role committed 2017-12-27 06:32:54 -05:00
Tony Crisci
d5ffa26564 xdg-shell: role-committed func 2017-12-27 06:15:25 -05:00
Tony Crisci
cbd76cb46f
Merge pull request #521 from acrisci/nop-command
add nop command
2017-12-27 05:49:34 -05:00
Björn Esser
57a09c8ca4
config: Put all defines into config.h 2017-12-26 18:51:27 +01:00
Tony Crisci
ebf27f2027 add nop command 2017-12-26 08:41:58 -05:00
Dominique Martinet
e85c2827c8 rootston: add arbitrary libinput config 'tap_enabled'
This ought to be enough to serve as an example for other compositors to
use.
2017-12-24 14:55:38 +01:00
Drew DeVault
eb410e0b6e
Merge pull request #508 from emersion/fix-rootston-seat-button-count
Fix rootston seat button count
2017-12-23 11:30:30 -08:00
emersion
a95d09d561
Add missing gtk-primary-selection interfaces 2017-12-22 22:22:29 +01:00
emersion
9e2d936b4a
Fix rootston seat button count 2017-12-22 15:06:12 +01:00
Tony Crisci
9871cde604 rootston: server backend check 2017-12-21 18:27:38 -05:00
Tony Crisci
ee39dff1e7 rootston: handle backend creation failed 2017-12-20 05:51:23 -05:00
emersion
4a36ba4bdd
Destroy multi backend on display destroy 2017-12-19 18:28:47 +01:00
Tony Crisci
c838679393 fix memory leaks 2017-12-18 14:53:24 -05:00
Drew DeVault
c91523c578
Merge pull request #499 from emersion/unknown-keymap
Do not segfault when loading an unknown keymap
2017-12-18 09:17:39 -05:00
emersion
2c31cac116
Do not segfault when loading an unknown keymap 2017-12-18 15:11:05 +01:00
emersion
db73c54f11
rootston: revert to auto backend 2017-12-18 10:10:23 +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
bc5bdb7793
Add headless input devices 2017-12-17 18:49:20 +01:00
emersion
0256de0002
Add full refresh rate support to custom modes 2017-12-17 18:02:55 +01:00
emersion
3970264ccf
Initialize headless backend 2017-12-17 12:56:42 +01:00
emersion
51db087210
Introduce fractional scaling 2017-12-15 01:00:03 +01:00
emersion
6b42bfad18
Merge branch 'master' into xwm-selection 2017-12-14 23:59:04 +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
6ef0219763
Merge branch 'master' into xwm-selection 2017-12-14 11:20:38 +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
emersion
925497fbea
Set default cursor image in rootston 2017-12-11 10:36:22 +01:00
Tony Crisci
b275d44bc3 rootston xcursor fixes 2017-12-09 12:10:09 -05:00
emersion
a3c0f97810
Make keyboard repeat info configurable 2017-12-08 17:03:05 +01:00
Tony Crisci
35188834db Merge branch 'master' into feature/xwm-selection 2017-12-08 09:22:44 -05:00
Tony Crisci
4c60072be5 move get_resize_name to xcursor 2017-12-08 06:08:06 -05:00
Tony Crisci
d74ac69f7b bring edges into wlr 2017-12-08 06:03:57 -05:00
emersion
91d72040e5
Configure outputs with make, model, serial in rootston
Added fallbacks in DRM backend in case EDID extension data for model and serial is missing.

Updates #403
2017-12-07 13:59:19 +01:00
emersion
dfe11a2b0e
Add display destroy listener in screenshooter, destroy display in rootston 2017-12-07 00:13:06 +01:00
emersion
bf2b58eb6d
Add wlr_output_set_scale
Fixes #465
2017-12-06 16:36:46 +01:00
Tony Crisci
86df909256 xwayland: remove xwayland param from xsurface methods 2017-12-03 17:30:57 -05:00
Drew DeVault
3f70043d00
Merge pull request #458 from acrisci/refactor/wlr-decoration-modes
wrap server decoration modes
2017-12-03 14:13:27 -05:00
Tony Crisci
344ca222db wrap server decoration modes 2017-12-03 13:39:29 -05:00
Tony Crisci
20545b09fa rootston: use wl-shell surface commit 2017-12-03 13:02:02 -05:00
emersion
eb763439f7
optimize a bit rootston renderer if there's no surface transform 2017-12-01 16:20:09 +01:00
emersion
d1b29a54b9
Refactor: rename matrices in rootston 2017-12-01 16:13:24 +01:00
emersion
acc8f36894
Fix pointer input for transformed surfaces 2017-12-01 16:08:01 +01:00
emersion
f4754ad1a2
Fix surface transforms 2017-11-30 23:58:12 +01:00
Tony Crisci
5d7eb438d9
Merge pull request #437 from emersion/fullscreen
Fullscreen support
2017-11-30 03:25:05 -05:00
Tony Crisci
903ba1c9b3 rootston: maximize command 2017-11-22 15:33:17 -05:00
Tony Crisci
fc17c74516 xwayland: clean up seat setting 2017-11-22 08:23:23 -05:00
Tony Crisci
b0683874e9 xwm: send selection data 2017-11-22 08:10:06 -05:00
Tony Crisci
39e2ea8420 xwm: get selection targets 2017-11-21 18:09:25 -05:00
emersion
3262661e1e
Fix HiDPI support 2017-11-21 20:58:15 +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
9a6f799d8f
Add fullscreen command, fix view_at with fullscreen views 2017-11-21 10:37:53 +01:00
emersion
9e29621ec3
Always center fullscreen view on screen 2017-11-21 10:14:50 +01:00
emersion
17d9e2ce35
Unify view events naming, remove client from event structs 2017-11-21 09:50:00 +01:00
emersion
5a8bbc6203
Fix GCC build 2017-11-20 20:54:54 +01:00
emersion
54f1135c05
Fix fullscreen in xdg-shell 2017-11-20 20:53:13 +01:00
emersion
a7a221698e
Merge branch 'master' into fullscreen 2017-11-20 19:47:27 +01:00
emersion
abab2902f5
Check for subsurfaces and popups before using wlr_output_set_fullscreen_surface 2017-11-20 19:45:10 +01:00
emersion
6a06c3d907
Fix segfault when closing xwayland views 2017-11-20 18:05:24 +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
1d08d31709
Merge branch 'master' into laggy-move-resize 2017-11-20 14:35:31 +01:00
Tony Crisci
4d6b3618b8 rootston: remove unmapped surface from desktop 2017-11-20 07:40:22 -05:00
emersion
272e0858e4
Fix laggy move-resize for wl-shell views 2017-11-20 12:16:10 +01:00
emersion
0153a0ed8f
Fix laggy move-resize for xwayland views 2017-11-20 12:05:21 +01:00
emersion
ac6385689f
Set min view size to 1x1 2017-11-20 11:10:43 +01:00
emersion
c0e2dc6f78
Update view position for previous configure_ack too 2017-11-19 22:55:44 +01:00
emersion
7904b625f0
Merge branch 'master' into laggy-move-resize 2017-11-19 22:28:51 +01:00
emersion
0191f3f711
Improve roots_seat_cycle_focus 2017-11-19 21:54:11 +01:00
emersion
9687950de1
Raise the view on the desktop even if already focused in the seat 2017-11-19 19:30:48 +01:00
emersion
97ddd2d1df
Add roots_seat_cycle_focus 2017-11-19 19:21:18 +01:00
emersion
bf41e7a794
Make the close command use roots_seat_get_focus, rename a few symbols 2017-11-19 19:14:31 +01:00
emersion
a8b31da52c
Remove roots_seat_{add,remove}_view 2017-11-19 18:15:11 +01:00
emersion
76e8e1a6ad
Merge branch 'master' into seat-views 2017-11-19 17:56:26 +01:00
Tony Crisci
bd8cdf1e9f rootston: remove grab listeners 2017-11-19 10:20:32 -05:00
Tony Crisci
390b526450 Merge branch 'bug/xwayland-ready-listener' into refactor/wlr-drag-icon 2017-11-19 10:11:39 -05:00
Tony Crisci
90d2eca218 rootston: xwayland ready listener 2017-11-19 10:07:30 -05:00
Tony Crisci
3b74db467b data-device: wlr-drag-icon 2017-11-19 09:33:55 -05:00
emersion
72d877658a
Merge branch 'master' into seat-views 2017-11-18 22:18:25 +01:00
Tony Crisci
f17c3947ea rootston: seat/cursor 80col cleanup 2017-11-18 14:03:31 -05:00
Tony Crisci
f277f28eef Merge branch 'master' into feature/wlr-seat-touch 2017-11-18 13:43:25 -05:00
emersion
5b13f51dfc
Add per-seat cursor configuration 2017-11-18 17:34:24 +01:00
emersion
cd566ccd8e
Add cursor theme to rootston config 2017-11-18 09:47:53 +01:00
emersion
7375931686
Fix typo making GCC build fail 2017-11-18 09:15:48 +01:00
emersion
8693bbd6b1
Update view coords when no configure is required 2017-11-18 09:13:31 +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
emersion
27937add76
Merge branch 'master' into laggy-move-resize 2017-11-17 23:29:47 +01:00
emersion
632759a499
Fix segfault when xwayland is disabled 2017-11-17 15:28:22 +01:00
emersion
1523082d5d
Remove outdated comment 2017-11-17 12:47:30 +01:00
emersion
bb6d34e7a5
rootston: add per-seat views 2017-11-17 12:45:07 +01:00
Tony Crisci
f61986e8db rename touch slot to touch id 2017-11-16 17:53:52 -05:00
Tony Crisci
fb18e345a6 wlr-seat: return serial from touch down interface 2017-11-16 17:44:10 -05:00
Tony Crisci
584ff1df4c Merge branch 'master' into feature/wlr-seat-touch 2017-11-16 16:19:17 -05:00
emersion
a52ca9482a
Various keyboard fixes
* Ensure keysyms state is always updated
* Check if pressed keysyms are exactly the binding keysyms
* Do not include modifiers in list of keysyms, these are special cases
2017-11-16 18:58:33 +01:00
emersion
e674266b44
Fix example config file 2017-11-16 16:34:39 +01:00
emersion
53d4cb47ff
Refactor rootston keyboard 2017-11-16 16:13:23 +01:00
emersion
bb79ada49f
Fix a bunch of mistakes detected with scan-build 2017-11-16 10:30:54 +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
6a516f7c41 basic touch dnd 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
bb973ff27d
Remove remaining buffer_{width,height} usage 2017-11-14 21:18:34 +01:00
emersion
2f44140f4a
Don't use buffer size 2017-11-14 15:33:29 +01:00
emersion
94b20da3ce
Fix popups position for rotated views 2017-11-14 10:20:20 +01:00
emersion
f8b43940b1
Merge branch 'master' into cursor-scale 2017-11-12 22:12:50 +01:00
emersion
2e312a7e27
Fix hidden cursor when output is added before cursor 2017-11-12 22:11:17 +01:00
Drew DeVault
a317ecdab8 Run startup command after xwayland is ready 2017-11-12 16:01:48 -05:00
emersion
28fc813ca9
Merge branch 'master' into cursor-scale 2017-11-12 21:16:45 +01:00
Drew DeVault
51ef12f128
Merge pull request #416 from acrisci/bug/set-keyboard-on-add
rootston: set keyboard for seat on keyboard add
2017-11-12 13:47:55 -05:00
Tony Crisci
a69381ef0c rootston: set keyboard on keyboard add 2017-11-12 12:15:39 -05:00
Drew DeVault
38e14de240
Merge pull request #414 from emersion/fix-hidpi-rotated-input
Fix rotated views on HiDPI outputs
2017-11-12 09:56:13 -05:00
Drew DeVault
1e0e73efaa Spawn views on last active output 2017-11-12 09:55:28 -05:00
emersion
5d986f1e87
Remove unnecessary include 2017-11-12 15:49:27 +01:00
emersion
454bea678b
Fix rendering of rotated views on HiDPI outputs 2017-11-12 12:54:45 +01:00
emersion
0b3f83d93a
Fix pointer input for rotated views on HiDPI outputs 2017-11-12 12:38:08 +01:00
emersion
8605243459
Introduce wlr_xcursor_manager 2017-11-12 11:10:56 +01:00
emersion
2dccb11741
rootston: keep one xcursor_theme per seat 2017-11-11 23:53:45 +01:00
emersion
09279b90a6
Add wlr_output.serial 2017-11-11 19:09:34 +01:00
emersion
aaf0691883
rootston: add roots_xcursor_theme
roots_xcursor_theme loads multiple wlr_xcursor_theme at different scales.
2017-11-11 18:42:14 +01:00
emersion
ac1573b0e7
Add scale parameter to wlr_cursor_set_image 2017-11-11 17:27:44 +01:00
Tony Crisci
7072ac87fd rootston: config.c 80 col 2017-11-11 10:59:50 -05:00
Tony Crisci
1db3b55128 rootston: prefix config structs and functions 2017-11-11 10:59:04 -05:00
Tony Crisci
4ccadf713b rootston: fix formatting for xwayland config 2017-11-11 10:40:56 -05:00
Tony Crisci
2a9dc60f28 Merge branch 'master' into feature/multiseat 2017-11-11 09:59:39 -05:00
emersion
eb89f1dcd2
Fix resize issues with some xdg-shell apps.
Also renames view_get_size to view_get_box to be more consistent with wlroots API and make it more obvious that x,y are set (while in roots_view.get_size this isn't the case).
Fixes #407
2017-11-11 15:39:15 +01:00
Tony Crisci
27a3a810ab rootston: fix multiseat focus 2017-11-10 08:27:45 -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
aafb00a15f Fix centering views on scaled outputs 2017-11-10 08:21:23 -05:00
Tony Crisci
1472dbda74 rootston: roots_keyboard null check 2017-11-09 18:32:54 -05:00
Tony Crisci
d6513cef5d rootston: add missing properties to kb config merge 2017-11-09 17:47:59 -05: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
0204f811b4
Remove xwayland view listeners on destroy 2017-11-09 20:08:43 +01:00
emersion
26dadacb71
Add wl_shell support for maximized views 2017-11-09 20:06:05 +01:00
Drew DeVault
75fd9b8426 Remove extraneous keyboard send_enter 2017-11-09 08:40:15 -05:00
Drew DeVault
66587eb430 Merge remote-tracking branch 'origin/master' into hidpi 2017-11-09 08:36:27 -05:00
emersion
758514fe5d
Fix xwayland _NET_WM_STATE handling 2017-11-09 11:21:55 +01:00
Tony Crisci
c680ace5e8 rootston: remove old cursor implementation 2017-11-08 20:25:02 -05:00
Tony Crisci
79f5bd6ef8 Merge branch 'master' into feature/multiseat 2017-11-08 20:21:59 -05:00
emersion
2118c691b1
Add maximize support for xwayland in rootston 2017-11-08 23:03:07 +01:00
emersion
4df8be1a8f
Better UX when moving/resizing/rotating maximized views 2017-11-08 22:25:06 +01:00
Tony Crisci
06642859f1 rootston: drag icons 2017-11-08 15:35:47 -05:00
Tony Crisci
428bf18ec7 rootston: request set cursor 2017-11-08 15:23:56 -05:00
Tony Crisci
992f931ae9 rootston: cleanup for multiseat 2017-11-08 14:53:08 -05:00