Commit Graph

3899 Commits

Author SHA1 Message Date
Ryan Dwyer
9480781229 Don't clear when using opaque lockscreen 2018-07-07 00:21:39 +10:00
Ryan Dwyer
3b842f4eed Detect opaque lockscreen when using a solid color 2018-07-07 00:17:08 +10:00
Ryan Dwyer
58b2c8ed14 Use infinite opaque region in swaylock 2018-07-07 00:03:49 +10:00
Ryan Dwyer
f1fadef923 Use pixman_region32_contains_rectangle 2018-07-07 00:03:49 +10:00
Ryan Dwyer
839c3a5500 Use opaque region to determine if frame done should be sent 2018-07-07 00:03:49 +10:00
Ryan Dwyer
58befcf2cd Don't send frame done to surfaces behind lockscreen
Also, when rendering, don't descend into the tree if the lockscreen is
active. Just render the lockscreen's surfaces.
2018-07-07 00:03:49 +10:00
emersion
b8ee88344a
Merge pull request #2220 from ianyfan/remove-input-fix
Attach destroy handler earlier for input devices
2018-07-06 14:37:52 +01:00
Drew DeVault
3d2595b102
Merge branch 'master' into remove-input-fix 2018-07-06 06:28:01 -07:00
Ian Fan
f63b209d51 Attach destroy handler earlier
This prevents it from being bypassed when the device has no seat configuration
2018-07-06 14:13:45 +01:00
Drew DeVault
a06d45a14d
Merge pull request #2217 from RedSoxFan/fix-663
Implement mode --pango_markup
2018-07-06 04:57:46 -07:00
Drew DeVault
ddbf437794
Merge pull request #2219 from RedSoxFan/fix-2111
Send pointer button events for keyboard-interactive layer surfaces
2018-07-06 04:56:59 -07:00
Brian Ashworth
c833ae64bc Fix pointer button events for layer surfaces 2018-07-05 23:01:35 -04:00
Brian Ashworth
78c08fb0a2 Implement mode --pango_markup 2018-07-05 18:12:14 -04:00
emersion
84109431f7
Merge pull request #2185 from swaywm/update-wlroots-1076
Updates per wlroots#1076
2018-07-05 22:23:15 +01:00
Drew DeVault
9ba59cb3c9
Merge pull request #2212 from BlueGone/fix-sway-input-man
Escape underscore in sway-input(5) man page to avoid invalid colors
2018-07-05 05:00:28 -07:00
Thomas Plaçais
ab5c8c31a0 Escape underscore in sway-input(5) man page to avoid invalid colors 2018-07-05 14:31:52 +02:00
emersion
51b215ad5c
Use wlr_surface.buffer_damage 2018-07-05 00:26:39 +01:00
Drew DeVault
d43500831a
Updates per wlroots#1076 2018-07-05 00:26:35 +01:00
emersion
dd869c158e
Merge pull request #2211 from RyanDwyer/fix-xdgtoplevel-tiled
Call view_set_tiled for mapping non-floating views
2018-07-05 00:12:09 +01:00
Ryan Dwyer
fc826b921f Call view_set_tiled for mapping non-floating views
Fixes #2209.
2018-07-05 09:04:15 +10:00
Drew DeVault
eed0b5614f
Merge pull request #2205 from RyanDwyer/fix-border-weirdness
Fix border weirdness
2018-07-04 06:45:12 -07:00
Ryan Dwyer
7efeacf16c
Merge pull request #2208 from RyanDwyer/instruction-use-after-free
Fix use after free in transaction code
2018-07-04 23:21:41 +10:00
Ryan Dwyer
50b401677b Fix use after free in transaction code
If we set an instruction as ready twice, it decreases the transaction's
num_waiting a second time and applies the transaction earlier than it
should. This no doubt has undesired effects, probably resulting in a use
after free.

Hopefully fixes the first part of #2207.
2018-07-04 22:58:17 +10:00
emersion
f414885b1d
Merge pull request #2200 from mucamaca/fix_transparency
Fix #1857 -> transparency in swaylock
2018-07-04 11:34:01 +01:00
Ryan Dwyer
4cb6c368a7 Fix boolean 2018-07-04 20:33:38 +10:00
emersion
bee5338146
Merge pull request #2203 from martinetd/ipc-server-display-destroy
ipc-server: add display destroy listener
2018-07-04 11:33:03 +01:00
Bor Grošelj Simić
ffc61e5f3f
Merge branch 'master' into fix_transparency 2018-07-04 12:19:13 +02:00
Ryan Dwyer
f156a25e64 Only call view_set_tiled when switching floating mode
Otherwise it repeatedly sets the view's border to the config's default.
2018-07-04 20:10:47 +10:00
Bor Grošelj Simić
484042efd8 Fix transparency in background images in swaylock 2018-07-04 12:09:05 +02:00
Dominique Martinet
b0918b1058 ipc-server: add display destroy listener and remove ipc_terminate
wl_event_source_remove() is illegal after display has been destroyed,
so just destroy everything when we still can.

