Commit graph

100 commits

Author SHA1 Message Date
tobi-wan-kenobi
11ebcee29a [tests] Fix kernel module test 2020-03-29 14:35:20 +02:00
tobi-wan-kenobi
bd7ff3c8f1 [core] Allow modules to specify default update interval
Expanding on the implementation in d582016, add a decorator
`core.module.every()` that allows a module to specify how often to
update the module's state.

This can still be overridden using the CLI parameter `interval`.
2020-03-29 14:32:47 +02:00
tobi-wan-kenobi
b66b13211e [modules/dunst] Fix toggling
At least Void Linux doesn't like kill -SIGUSR<N>

Also, added some debugging to inspect state changes for modules/widgets.

Also also, fix problem with min width, if no minwidth is set
2020-03-29 14:14:30 +02:00
tobi-wan-kenobi
95360fe522 [modules/brightness] Remove remaining reference to 'engine' 2020-03-28 21:17:38 +01:00
tobi-wan-kenobi
d5820160dc [modules/sensors2] Fix runtime errors 2020-03-28 13:44:45 +01:00
Tobias Witek
0e538a6088 [modules/weather] double quotes to single quotes 2020-03-15 14:05:26 +01:00
Tobias Witek
633bbdd6ff [modules] Reimport weather module 2020-03-15 14:05:13 +01:00
Tobias Witek
6975f179fc [modules/sensors2] Update to newest API 2020-03-15 13:53:12 +01:00
Tobias Witek
665fde5399 [modules/sensors2] Double to single quotes 2020-03-15 13:44:54 +01:00
Tobias Witek
d0406ffe83 [modules] Reimport sensors2 2020-03-15 13:44:38 +01:00
Tobias Witek
7fb626aa2c [modules/disk] Update to new API
Also, remove deprecated parameters
2020-03-15 13:40:13 +01:00
Tobias Witek
2007f8d0b9 [modules/disk] Quotes conversion 2020-03-15 13:34:09 +01:00
Tobias Witek
7aa1bc7b44 [modules] Reimport disk module 2020-03-14 14:04:45 +01:00
Tobias Witek
5851b104c5 [modules/xrandr] Adapt to new API 2020-03-13 13:56:08 +01:00
Tobias Witek
932d362d30 [modules/xrandr] Change quotation 2020-03-11 21:35:45 +01:00
Tobias Witek
59dc5f8047 [modules] Reimport xrandr 2020-03-11 21:35:25 +01:00
Tobias Witek
be2864b063 [modules/redshift] Update to latest framework 2020-03-07 14:13:25 +01:00
Tobias Witek
2592069fb9 [modules/redshift] Single quotes 2020-03-07 14:06:18 +01:00
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
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
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
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
0a0e39b516 [modules] Re-add load module 2020-03-05 21:13:15 +01:00
Tobias Witek
533b8ca0cc [modules] Re-add module nic 2020-03-01 14:36:12 +01:00
Tobias Witek
b839a9eb44 [modules/pulseaudio] Raise if not able to handle error 2020-03-01 14:09:45 +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
66bdfacf6f [modules/pulseaudio] Show bar charts
Re-enable optional display of barcharts
2020-02-23 13:59:47 +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
e0df8b84e5 [core] Add input handling
Add a (half-finished) input library, that for now simply allows
registration and triggering of events.

As next steps, the trigger will happen as part of a separate thread that
reads input events.

Additionally, invoking commands via a execute() will be supported.

Thirdly, there is need of a way to selectively update the affected
modules (widgets), which should be possible given that the event
contains both the instance (widget ID) and name (module name).
2020-02-07 21:28:29 +01:00
Tobias Witek
a70c82dc4c [modules] Add date, time, datetime
Add modules to show date, time and date and time. Instead of introducing
a "fancy" aliasing mechanism, simply implement time and date in terms of
datetime, by inheriting and overwriting selectively.
2020-02-04 21:10:05 +01:00
Tobias Witek
3a531c359f [core/module] Add config to module
Add access for all modules to the commandline parameters (called
"config" in bumblebee-status)
2020-02-03 21:30:06 +01:00
Tobias Witek
854d7dc470 [modules] Add first "real" module: kernel
Since 'kernel' is small and shows static information, have this be the
very first module added.
2020-02-02 14:41:22 +01:00
Tobias Witek
66537fbe05 [core/output] Rewrite to hide sys.stout
Add generic "draw()" method that redirects internally to the actual
calls. These can now produce JSON, which is nicer because:

1. Easier to use during testing
2. More flexible
3. Centralizes printing (somewhat)

Still, the "suffix" concept isn't really nice, but so far, I have no
better approach.
2020-02-01 21:37:38 +01:00
Tobias Witek
bd12a51bfb [core] Add simple module loading
Add a way to load modules located in modules/*
2020-01-19 16:06:21 +01:00
Tobias Witek
8622673114 [core] Re-enable preliminary module loading (stubbed)
Add logic for parsing commandline options, and a preliminary stub for
loading modules.

Note: The idea is that core.module.load() will return a valid, but
empty, module that displays an error, if the module cannot be loaded
2020-01-19 15:36:52 +01:00