summaryrefslogtreecommitdiff
path: root/swaybar
AgeCommit message (Collapse)AuthorLines
2018-03-27swaybar: correctly render min_width for stringsFurkan Sahin-1/+8
fixes #1635
2018-03-24Merge remote-tracking branch 'remotes/origin/bugfix/iconsnotfound' into 0.15Furkan Sahin-1/+5
2018-03-24Fixed missing icons bug in index.theme parsing and a path concatenation bug ↵Furkan Sahin-1/+5
in find_inherits()
2018-02-04Handle swaybar status line errorsFurkan Sahin-8/+84
The event loop API was redesigned to avoid race conditions as well. Fixes #1583
2018-01-12Calculate positions of empty blocks in swaybarFurkan Sahin-4/+6
2018-01-07Handle forward/back mouse buttons in swaybarFurkan Sahin-0/+6
2017-11-22Keep tray separateFurkan Sahin-1/+3
2017-11-22Fix icon updating on secondary outputsFurkan Sahin-1/+25
2017-11-16Allow correct item to get icon updates for both kde and gtk implementationFurkan Sahin-1/+1
2017-11-15Fix `get_icon`Furkan Sahin-14/+36
Property reply functions are now notified if there was an error with the property instead of silent failure. Also issues in `get_item` were resolved.
2017-11-09Add `dbus_get_prop_async` utilityFurkan Sahin-293/+120
This drastically reduces the amount of boilerplate needed to get a property from a bus object.
2017-11-08Plug memory `dbus_message_iter_get_signature` leakFurkan Sahin-14/+14
2017-10-31Correct context menu placement if bar is bottomFurkan Sahin-1/+7
Originally the context menu would draw at the top of the screen, which is incorrect.
2017-10-28Removed trailing comma from swaybar click event jsonFurkan Sahin-1/+1
2017-10-27Reply in case of object path itemFurkan Sahin-2/+4
2017-10-27Allow correct item to get icon updatesFurkan Sahin-1/+7
2017-10-26Improve Icon Theme ImplimentationFurkan Sahin-5/+27
2017-10-26Prevent segfault in `get_items()`Furkan Sahin-18/+30
One segfault resulted from an incorrect dbus call in sni_watcher. The other from duplicate items in the sni host.
2017-10-25Allow multiple object paths for each connectionFurkan Sahin-2/+16
2017-10-25Allow paths to icons in iconName propertyFurkan Sahin-1/+35
2017-10-24Allow registering StatusNotifierItems by obj pathFurkan Sahin-31/+308
This commit impliments a KDE hidden feature where a SNI could be registered by object path instead of well-known name. This should allow libappindicator programs to work correctly under sway. See #1372
2017-12-14Adaptions for API change in json-c v0.130.15.1Furkan Sahin-3/+2
Lift restriction on json-c <= 0.12.1 ipc-server: Acquire ownership of referenced json_object properly When adding a referenced json_object with an unknown lifetime to another json_object, it must be done with a wrapped call to json_object_get() to acquire the ownership of that json_object.
2017-12-17Revert "Merge remote-tracking branch 'besser82/bugfix/json-c' into 0.15"Furkan Sahin-2/+3
This reverts commit a427d79c013a14ce196ca8dac5644ff2c76637ca, reversing changes made to f896cb48106e704a57f93790b46fa7e183d646eb.
2017-12-14Adaptions for API change in json-c v0.13Furkan Sahin-3/+2
2017-10-15Fix include path to input-event-codes.h for FreeBSD.Furkan Sahin-0/+4
2017-10-14Fix build on FreeBSD adjusting/removing _XOPEN_SOURCE declaration.Furkan Sahin-1/+1
2017-09-23swaybar protocol: handle button 4 and 5Furkan Sahin-0/+19
i3 bar handles scroll events as button 4 and 5. An example use case would be volume up/down.
2017-08-30styling fixesFurkan Sahin-2/+2
2017-08-29styling fixesFurkan Sahin-12/+12
2017-08-29style fixesFurkan Sahin-2/+1
2017-08-29click_events as documented at https://i3wm.org/docs/i3bar-protocol.htmlFurkan Sahin-10/+127
2017-08-12Prevent crash if DBus connection is NULLFurkan Sahin-1/+1
Fixes #1307
2017-07-20[swaybar] fix non-dbus buildFurkan Sahin-1/+1
Swaybar's CMakeLists.txt uses the enable-tray option directly to decide whether to build the tray. This leads to a compilation error if dbus is not installed. This patch uses the ENABLE_TRAY variable instead, which is only true if the user enabled the tray *and* dbus is available.
2017-07-16Fix memory leaks in swaybar trayFurkan Sahin-1/+9
2017-07-13Fix name validation in sni_watcher.cFurkan Sahin-2/+12
This commit also fixes a memory leak that occurs on failure.
2017-07-13Don't trust SNI names, fixes #1274Furkan Sahin-5/+15
If an item doesn't have a well-formed name, it will not be added to the tray.
2017-07-08Adjust _XOPEN_SOURCE value for build on FreeBSD and fix pointer comparison ↵Furkan Sahin-5/+5
error.
2017-06-29Revert "swaybar: Group child processes for signalling"Furkan Sahin-2/+1
This reverts commit 144b794cf4232d9c7940551702bf43fd2d3b7d04.
2017-06-26Fix #1252Furkan Sahin-0/+6
2017-06-23Handle getline failure in icon theme parsingFurkan Sahin-9/+5
2017-06-14Merge branch 'master' into trayFurkan Sahin-1/+2
2017-06-13Remove Xembed SupportFurkan Sahin-21/+0
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-12swaybar: Group child processes for signallingFurkan Sahin-1/+2
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-08Fix Catching NewIcon SignalFurkan Sahin-4/+13
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-07Reorganize Tray CodeFurkan Sahin-119/+139
Remove tray code from bar.c and render.c
2017-06-07Fix cairo blending on tray iconsFurkan Sahin-0/+3
2017-06-07Implement Tray IconsFurkan Sahin-39/+2199
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-04-26Add -DVERSION flag for release version numbersFurkan Sahin-5/+1
2017-03-10UnGNUify the codebaseFurkan Sahin-1/+7
2016-12-15Handle malloc failure in ipc_recv_responseFurkan Sahin-0/+3