==20392==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000001240 at pc 0x00000048e86e bp 0x7ffe4b557e00 sp 0x7ffe4b557df0
READ of size 8 at 0x607000001240 thread T0
    #0 0x48e86d in wl_list_insert ../common/list.c:149
    #1 0x7fdf673d4d7d in wl_event_source_remove src/event-loop.c:487
    #2 0x41b742 in ipc_terminate ../sway/ipc-server.c:94
    #3 0x40b1ad in main ../sway/main.c:440
    #4 0x7fdf6664c18a in __libc_start_main ../csu/libc-start.c:308
    #5 0x409359 in _start (/opt/wayland/bin/sway+0x409359)

0x607000001240 is located 48 bytes inside of 72-byte region [0x607000001210,0x607000001258)
freed by thread T0 here:
    #0 0x7fdf692c4880 in __interceptor_free (/lib64/libasan.so.5+0xee880)
    #1 0x7fdf673d371a in wl_display_destroy src/wayland-server.c:1097

previously allocated by thread T0 here:
    #0 0x7fdf692c4c48 in malloc (/lib64/libasan.so.5+0xeec48)
    #1 0x7fdf673d4d9e in wl_event_loop_create src/event-loop.c:522
    #2 0x40acb2 in main ../sway/main.c:363
    #3 0x7fdf6664c18a in __libc_start_main ../csu/libc-start.c:308
2018-07-04 18:47:11 +09:00
emersion
4afa18a0c0
Merge pull request #2202 from RyanDwyer/fix-focus-damage
Fix focus related damage
2018-07-04 09:23:07 +01:00
emersion
39534a1a61
Merge pull request #2201 from martinetd/setenv-wl-display
startup: move setenv WAYLAND_DISPLAY before config execs
2018-07-04 09:21:10 +01:00
Ryan Dwyer
0bd41a0dae Fix focus related damage
When you have an unfocused container (so one view is focused_inactive),
and you focus any other view in that container, the view with
focused_inactive was not damaged. This is because we damaged the
previous focus and new focus, but needed to damage the parent of the new
focus.
2018-07-04 15:38:08 +10:00
Dominique Martinet
c092f1fe6a startup: move setenv WAYLAND_DISPLAY before config execs
We would previously run all config commands without the environment,
which would appear to work as our socket name is the default one, but
wayland clients would start up in the wrong sway session.

(This explains why 'sometimes' my swayidle processes wouldn't die with
sway, as they weren't listening to the correct socket)
2018-07-04 13:52:26 +09:00
Bor Grošelj Simić
1d0963737e Fix #1857 2018-07-04 01:53:32 +02:00
emersion
8cc26130a6
Merge pull request #2194 from RyanDwyer/fix-incorrect-render
Don't return pending children in seat_get_active_current_child
2018-07-02 13:29:25 +01:00
Ryan Dwyer
1e4807efa0 Don't return pending children in seat_get_active_current_child
Fixes #2192.

seat_get_active_current_child is intended to return a child of the given
container which has finished its mapping transaction and is able to be
rendered on screen. The previous implementation was capable of returning
a pending child, which caused a child of a tabbed or stacked view to be
rendered prematurely while it was mapping.
2018-07-02 22:16:20 +10:00
emersion
c969923aba
Merge pull request #2193 from RyanDwyer/fix-fullscreen-damage
Fix damage on swaybar when view requests to exit fullscreen
2018-07-02 13:10:00 +01:00
Ryan Dwyer
d467452e5e Fix damage on swaybar when view requests to exit fullscreen
Fixes #2191
2018-07-02 21:58:21 +10:00
emersion
f611a4f9b1
Merge pull request #2187 from martinetd/idle-inhibit
Idle inhibit
2018-07-02 09:06:23 +01:00
emersion
defb73596f
Merge pull request #2186 from martinetd/static-analysis
Static analysis fixes
2018-07-02 09:06:02 +01:00
Dominique Martinet
71224781c4 idle_inhibit: move server data to its own struct 2018-07-02 09:29:16 +09:00
Dominique Martinet
072b334abc idle_inhibit: stop inhibitor when views become invisible 2018-07-02 09:29:16 +09:00
Dominique Martinet
e4bfb3bc98 Add idle inhibit unstable v1 support 2018-07-02 09:29:16 +09:00
Dominique Martinet
2725185aeb swaylock daemonize: fix leak of devnull fd 2018-07-02 08:03:41 +09:00
Dominique Martinet
4eeca10a8a load_config: move NULL path check before first use
Found through static analysis
2018-07-02 08:03:41 +09:00
Dominique Martinet
8c526bbb03 config include: fix leak on relative include path
Found through static analysis
2018-07-02 08:03:41 +09:00
Dominique Martinet
248ea93c1a bar config: fix uninitialized accesses on init error
If init fails halfway through it will call the destroy function,
which needs some coherent stuff filled.
Allocate with calloc and fill in what cannot fail first

Found through static analysis.
2018-07-02 08:03:41 +09:00
Dominique Martinet
e67c8cf1cb cmd_assign: fix leak on error
Found through static analysis.
2018-07-02 08:03:41 +09:00
Dominique Martinet
971b2f11f9 utf8_size: fix loop boundary
Found through static analysis
2018-07-02 08:03:41 +09:00