Commit Graph

21 Commits

Author SHA1 Message Date
Calvin Lee
33fdae2001 Remove Xembed Support
Xembed support is premature in sway and should be postponed. This commit
only removes swaybar starting xembedsniproxy, if users would like, they
can still start xembedsniproxy manually, however there will be no
official support.
2017-06-13 12:42:11 -07:00
Calvin Lee
1451ee8fd1 Reorganize Tray Code
Remove tray code from bar.c and render.c
2017-06-07 21:32:48 -07: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
9aed9d9359 UnGNUify the codebase 2017-03-10 23:41:24 -05:00
Drew DeVault
b2226ac655 Add client support for HiDPI
This adds HiDPI support to swaybar, swaybg, and swaylock.
2016-09-05 11:36:48 -04:00
Drew DeVault
61184e3208 Initial testing on hidpi clients 2016-09-05 10:32:21 -04:00
Drew DeVault
416417a54c Reorganize includes 2016-09-01 08:18:37 -04:00
Hummer12007
06f46955c0 Fix a warning 2016-07-18 00:57:49 +03:00
Drew DeVault
3bb880bf20 Implement configurable wrapping on bar ws scroll 2016-07-17 11:26:38 -04:00
Drew DeVault
147a88260a Fix #753 2016-07-16 09:09:22 -04:00
David Eklov
e38d6b94b8 Change workspace when mouse wheel is scrolled while hovering over the bar 2016-07-15 19:14:31 -05:00
David Eklov
250ddc66c6 Rename pointer_input::notify to indicate that is called on button clicks 2016-07-15 19:14:31 -05:00
David Eklov
a0c8799c80 Compute what workspace button is clicked
This commit does not do anything with this information other than logging it.
2016-07-14 17:18:01 -05:00
David Eklov
103954dd2b Setup to receive mouse click events and log them 2016-07-14 17:18:01 -05:00
David Eklov
d3752b4140 swaybar: Make swaybar a shell surface 2016-07-04 21:59:47 -05:00
Drew DeVault
c55ae9956b Fix another -Wunused-result 2016-04-29 11:04:21 -04:00
crondog
9c42557b66 Stop swaybar crashing without args 2016-03-31 20:56:14 +11:00
Mikkel Oscar Lyderik
af7a251806 Poll before wl_display_dispatch 2016-02-27 22:12:35 +01:00
Mikkel Oscar Lyderik
6d57f03028 Make single bar handle multiple outputs 2016-02-27 22:12:35 +01:00
Mikkel Oscar Lyderik
ed227f5664 swaybar: move headers to include/bar 2016-01-24 15:55:58 +01:00
Mikkel Oscar Lyderik
aa6ad09183 swaybar: rename state to bar 2016-01-24 14:22:19 +01:00