Commit graph

3289 commits

Author SHA1 Message Date
Yury Krivopalov 8f4bc0a374 swaybar: Group child processes for signalling
Fixes child proccess killing, when status_command is a complex command
like "i3status | wrapper.sh".

Set the process group id of the child process by calling `setpgid` after
forking and before calling `exec`.

The process group ID will be set to the process ID of the forked
process. Processes spawned by this child process will also have this
group ID.

Send signals to the process group with `killpg`. This will send the
signal to all of the process group.
2017-06-12 23:12:31 +03:00
Calvin Lee 0a71aa6e97 Fix Catching NewIcon Signal
The unique name was not copied out of the wire marshalled DBus message
data so `sni_uniq_cmp` would always match against junk data.
2017-06-08 08:24:35 -07:00
Drew DeVault 154cc8a9c3 Merge pull request #1235 from vaartis/patch-1
include stdint to be compaitable with musl
2017-06-08 09:56:34 -04:00
Ekaterina Vaartis 4bf8b6b43b include stdint to be compaitable with musl 2017-06-08 16:40:17 +03:00
Calvin Lee 1451ee8fd1 Reorganize Tray Code
Remove tray code from bar.c and render.c
2017-06-07 21:32:48 -07:00
Drew DeVault 790887ce76 Fix cairo blending on tray icons 2017-06-07 22:45:33 -04:00
Calvin Lee 843ad38b3c Implement Tray Icons
This commit implements the StatusNotifierItem protocol, and enables
swaybar to show tray icons. It also uses `xembedsniproxy` in order to
communicate with xembed applications.
The tray is completely optional, and can be disabled on compile time
with the `enable-tray` option. Or on runtime with the bar config option
`tray_output none`.

Overview of changes:
In swaybar very little is changed outside the tray subfolder except
that all events are now polled in `event_loop.c`, this creates no
functional difference.

Six bar configuration options were added, these are detailed in
sway-bar(5)

The tray subfolder is where all protocol implementation takes place and
is organised as follows:

tray/sni_watcher.c:
	This file contains the StatusNotifierWatcher. It keeps track of
	items and hosts and reports when they come or go.
tray/tray.c
	This file contains the StatusNotifierHost. It keeps track of
	sway's version of the items and represents the tray itself.
tray/sni.c
	This file contains the StatusNotifierItem struct and all
	communication with individual items.
tray/icon.c
	This file implements the icon theme protocol. It allows for
	finding icons by name, rather than by pixmap.
tray/dbus.c
	This file allows for asynchronous DBus communication.

See #986 #343
2017-06-07 17:49:16 -07:00
Drew DeVault fd47a30e75 Merge pull request #1232 from johalun/master-freebsd
FreeBSD fixes
2017-06-06 09:34:01 -04:00
johalun 7fef283044 FreeBSD fixes
Increase _POSIX_SOURCE value where needed.
Increase _XOPEN_SOURCE value where needed.
Conditionally link to libcap (only on Linux).
Possibly some trailing whitespace fixes (automatic).
2017-06-06 09:45:50 +02:00
Drew DeVault 5ed533a943 Revert "Drop epoll dependency"
This reverts commit 91f2bf81bf.
2017-05-17 13:11:49 -04:00
Drew DeVault 91f2bf81bf Drop epoll dependency 2017-05-17 13:10:33 -04:00
Drew DeVault 6df0f9a7e4 Merge pull request #1218 from Hummer12007/suicaps
Terminate when both suid bit and filecaps are set
2017-05-11 12:48:30 -04:00
Mykyta Holubakha f470fa58a3 Replace spaces with tabs in resolve_path 2017-05-11 19:38:32 +03:00
Mykyta Holubakha 93cf21fb9a Terminate when both suid bit and filecaps are set 2017-05-11 19:33:57 +03:00
Mykyta Holubakha f736198c31 Initialise logging earlier 2017-05-11 19:29:25 +03:00
Drew DeVault 46fbb413f2 Mention Patreon in README.md
Does this make me a sellout
2017-05-11 11:47:42 -04:00
Drew DeVault ee81b1aecb Merge pull request #1211 from wdbw/missing-send-event
Add missing send-event mode to sway-input(5)
2017-05-06 08:43:48 -04:00
wdbw 264a9ee9d8 Add missing send-event mode to sway-input(5)
Also, fix a small typo.
2017-05-06 10:45:17 +01:00
Drew DeVault 781fc604b4 Merge pull request #1209 from janza/mouse-bindings
Add mouse button bindings
2017-05-04 17:17:13 -04:00
Josip Janzic 400998d6d2 Add mouse button bindings
Adds support for bindings like:

