Daniel Eklöf
7dd35f1159
module/xkb: remove assert: variable has been removed
2019-01-01 20:34:39 +01:00
Daniel Eklöf
9351d3b6d9
yml: yml_value_as_bool(): return false if value didn't match any known values
2019-01-01 20:32:12 +01:00
Daniel Eklöf
28b0f150cd
xcb: replace asserts with error checks
2019-01-01 20:32:03 +01:00
Daniel Eklöf
aa477eaa32
module/xkb: remove unused variable
2019-01-01 20:31:54 +01:00
Daniel Eklöf
c01806d6fa
module/xkb: declare and initialize 'symbols' before first goto err
...
This ensures we don't free() an invalid value.
2019-01-01 20:31:00 +01:00
Daniel Eklöf
a8a9ab28bd
module/removables: log warning if action is something we didn't expect
2019-01-01 20:30:27 +01:00
Daniel Eklöf
410b7635d7
log: ensure variables are always initialized. Fixes gcc warning
2019-01-01 20:30:15 +01:00
Daniel Eklöf
e711a6f103
config: deco_from_config() return NULL if we didn't match a deco
2019-01-01 20:29:55 +01:00
Daniel Eklöf
ba1c52d291
bar: remove unused variable
2019-01-01 20:29:48 +01:00
Daniel Eklöf
bdd760a40b
module/removables: cleanup
2019-01-01 20:18:48 +01:00
Daniel Eklöf
14f9aec088
module/removables: monitors removable devices using udev
2019-01-01 20:07:50 +01:00
Daniel Eklöf
0ab8dad7b9
module/network: initialize MAC address to 0
...
This fixes a valgrind "uninitialized value(s)" warning.
2019-01-01 13:10:44 +01:00
Daniel Eklöf
a96f901a15
module/network: disable debug logging
2019-01-01 13:10:35 +01:00
Daniel Eklöf
ea2cc50194
module/network: process_reply() -> parse_reply()
2018-12-31 13:44:49 +01:00
Daniel Eklöf
b2af90abbc
module/network: IFA_ADDRESS: include add/del in log message
2018-12-31 13:42:32 +01:00
Daniel Eklöf
24842d9b28
module/network: RTM_NEWLINK/DELLINK: don't do anything if nothing's changed
...
We're only interrested in a few of the attributes. Thus, there's no
need to log or update anything, if none of those attributes haven't
changed.
2018-12-31 13:40:43 +01:00
Daniel Eklöf
dcf8051f1a
module/network: break out message parsing code
...
This also allows us to actually handle errors (by aborting run())
2018-12-31 13:36:44 +01:00
Daniel Eklöf
8352d89491
module/network: break out message receiving code
2018-12-31 13:27:37 +01:00
Daniel Eklöf
b3f3f91dc2
module/network: drop libnl dependency, use raw netlink sockets instead
2018-12-31 13:19:01 +01:00
Daniel Eklöf
0ea4e5a2d8
log: LOG_ERRNO_P(), like LOG_ERRNO(), except user provides errno value
2018-12-31 13:18:22 +01:00
Daniel Eklöf
4c4f0ce7a0
module: network: monitor ethernet interfaces
...
State exposed (tag names):
* name: the interface name ("eth0" etc)
* index: the interface index, "ifindex"
* state: operational state (down, up etc)
* mac: the Ethernet hardware address
* ipv4: the *last* IPv4 address added to the interface
* ipv6: the *last* IPv6 address added to the interface
State we monitor (for changes):
* state
* ipv4 addresses
* ipv6 addresses
2018-12-30 20:40:10 +01:00
Daniel Eklöf
c795718ad7
config: i3: handle the 'spacing' attribute
2018-12-30 20:39:45 +01:00
Daniel Eklöf
500aebe9ef
module/mpd: free connection object when failing to connect
2018-12-30 14:04:40 +01:00
Daniel Eklöf
07d6564e79
module/mpd: raise connection retry interval from 1s -> 10s
2018-12-30 12:40:58 +01:00
Daniel Eklöf
b7e7ad522f
remove module subfolders
2018-12-29 22:18:08 +01:00
Daniel Eklöf
52f13dec3d
dynlist: move to particles folder
2018-12-29 22:13:00 +01:00
Daniel Eklöf
86425fbe48
config: all particles now take a 'on_click_template' argument
2018-12-29 21:23:27 +01:00
Daniel Eklöf
3eebdbb5b0
particle/ramp: fix on_mouse() regression
...
Now that we have a wrapper exposable, we need to implement
on_mouse(). In it, we need to check if we have our own on-click
handler, or else, check if mouse is inside the sub-exposable, or in
the left- or right margin.
2018-12-29 21:18:07 +01:00
Daniel Eklöf
e4fab9a20b
particle/map: fix on_mouse() regression
...
Now that we have a wrapper exposable, we need to implement
on_mouse(). In it, we need to check if we have our own on-click
handler, or else, check if mouse is inside the sub-exposable, or in
the left- or right margin.
2018-12-29 21:17:08 +01:00
Daniel Eklöf
22507ae26c
particle: add utility function to render a particle's decoration
2018-12-29 21:00:03 +01:00
Daniel Eklöf
6f5572ff6b
particle/map: implement left/right margin
...
This is done by wrapping the selected particle/exposable in a
ramp-specific exposable. This way, we can add the margins before
delegating begin_expose() and expose() to the selected exposable.
2018-12-29 20:54:41 +01:00
Daniel Eklöf
a3322b0a8a
particle/ramp: implement left/right margin
...
This is done by wrapping the selected particle/exposable in a
ramp-specific exposable. This way, we can add the margins before
delegating begin_expose() and expose() to the selected exposable.
2018-12-29 20:50:23 +01:00
Daniel Eklöf
5fc29f7bbe
particles: name private structs and variables consistently
2018-12-29 20:40:25 +01:00
Daniel Eklöf
3135f1d36d
particle: all particles now take margin arguments
...
Ramp and map however, doesn't allow any values other than 0 (yet).
2018-12-29 20:33:38 +01:00
Daniel Eklöf
bd251cbf9f
module/mpd: only auto-progress 'elapsed' when state is PLAYING
2018-12-29 18:33:00 +01:00
Daniel Eklöf
5a2f4a3ece
module/battery: run(): return 0 on success
2018-12-29 18:01:40 +01:00
Daniel Eklöf
62997eda8c
bar: run(): only return 0 if all modules exited with 0
2018-12-29 18:01:21 +01:00
Daniel Eklöf
449210cc07
main: use bar's return value as exit value
2018-12-29 17:57:30 +01:00
Daniel Eklöf
10877d7c2e
main: error handling
2018-12-29 17:56:26 +01:00
Daniel Eklöf
825c5c82b5
main: load config file from ~/.config/f00bar/config.yml
2018-12-29 17:54:33 +01:00
Daniel Eklöf
6d082f9f99
bar: disable debug logging
2018-12-29 17:54:24 +01:00
Daniel Eklöf
1f182b862e
particle/progress-bar: allow user to configure an on-click handler
...
Since we're typically interrested in *where* (on the progress-bar) the
user clicked, we need a way to pass the clicked position to the
handler.
Normally, the on-click handler is expanded when a particle
instantiates its exposable. At this point, we (obviously) don't have
the click position.
This is solved by expanding the handler a second time, when the bar is
clicked.
Thus, the user can use the "{where}" tag in the click handler. "where"
will be expanded to a percentage value (0-100).
2018-12-29 17:36:34 +01:00
Daniel Eklöf
bd365405d7
particle/list: remove excessive debug output
2018-12-29 17:14:49 +01:00
Daniel Eklöf
421f1466df
bar: reset cursor and return when mouse is at a border
2018-12-29 17:13:38 +01:00
Daniel Eklöf
7da09530b8
particle/string: tags_expand_template() now returns NULL if template is NULL
2018-12-29 17:12:11 +01:00
Daniel Eklöf
6857b99c56
particle/list: tags_expand_template() now returns NULL if template is NULL
2018-12-29 17:11:54 +01:00
Daniel Eklöf
32b4e9986d
tag: tags_expand_template(): return NULL if template is NULL
2018-12-29 17:10:54 +01:00
Daniel Eklöf
85801a5deb
particle/string: expand on_click handler before passing to exposable
2018-12-29 17:10:10 +01:00
Daniel Eklöf
aee4805df8
particle/list: expand on_click handler before passing to exposable
2018-12-29 17:09:57 +01:00
Daniel Eklöf
ed86061532
particle: refactor
2018-12-29 17:04:39 +01:00