Commit graph

1671 commits

Author SHA1 Message Date
Tobias Witek
967521593c [modules] Import redshift 2020-03-07 14:06:01 +01:00
Tobias Witek
867e87913d [modules/battery] Add warning log if no estimates 2020-03-07 13:56:05 +01:00
Tobias Witek
7cdcde0080 [modules/dunst] Update to make working again 2020-03-07 13:54:45 +01:00
Tobias Witek
4bc5f73ccc [modules/dunst] Single quotes 2020-03-07 13:49:09 +01:00
Tobias Witek
b373de4cad [modules] Import module dunst 2020-03-07 13:48:54 +01:00
Tobias Witek
f24cd6fa83 [modules/brightness] Update APIs 2020-03-07 13:37:56 +01:00
Tobias Witek
cfa4d0df48 [modules/brightness] Single quotes 2020-03-07 13:34:22 +01:00
Tobias Witek
e6181e2d94 [modules/brightness] Re-import brightness module 2020-03-07 13:34:02 +01:00
Tobias Witek
8efa101380 [util/format] Tests and minor renaming 2020-03-07 13:33:28 +01:00
Tobias Witek
0f96f2727b [doc] Some updates 2020-03-07 13:26:33 +01:00
Tobias Witek
47e8d5b82b [core] replace widget.minwidth with widget.set('theme.minwidth') 2020-03-07 13:21:19 +01:00
Tobias Witek
b841ba3c93 [modules/battery] Re-enable battery module 2020-03-06 20:57:32 +01:00
Tobias Witek
9b96c142d5 [modules/battery] Migrate constructor 2020-03-06 20:37:46 +01:00
Tobias Witek
c2b0c8e754 [modules/core] Add battery module 2020-03-06 20:34:30 +01:00
Tobias Witek
7c866f1476 [tests] Add tests for byte formats 2020-03-06 15:00:03 +01:00
Tobias Witek
c5f78ad60d [doc] Extend migration guide 2020-03-06 14:52:54 +01:00
Tobias Witek
56a6173282 [modules/memory] Simplify and use util methods 2020-03-06 14:52:16 +01:00
Tobias Witek
13e512d1f1 [modules/memory] Fix imports an module constructor 2020-03-06 14:48:11 +01:00
Tobias Witek
5ccf60a16b [modules] Re-added module memory 2020-03-06 14:46:33 +01:00
Tobias Witek
48c21a902e [tests/module] Skip failing tests in Python 3.{4,5} 2020-03-06 14:45:09 +01:00
Tobias Witek
d2e8057141 [modules] Add CPU module
Also, change minwidth from theme.minwidth to widget property
2020-03-06 14:33:40 +01:00
Tobias Witek
51faef9fd4 [modules/kernel] Make widget dynamic (update if kernel changes) 2020-03-06 14:31:08 +01:00
Tobias Witek
efc2e4f94e [modules] Separate modules into core & contrib
Also, improve errors when importing a module fails.

Also, add more tests.
2020-03-06 14:14:34 +01:00
Tobias Witek
47950240d0 [tests/core/module] Add tests for widget retrieval by name 2020-03-05 21:17:06 +01:00
Tobias Witek
28b891ef37 [doc] Extend module migration documentation 2020-03-05 21:13:48 +01:00
Tobias Witek
0a0e39b516 [modules] Re-add load module 2020-03-05 21:13:15 +01:00
Tobias Witek
d19eb72296 [tests/module] Test generation of error widget
When a module/widget throws, an error widget should be produced.
2020-03-04 21:06:09 +01:00
Tobias Witek
533b8ca0cc [modules] Re-add module nic 2020-03-01 14:36:12 +01:00
Tobias Witek
7420434358 [doc] Started module migration guide 2020-03-01 14:32:30 +01:00
Tobias Witek
b839a9eb44 [modules/pulseaudio] Raise if not able to handle error 2020-03-01 14:09:45 +01:00
Tobias Witek
a1aec8fff6 [core/module] Add error widgets if a module throws
Module should have to care less about thrown exceptions.
2020-03-01 14:08:16 +01:00
Tobias Witek
cb3482ae27 [core/decorators] Simplify and test scrolling 2020-02-29 14:05:02 +01:00
Tobias Witek
b99ac07ef0 [core/decorators] Add more tests 2020-02-27 21:39:04 +01:00
Tobias Witek
162398c6b6 [core/output] Make error widgets critical 2020-02-24 15:07:34 +01:00
Tobias Witek
0cc744ed15 [core/output] Cache widget output for selective redraw
To make redraw work correctly and elegantly with supplementary elements
(e.g. prefix, postfix, separators), always do a full redraw of the bar
(to make the theme update correctly, but cache the actual *data* to
display inside the output.
2020-02-24 15:05:58 +01:00
Tobias Witek
1a093a73b1 [core] Add prefix/postfix support 2020-02-24 14:54:11 +01:00
Tobias Witek
37e1deaa6f [tests] Add (partial) decorator tests 2020-02-24 14:20:54 +01:00
Tobias Witek
0a266b607e [core/output] Unify common i3 attributes 2020-02-24 14:06:57 +01:00
Tobias Witek
84833dc7db [core] Add (partial) support for states
Add states to the modules and widgets. Widgets are mostly just a
pass-through (backwards compatibility, and ease of use - making states
directly inside the widgets would require more code inside the modules
to ensure that each widget is correctly updated).

Still missing:
- Separators during partial update (right now, it takes one interval
until separators are drawn correctly)
2020-02-23 21:13:49 +01:00
Tobias Witek
fd57af9325 [tests] Make tests pass again 2020-02-23 14:55:13 +01:00
Tobias Witek
5e673482d3 [core] Nicify error widget 2020-02-23 14:52:58 +01:00
Tobias Witek
65186baea6 [core] Make error widget scrollable
Restrict error module to 15 characters and make it scrollable.
2020-02-23 14:47:47 +01:00
Tobias Witek
a69e058dd1 [core] Add decorators library
For now, simply add a decorator that allows for scrolling of text
2020-02-23 14:47:20 +01:00
Tobias Witek
a2446a36af [core/theme] Better separator handling
Add a generic method to the theme to get the "previous" value of an
attribute.
2020-02-23 14:31:30 +01:00
Tobias Witek
66bdfacf6f [modules/pulseaudio] Show bar charts
Re-enable optional display of barcharts
2020-02-23 13:59:47 +01:00
Tobias Witek
b2064142d0 [util] Add graph library
Add a library for drawing horizontal and vertical bar graphs (thanks to
@somospocos for contributing!)
2020-02-23 13:59:22 +01:00
Tobias Witek
3496fa622a [modules] Add preliminary version of pulseaudio module
Add pasink/pasource and __pulseaudio (internal module, not intended for
direct use).
2020-02-23 13:45:42 +01:00
Tobias Witek
30c539f1f2 [util/cli] Add option to ignore return codes
Add an option that ignores the return code of an execute, instead of
throwing an error (which sometimes causes ugly try/except blocks in
client code)
2020-02-23 13:44:49 +01:00
Tobias Witek
7a1cd4b613 [util] Add 'formatting' utility methods
Add helpers to unify formatting of bool/list/int values.
2020-02-23 13:43:44 +01:00
Tobias Witek
a9c1c3581a [core/theme] Iconset needs to be auto by default 2020-02-22 14:11:10 +01:00