aboutsummaryrefslogtreecommitdiffstats
path: root/swaybar/tray
Commit message (Collapse)AuthorAge
* stringop.c: remove unused functionsLibravatar Ian Fan2019-03-11
| | | | The only use of `join_list` in swaybar/tray/icon.c has been rewritten.
* tray: fix pixmap colorsLibravatar Ian Fan2019-03-04
| | | | by converting from network byte order to host byte order
* tray: fix memory leaksLibravatar Ian Fan2019-02-18
|
* tray: when a service is lost, remove all matching itemsLibravatar Ian Fan2019-02-18
| | | | | Before, only the first matching item would be removed, which could leave stale items.
* tray: use correct parameter to set bus slot to floatingLibravatar Ian Fan2019-02-18
| | | | | Counter-intuitively, `sd_bus_slot_set_floating` expects 0 to set it to floating.
* Fix #3445: swaybar tray inerited thems not processedLibravatar Stefan Schick2019-02-01
|
* Merge pull request #3500 from progandy/validate_pixmapsLibravatar Drew DeVault2019-01-23
|\ | | | | swaybar: fix crash with some tray icon pixmaps
| * swaybar: fix crash with some tray icon pixmapsLibravatar progandy2019-01-23
| | | | | | | | | | | | Discard pixmaps for icons where width and height are 0 or not equal. Fixes #3487
* | Fix tray icon updatesLibravatar Lukas Lihotzki2019-01-23
|/ | | | | Apparently, IconThemePath needs to be reread on NewIcon signal. This fixes tray icon updates in electron apps with libappindicator-gtk3.
* Fix dead stores found by scan-buildLibravatar M Stoeckl2019-01-22
| | | | | | | | In addition to removing unused code, two minor problems are fixed: (1) `resize set` and `resize adjust` did not error when given too many arguments. (2) `orientation` was incorrectly overridden to be 'U' for scroll events in the swaybar tray `handle_click` function.
* swaybar: fix setting floating watcher slotsLibravatar Ian Fan2019-01-21
|
* Replace wlr_log with sway_logLibravatar M Stoeckl2019-01-21
| | | | | | | | | | | | | This commit mostly duplicates the wlr_log functions, although with a sway_* prefix. (This is very similar to PR #2009.) However, the logging function no longer needs to be replaceable, so sway_log_init's second argument is used to set the exit callback for sway_abort. wlr_log_init is still invoked in sway/main.c This commit makes it easier to remove the wlroots dependency for the helper programs swaymsg, swaybg, swaybar, and swaynag.
* Fix memory leaks in swaybarLibravatar M Stoeckl2019-01-19
|
* bar_cmd_tray_bind: Use mouse button helpersLibravatar Brian Ashworth2019-01-16
| | | | | | | | | | | | | | | | This modifies `bar_cmd_tray_bindsym` to use `get_mouse_bindsym` for parsing mouse buttons. This also introduces `bar_cmd_tray_bindcode`, which will use `get_mouse_bindcode` for parsing mouse buttons. Like with sway bindings, the two commands are encapsulated in a single file to maximize shared code. This also modifies tray bindings to work off of events codes rather than x11 buttons, which allows for any mouse buttons to be used. For `get_bar_config`, `event_code` has been added to the `tray_bindings` section and will include to event code for the button. If the event code can be mapped to a x11 button, `input_code` will still be the x11 button number. Otherwise, `input_code` will be `0`.
* swaybar: allow identifiers for output and trayLibravatar Brian Ashworth2019-01-13
| | | | | | | | | | This allows `bar output` and `bar tray_output` to specify an output identifier. Output names should still work as well. This parses the output identifier from the xdg_output description, which wlroots currently sets to `make model serial (name)`. Since this could change in the future, all identifier comparisons are guarded by NULL-checks in case the description cannot be parsed to an identifier.
* swaybar: improve tray loggingLibravatar Ian Fan2019-01-08
|
* swaybar: handle SNI signals betterLibravatar Ian Fan2019-01-08
| | | | | This fixes a crash caused by callbacks not matching the right sender, and frees old values later, before they are re-assigned.
* swaybar: free the right item during tray destructionLibravatar Ian Fan2019-01-08
| | | | | Also added a comment to make more obvious the reason for comparing sni->status[0] == 'N'
* swaybar: use KDE's SNI IconThemePath propertyLibravatar Ian Fan2018-12-31
|
* swaybar: handle new and lost StatusNotifierWatcherLibravatar Ian Fan2018-12-31
|
* swaybar: draw a sad face if SNI has no iconLibravatar Ian Fan2018-12-31
|
* swaybar: set bar dirty on SNI eventLibravatar Ian Fan2018-12-31
|
* swaybar: implement mouse events for trayLibravatar Ian Fan2018-12-31
|
* swaybar: implement tray renderingLibravatar Ian Fan2018-12-31
|
* swaybar: add StatusNotifierItem to trayLibravatar Ian Fan2018-12-31
|
* swaybar: add StatusNotifierHost to trayLibravatar Ian Fan2018-12-31
|
* swaybar: implement icon themes and lookup for trayLibravatar Ian Fan2018-12-31
|
* swaybar: add StatusNotifierWatcher to trayLibravatar Ian Fan2018-12-31
|
* swaybar: add skeleton dbus code to trayLibravatar Ian Fan2018-12-31
|
* swaybar: add tray interfaceLibravatar Ian Fan2018-12-31
|
* Start port of swaybar to layer shellLibravatar Drew DeVault2018-03-29
| | | | | | This starts up the event loop and wayland display and shims out the basic top level rendering concepts. Also includes some changes to incorporate pango into the 1.x codebase properly.
* Prevent crash if DBus connection is NULLLibravatar Calvin Lee2017-08-12
| | | | Fixes #1307
* Fix memory leaks in swaybar trayLibravatar Calvin Lee2017-07-16
|
* Fix name validation in sni_watcher.cLibravatar Calvin Lee2017-07-13
| | | | This commit also fixes a memory leak that occurs on failure.
* Don't trust SNI names, fixes #1274Libravatar Calvin Lee2017-07-13
| | | | | If an item doesn't have a well-formed name, it will not be added to the tray.
* Adjust _XOPEN_SOURCE value for build on FreeBSD and fix pointer comparison ↵Libravatar Johannes Lundberg2017-07-08
| | | | error.
* Fix #1252Libravatar Drew DeVault2017-06-26
|
* Handle getline failure in icon theme parsingLibravatar Mykyta Holubakha2017-06-23
|
* Remove Xembed SupportLibravatar Calvin Lee2017-06-13
| | | | | | | 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.
* Fix Catching NewIcon SignalLibravatar Calvin Lee2017-06-08
| | | | | The unique name was not copied out of the wire marshalled DBus message data so `sni_uniq_cmp` would always match against junk data.
* Reorganize Tray CodeLibravatar Calvin Lee2017-06-07
| | | | Remove tray code from bar.c and render.c
* Implement Tray IconsLibravatar Calvin Lee2017-06-07
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