Daniel Eklöf
9a94c9c1f7
module/mpd: monitors MPD
2018-12-27 11:36:38 +01:00
Daniel Eklöf
3aa6b21056
particle/string: call particle_default_destroy()
2018-12-26 21:35:39 +01:00
Daniel Eklöf
ce85ccda56
particle/ramp: call particle_default_destroy()
2018-12-26 21:35:24 +01:00
Daniel Eklöf
20fb0c37b5
particle/map: call particle_default_destroy()
2018-12-26 21:35:05 +01:00
Daniel Eklöf
f5123afc72
particle/list: call particle_default_destroy()
2018-12-26 21:34:53 +01:00
Daniel Eklöf
1427d6a98b
particle: provide a default destroy() function
...
This allows us to destroy the associated decoration.
2018-12-26 21:34:19 +01:00
Daniel Eklöf
f65a18b655
particle: initialize 'deco' member to NULL
...
Fixes valgrind warnings about uninitialized variable. This happened
for every particle that did *not* have a decoration.
2018-12-26 21:33:35 +01:00
Daniel Eklöf
1b50808da5
bar: set_cursor(): new interface function, to set the X cursor
...
Use this to explicitly set the initial/default cursor to "left_ptr"
2018-12-26 17:16:54 +01:00
Daniel Eklöf
ce68bdb59d
exposable: add a 'width' member, set (at latest) in begin_expose()
2018-12-26 16:37:11 +01:00
Daniel Eklöf
a745436ee2
decoration: stack: stacks multiple decorations on top of each other
2018-12-26 15:59:48 +01:00
Daniel Eklöf
09cd27b688
decoration/underline: draws a line at the bottom of the particle
2018-12-26 15:59:16 +01:00
Daniel Eklöf
1c9a908a8f
particle/string: draw decoration, if available
2018-12-26 15:31:49 +01:00
Daniel Eklöf
0e3dd72313
yml: bump anchor vector size
2018-12-26 15:31:37 +01:00
Daniel Eklöf
0094cc1269
config: load decorations. All particles may have one
2018-12-26 15:31:16 +01:00
Daniel Eklöf
0284f5ac85
decoration: configurable graphical effects, added to a particle
2018-12-26 15:30:47 +01:00
Daniel Eklöf
052513c736
particle/ramp: don't use floating point arithmetic
2018-12-26 12:44:26 +01:00
Daniel Eklöf
1929099ca4
module/backlight: new module
2018-12-26 12:44:17 +01:00
Daniel Eklöf
5306ebd4ed
bar: call refresh() after all modules have been loaded
...
This also means that modules do *not* have to call bar->refresh() just
before/after calling module_signal_ready().
As long as the module's initial state has been correctly/completely
set up before it calls module_signal_ready(), the module *only* has to
call bar->refresh() when it's state changes.
2018-12-26 11:48:09 +01:00
Daniel Eklöf
3af0280304
module/xwindow: replace assert with real error check
2018-12-26 11:44:21 +01:00
Daniel Eklöf
6d75fe64ef
module/xkb: signal module-ready when failing early
2018-12-26 11:42:42 +01:00
Daniel Eklöf
b2121070f8
module/i3: replace asserts with real error checks
2018-12-26 11:31:28 +01:00
Daniel Eklöf
30332670aa
module/battery: convert asserts to real error checks
2018-12-25 12:25:24 +01:00
Daniel Eklöf
d81547066d
module/battery: log error message on failure during initialization
2018-12-19 21:12:42 +01:00
Daniel Eklöf
3bc4bd56a9
tag: tag_new_string(): allow NULL values (treat as empty string)
2018-12-19 21:01:36 +01:00
Daniel Eklöf
7f2c0681a7
log: add LOG_ERRNO()
...
Works like LOG_ERR(), but appends a string representation of the
current errno value to the log message string.
2018-12-19 21:01:01 +01:00
Daniel Eklöf
8897e480c5
log: rename log_class() -> log_msg()
2018-12-19 20:56:26 +01:00
Daniel Eklöf
7e95862e12
module/battery: error handling during initialization
2018-12-19 20:54:36 +01:00
Daniel Eklöf
ffaec546f5
module/xwindow: use lock from generic module
2018-12-19 20:35:43 +01:00
Daniel Eklöf
60b72cc55a
module/xkb: delay ready signal, until we've actually initialized
2018-12-19 20:29:58 +01:00
Daniel Eklöf
661cabfb69
module/i3: use lock provided by generic module
2018-12-19 20:26:15 +01:00
Daniel Eklöf
2c7362fefa
module/battery: no need to lock before we've signaled ready
2018-12-19 20:24:36 +01:00
Daniel Eklöf
3413232ed6
module: add new function module_signal_ready()
2018-12-19 20:23:53 +01:00
Daniel Eklöf
a3eb7ebc08
bar: wait for all modules to have started up before continuing
...
After starting all the module threads, wait for all modules to have
signalled "ready" before continuing.
This will allow modules to do initial setup, and knowing that
content() will *not* be called until they've signalled "ready".
2018-12-19 19:41:25 +01:00
Daniel Eklöf
7f0f096ba4
module: begin_expose() and content() take a non-const module pointer
2018-12-19 19:03:19 +01:00
Daniel Eklöf
b579f97db7
module/xwindow: use module common constructor/destructor
2018-12-19 19:00:29 +01:00
Daniel Eklöf
f8cb3acc35
module/xkb: use module common constructor/destructor
2018-12-19 18:59:33 +01:00
Daniel Eklöf
20cb0f0de7
module/label: use module common constructor/destructor
2018-12-19 18:58:10 +01:00
Daniel Eklöf
536db672b4
module/i3: use module common constructor/destructor
2018-12-19 18:57:19 +01:00
Daniel Eklöf
16553a7216
module/battery: acquire lock when reading/writing state
2018-12-18 20:24:30 +01:00
Daniel Eklöf
d279b585db
module/battery: read all data into local variables first
...
This minimizes the time we'll have to hold the lock (once we lock).
2018-12-18 20:23:19 +01:00
Daniel Eklöf
f253bbebd2
module/battery: we're scanning into a signed long
2018-12-18 20:22:48 +01:00
Daniel Eklöf
76995ddcd5
module/battery: use module common constructor and default destructor
2018-12-18 20:22:30 +01:00
Daniel Eklöf
72624af1fa
clock: use module common constructor and destructor
2018-12-18 20:13:04 +01:00
Daniel Eklöf
edc418b22d
module: provide a "common" constructor and destructor
...
Also, provide a lock for module to use (to ensure run() and content()
doesn't step on each other's toes).
2018-12-18 20:12:04 +01:00
Daniel Eklöf
3618b863ff
module/i3: lower case initial letter in log message
2018-12-18 20:00:03 +01:00
Daniel Eklöf
0f5d626177
config: list has a default right-spacing of 2
2018-12-18 19:52:36 +01:00
Daniel Eklöf
6db41b7803
module/xkb: initialize layouts to zero
...
Fixes a crash when content() is called before we've initialized the
layouts.
2018-12-18 19:49:05 +01:00
Daniel Eklöf
47f5c5d655
log: dim module name / file name + line number
2018-12-18 19:46:13 +01:00
Daniel Eklöf
b3a3990347
bar: log *which* event that is unimplemented
2018-12-18 19:42:47 +01:00
Daniel Eklöf
7cc1fa9cef
log.c: align module name
2018-12-18 19:41:08 +01:00