aboutsummaryrefslogtreecommitdiff
path: root/include/swaybar/bar.h
AgeCommit message (Collapse)AuthorLines
2023-07-31swaybar: Implement wp_cursor_shape_v1Alexander Orzechowski-0/+2
2022-03-14swaybar: remove swaybar_output.input_regionSimon Ser-1/+0
No need to keep the region around, we can immediately destroy it after the wl_surface.set_input_region request.
2019-09-04swaybar: complete barconfig_update event handlingBrian Ashworth-0/+5
This adds complete support for the barconfig_update ipc event. This also changes the bar command and subcommand handlers to correctly emit the event. This makes it so all bar subcommands other than id and swaybar_command are dynamically changeable at runtime. sway-bar.5 has been updated accordingly
2019-04-24swaybar: add multiseat supportBrian Ashworth-3/+1
This just adds multiseat support to swaybar
2019-04-24swaybar: hide mode visibility improvementsBrian Ashworth-0/+1
This allows swaybar to become visible when the mode changes (to any mode other than the default). swaybar will be hidden again when the modifier is pressed and released or when switching back to the default mode. This also applies the same logic to visible by urgency to hide swaybar when the modifier is pressed and released. These changes are to match i3's behavior.
2019-02-24swaybar: add overlay mode (fix #1620)Milkey Mouse-0/+1
Overlay mode puts the bar above normal windows and passes through/ignores any touch/mouse/keyboard events that would be sent to it.
2019-02-23swaybar: process hotspots on touch tapDrew DeVault-0/+1
2019-02-15swaybar: prevent signal handler from firing during terminationIan Fan-0/+2
This prevents a heap-use-after-free crash when sway terminates.
2019-01-13swaybar: allow identifiers for output and trayBrian Ashworth-0/+1
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.
2018-12-31swaybar: set bar dirty on SNI eventIan Fan-0/+2
2018-12-31swaybar: implement mouse events for trayIan Fan-0/+2
2018-12-31swaybar: add tray interfaceIan Fan-0/+8
2018-11-17Implement strip_workspace_name.Connor E-0/+1
2018-10-18swaybar: separate input code to new fileIan Fan-37/+1
2018-10-15Event loop: Fix memmove and remove extraneous declarationRyan Dwyer-1/+0
2018-10-15Remove timerfd from loop implementationRyan Dwyer-1/+0
timerfd doesn't work on the BSDs, so this replaces it with a timespec for the expiry and uses a poll timeout to check the timers when needed.
2018-10-15Move swaybar's event loop to common directory and refactorRyan Dwyer-0/+5
* The loop functions are now prefixed with `loop_`. * It is now easy to add timers to the loop. * Timers are implemented using pollfd and timerfd, rather than manually checking them when any other event happens to arrive.
2018-10-14swaybar: handle mode/hidden_state changesIan Fan-0/+18
As well as adding the hidden_state property to the bar config struct, this commit handles barconfig_update events when the mode or hidden_state changes, and uses a new function determine_bar_visibility to hide or show the bar as required, using, respectively, destroy_layer_surface, which is also newly added, and add_layer_surface, which has been changed to allow dynamically adding the surface.
2018-10-14swaybar: move mode & mode_pango_markup to bar structIan Fan-0/+2
This distinguishes the binding mode from the distinct config mode, as well as removing mode_pango_markup from the config struct where it should not be present.
2018-10-14swaybar: add free_hotspots helper functionIan Fan-0/+1
2018-10-14swaybar: annotate wl_list properties in definitionsIan Fan-6/+6
2018-10-14swaybar: save id upon startupIan Fan-1/+3
This adds an id property to the bar, which will be used to filter barconfig_update events
2018-09-30swaybar: synchronize rendering to output framesIan Fan-0/+2
2018-09-28swaybar: remove unused focused_output propertyIan Fan-1/+0
2018-09-28swaybar: fail if bar id is invalidIan Fan-3/+1
2018-09-22swaybar, swaylock, & tree/container: Set cairo font options to render text ↵Geoff Greer-0/+1
and lines with subpixel hinting (if available).
2018-09-17swaybar: use output names instead of output indexesemersion-1/+4
2018-07-19swaybar: Fix scroll handling on workspace buttonsminus-1/+6
As well as ignoring scroll events on status elements when click_events is enabled. Previously, using the scroll wheel on a workspace button would switch to that workspace instead of scrolling through them. Clicks and scrolling on status elements would always be processed by swaybar, too. So in case you were using scrolling as volume control on a status item, swaybar would additionally scroll through your workspaces.
2018-07-16make hotspot callback take an x11 button idPeter Rice-1/+14
2018-04-24Fix a bunch of swaybar memory leaksemersion-0/+2
2018-04-05Handle output removal on swaybarDrew DeVault-0/+1
2018-04-03Add hidpi support to swaybarDrew DeVault-0/+1
2018-03-30Implement workspace switch on clickDrew DeVault-2/+11
2018-03-30Initialize seat pointer in swaybarDrew DeVault-0/+10
2018-03-29Implement status lineDrew DeVault-0/+1
Does not yet support i3bar json protocol
2018-03-29Round up workspaces on each outputDrew DeVault-2/+14
2018-03-29Only utilize the configured outputsDrew DeVault-1/+1
2018-03-29Wire up basic IPC supportDrew DeVault-0/+3
2018-03-29Start port of swaybar to layer shellDrew DeVault-58/+31
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.
2017-08-29click_events as documented at https://i3wm.org/docs/i3bar-protocol.htmlakokshar@redhat.com-0/+1
2017-06-13Remove Xembed SupportCalvin Lee-3/+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-07Reorganize Tray CodeCalvin Lee-0/+3
Remove tray code from bar.c and render.c
2017-06-07Implement Tray IconsCalvin Lee-0/+6
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
2016-11-02add bar colours for focused_(workspace|statusline|separator)D.B-0/+2
If these aren't defined in config, color settings without 'focused_' prefix are used as a fallback.
2016-09-01Reorganize includesDrew DeVault-0/+63