Commit graph

6787 commits

Author SHA1 Message Date
Johannes Schramm
dcc743047b style: include brackets for if/while/for, even if it's a single statement 2018-01-21 16:28:21 +01:00
emersion
d8b36357e4
rootston: add roots_view_child::destroy 2018-01-21 15:13:10 +01:00
emersion
a636d72fc7
rootston: track subsurface damage 2018-01-21 14:50:37 +01:00
emersion
eeffe11337
surface: add wlr_surface new_subsurface and wlr_subsurface destroy events 2018-01-21 14:22:33 +01:00
emersion
c6aab6f56c
Add docs and comments 2018-01-21 11:11:25 +01:00
emersion
0365b587f0
output: add damage tracking via buffer age 2018-01-21 00:06:35 +01:00
emersion
78c13ead16
backend/x11: force rendering the whole output 2018-01-20 18:10:11 +01:00
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
ddafcb86a2
surface: add resize damage 2018-01-20 00:52:43 +01:00
emersion
584f06ad2f
backend/drm: do not try a pageflip is another one is in pending 2018-01-19 23:46:40 +01:00
emersion
f0f97280a0
backend/drm: fix retry pageflip 2018-01-19 23:35:23 +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
a0f24b809e
output: add damage event 2018-01-19 13:13:46 +01:00
emersion
7f9f918b78
rootston: damage output on mode change 2018-01-19 11:31:04 +01:00
emersion
443bd4cd89
output: fullscreen surface damage tracking 2018-01-19 11:20:27 +01:00
emersion
977a401fa1
rootston: damage tracking for fullscreen views 2018-01-19 11:04:12 +01:00
emersion
f061a1da63
output: fix software cursor artifacts 2018-01-18 22:18:53 +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
6fa0a91ee2
backend/wayland: fix segfault in wlr_wl_output_destroy 2018-01-18 13:06:57 +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
Drew DeVault
1fbd6cb0f0
Merge pull request #553 from acrisci/modifier-fixes
compositor modifier hooks
2018-01-17 09:38:58 -05: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
Tony Crisci
f2698a8960
Merge pull request #569 from emersion/hide-seat-cursor
rootston: hide cursor if seat has only keyboards
2018-01-17 08:20:33 -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
bcb58b5caa
Merge pull request #567 from Timidger/example-logging
Fixed logging for examples
2018-01-15 23:06:13 -05:00
Timidger
264ef0c261
Fixed logging for examples 2018-01-15 22:51:00 -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
emersion
0eebaf98d0
drm: do not pageflip when enabling output 2018-01-15 21:49:37 +01: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
emersion
38887a09dc
Merge pull request #564 from agx/master
Don't crash if crtc->cursor is NULL
2018-01-15 13:41:58 +01:00
Guido Günther
3101c300b1 Don't crash if crtc->cursor is NULL
Same as what atomic_crtc_set_cursor does

 Core was generated by `_build/rootston/rootston'.
 Program terminated with signal SIGSEGV, Segmentation fault.
 0  0xb6f28a1c in atomic_crtc_move_cursor (drm=0x1ebc8e8, crtc=0x1ead498, x=0, y=0) at ../backend/drm/atomic.c:170
 170		if (!crtc || !crtc->cursor) {
 (gdb) bt
 0  0xb6f28a1c in atomic_crtc_move_cursor (drm=0x1ebc8e8, crtc=0x1ead498, x=0, y=0) at ../backend/drm/atomic.c:170
 1  0xb6f2a856 in wlr_drm_connector_move_cursor (output=0x2242b28, x=0, y=0) at ../backend/drm/drm.c:634
 2  0xb6f3cea0 in wlr_output_cursor_set_image (cursor=0x21a0338, pixels=0x22e1290 "", stride=24, width=24, height=24, hotspot_x=4, hotspot_y=4) at ../types/wlr_output.c:516
 3  0xb6f39da2 in wlr_cursor_set_image (cur=0x22cfc90, pixels=0x22e1290 "", stride=24, width=24, height=24, hotspot_x=4, hotspot_y=4, scale=1) at ../types/wlr_cursor.c:310
 4  0xb6f44d2a in wlr_xcursor_manager_set_cursor_image (manager=0x22cfd10, name=0x434420 "left_ptr", cursor=0x22cfc90) at ../types/wlr_xcursor_manager.c:80
 5  0x00431c0a in roots_seat_configure_xcursor (seat=0x22cef08) at ../rootston/seat.c:515
 6  0x0043137c in roots_seat_init_cursor (seat=0x22cef08) at ../rootston/seat.c:210
 7  0x004315ec in roots_seat_create (input=0x218d220, name=0x434594 "seat0") at ../rootston/seat.c:289
 8  0x0042ecba in input_get_seat (input=0x218d220, name=0x434594 "seat0") at ../rootston/input.c:39
 9  0x0042ed04 in input_add_notify (listener=0x218d228, data=0x218d3b0) at ../rootston/input.c:54
 10 0xb6f2f2e6 in wl_signal_emit (signal=0x1ea548c, data=0x218d3b0) at /usr/include/wayland-server-core.h:387
 11 0xb6f2f572 in input_add_reemit (listener=0x1ea9990, data=0x218d3b0) at ../backend/multi/backend.c:101
 12 0xb6f2db7e in wl_signal_emit (signal=0x1ea992c, data=0x218d3b0) at /usr/include/wayland-server-core.h:387
 13 0xb6f2ddaa in handle_device_added (backend=0x1ea9920, libinput_dev=0x2292598) at ../backend/libinput/events.c:87
 14 0xb6f2e164 in wlr_libinput_event (backend=0x1ea9920, event=0x2292b78) at ../backend/libinput/events.c:198
 15 0xb6f2d678 in wlr_libinput_readable (fd=23, mask=1, _backend=0x1ea9920) at ../backend/libinput/backend.c:28
 16 0xb6f2d7c0 in wlr_libinput_backend_start (_backend=0x1ea9920) at ../backend/libinput/backend.c:74
 17 0xb6f27170 in wlr_backend_start (backend=0x1ea9920) at ../backend/backend.c:30
 18 0xb6f2f320 in multi_backend_start (wlr_backend=0x1ea5480) at ../backend/multi/backend.c:22
 19 0xb6f27170 in wlr_backend_start (backend=0x1ea5480) at ../backend/backend.c:30
 20 0x0042fbc6 in main (argc=1, argv=0xbe89dd04) at ../rootston/main.c:60
2018-01-15 13:37:53 +01:00