bindsym button3 floating toggle
bindsym $mod+button3 floating toggle
2017-05-04 23:00:03 +02:00
Drew DeVault 02d1ae7e27 Merge pull request #1206 from zandrmartin/document-font-command
document font command
2017-05-01 12:58:02 -04:00
Zandr Martin 51ce752ebf
document font command 2017-05-01 12:53:07 -04:00
Drew DeVault 106868ddbf Update config.in
swaymsg -t get_inputs now pretty prints its output, so this warning is
obsolete
2017-04-30 22:52:19 -04:00
Drew DeVault 5e845a38f5 Merge pull request #1204 from zandrmartin/prevent-layout-auto-crash
prevent crash when `layout auto` is missing args
2017-04-29 14:16:20 -04:00
Zandr Martin f65a88e68d
prevent crash when layout auto is missing args 2017-04-29 14:02:07 -04:00
Drew DeVault 34fae764a5 Add HACKING.md 2017-04-29 10:54:08 -04:00
Drew DeVault 816ceddcbd Set child border to background if not specified 2017-04-29 10:07:18 -04:00
Drew DeVault eab29ca0ce Merge pull request #1201 from SirCmpwn/fix-colors
Support specifying fewer than 5 colors
2017-04-29 10:04:13 -04:00
Drew DeVault 02812a2e4d Support specifying fewer than 5 colors
This doesn't work, I'm not sure why. The color structs definitely get
changed but if you specify fewer than 5, it renders with the defaults.
2017-04-29 09:56:07 -04:00
Drew DeVault a5c07dde6a Implement KDE's server-side decoration protocol 2017-04-28 20:32:05 -04:00
Drew DeVault 1376de4f46 Update .build.yml 2017-04-26 22:37:15 -04:00
Drew DeVault 11b4c3454c Merge pull request #1196 from SirCmpwn/no_focus
Implement no_focus
2017-04-26 17:20:12 -04:00
Drew DeVault 537261f23f Fix handling of floating windows 2017-04-26 17:14:24 -04:00
Drew DeVault ffd0d020d6 Update sway(5) 2017-04-26 15:35:54 -04:00
Drew DeVault 51143a75af Implement no_focus
Ref #2
2017-04-26 15:29:42 -04:00
Drew DeVault 3c1fc00f12 Merge pull request #1194 from snoack/version
Add -DVERSION flag for release version numbers
2017-04-26 10:18:03 -04:00
Drew DeVault 586eca0e4c Fix link to dotfiles, closes #1193 2017-04-26 10:07:32 -04:00
Sebastian Noack 173b338567 Add -DVERSION flag for release version numbers 2017-04-26 15:56:46 +02:00
Drew DeVault aca0710b9e Merge pull request #1187 from 4e554c4c/master
Fix typo in sway(5)
2017-04-24 03:08:28 -04:00
Calvin Lee 0dc7e9f514 Fix typo in sway(5) 2017-04-23 21:57:23 -06:00
Drew DeVault d2de52209e Merge pull request #1184 from JerziKaminsky/logging2
More Logging Fixes
2017-04-20 13:00:56 -04:00
Drew DeVault 39a65a6181 Merge branch 'master' into logging2 2017-04-20 12:55:34 -04:00
Jerzi Kaminsky 8ecb490679 Make sway_abort() report location 2017-04-20 19:20:40 +03:00
Drew DeVault 382b678100 Merge pull request #1183 from sleep-walker/master
explicitly ignore unused return value
2017-04-19 09:17:00 -04:00
Tomáš Čech 974be01e83
explicitly ignore unused return value
fixes issue#1182
2017-04-19 10:16:24 +02:00
Drew DeVault 94ad169eb6 Merge pull request #1181 from wasamasa/bugfix-initial-scratchpad-size
Use i3's dimensions for initial scratchpad views
2017-04-18 17:57:07 -04:00
Drew DeVault 35603b2341 Merge pull request #1178 from 4e554c4c/fork
Prevent sway from duplicating on a failed fork
2017-04-18 17:49:23 -04:00
Vasilij Schneidermann 0f31323659 Use i3's dimensions for initial scratchpad views
See https://github.com/i3/i3/blob/master/src/scratchpad.c#L196-L197
2017-04-18 23:47:09 +02:00
Calvin Lee cee26500a8 Prevent sway from duplicating on a failed fork
Also remove a useless `sway_log` and replace it with a pipe
2017-04-18 15:25:37 -06:00
Drew DeVault 17593ac559 Merge pull request #1180 from wasamasa/feature-move-to-scratchpad
Feature move to scratchpad
2017-04-18 15:50:54 -04:00