Commit graph

253 commits

Author SHA1 Message Date
tobi-wan-kenobi
547874dafd [core/module] allow modules to perform updates in background
a module can now set `self.background = True` in its `__init__()` method
to make sure its update method is invoked in a separate thread.

also, do a PoC implementation of this for the github module.

TODO: add this to dev doc

see #640
2020-05-30 17:22:02 +02:00
tobi-wan-kenobi
55121c86d4 [util/popup] add generic "close" on root menu
add a "close" entry for the root menu of all popup menus (if they are
not automatically destroyed when leaving the menu).

fixes #633
2020-05-30 15:19:31 +02:00
tobi-wan-kenobi
1c04068f89 [util/popup] replace mainloop with custom loop
add a custom event loop for popups that closes the menu on mouse button
release events and - most importantly - propagates this event back to
any parent menu.

fixes #633
2020-05-30 10:02:12 +02:00
tobi-wan-kenobi
7f7f464193 Merge remote-tracking branch 'origin/development' 2020-05-29 11:11:56 +02:00
Cristian Miranda
c2d869278a [modules/github] - New module supporting unread notifications count by reason with backward compatibility 2020-05-28 17:45:57 -03:00
tobi-wan-kenobi
4f2b283a55 [modules/vault] Emit leave events for submenus
this seems to at least partially fix #633
2020-05-28 21:06:22 +02:00
tobi-wan-kenobi
ebd98663c6 [modules/vault] fix copy of wrong password
- fix bad errors (missing "show" in pass command)
- pass in whole environment (otherwise clipboard doesn't work)
- generate lambda to avoid late binding

fixes #593
2020-05-28 21:05:58 +02:00
Cristian Miranda
f7e37ef7d7 [modules/github] - Removed legacy module 2020-05-28 15:59:39 -03:00
tobi-wan-kenobi
8cdc84871f [modules] move amixer2 to amixer 2020-05-28 08:23:47 +02:00
tobi-wan-kenobi
006a1d05a9
Merge pull request #635 from ardadem/pr-amixer2
[modules] New amixer module with input support
2020-05-28 08:20:28 +02:00
tobi-wan-kenobi
caf2fea04b [modules/battery] gracefully handle "no batteries" case
if no batteries are found, assume the machine is running on AC.

fixes #636
2020-05-28 08:17:35 +02:00
Arda Demir
3df0b7047f [modules] New amixer module with input support 2020-05-26 18:23:58 +03:00
Tobias Witek
f23566f5d0 [modules/arch-update] fix log error 2020-05-26 08:15:15 +02:00
Tobias Witek
f1ce5e162a [theme] load custom iconset first
the "merge" algorithm only fills in missing elements - i.e. the most
important pieces of a data structure must be filled in first. since the
iconset specified on the CLI takes precedence over anything present in
the config, load the CLI-provided iconset *first*.

hopefully fixes #634
2020-05-26 07:56:04 +02:00
tobi-wan-kenobi
3d14931cb7 [docs] add new module 2020-05-23 16:55:24 +02:00
tobi-wan-kenobi
20f9ac3ae0 [modules/arandr] add contribution 2020-05-23 16:53:10 +02:00
tobi-wan-kenobi
d393da47ed Merge remote-tracking branch 'origin/development' 2020-05-23 16:52:34 +02:00
Zero Rust
f944d7c489 Merge branch 'development' into arandr 2020-05-23 08:03:34 -04:00
Zero Rust
8c8fef61eb linting 2020-05-23 07:58:50 -04:00
Zero Rust
3921bab32e added display toggling to the arandr module 2020-05-23 07:53:28 -04:00
Zero Rust
90fbc249af cleaner way to activate a layout 2020-05-23 07:28:00 -04:00
Zero Rust
ffd04e9710 full menu and command for arandr scripts 2020-05-23 07:13:47 -04:00
Zero Rust
de00f9bdce getting display and layout state for populating menu 2020-05-22 23:53:38 -04:00
Zero Rust
1b34993fa9 adding separator addition to popup 2020-05-22 23:53:21 -04:00
Zero Rust
f5c9272291 first go at popup functionality for arandr 2020-05-22 22:44:38 -04:00
tobi-wan-kenobi
5dec4fd371 [docs] add psutil dependency to cpu module 2020-05-21 13:10:53 +02:00
tobi-wan-kenobi
922575fcda [core/widget] make arbitrary modules scrollable
Use a boolean parameter "scrolling" that's applied generically to
modules to allow arbitrary modules to scroll.

see #606

TODO: Add to documentation
2020-05-18 13:13:06 +02:00
tobi-wan-kenobi
e359c75603 [core/widget] remove module from widget initializer 2020-05-18 12:59:47 +02:00
Zero Rust
2fcd277cf9 Merge branch 'development' into arandr 2020-05-18 06:58:07 -04:00
tobi-wan-kenobi
fbbd95b7a8 [modules/network_traffic] Minor refactoring 2020-05-18 12:56:41 +02:00
tobi-wan-kenobi
172781d2c4
Merge pull request #631 from zerorust/fix_network_traffic
Fix network_traffic mobule on development
2020-05-17 14:15:00 +02:00
Zero Rust
f5d296df80 adding first version of arandr module to contrib 2020-05-17 08:03:03 -04:00
Zero Rust
6d89cef600 cleaning up to match style 2020-05-17 07:16:33 -04:00
tobi-wan-kenobi
1355a7e5d3 [core/decorators] add docstrings 2020-05-16 15:28:15 +02:00
tobi-wan-kenobi
a697500491 [core] add debugging around click events
log commandline outputs and errors. allow input handlers to be
configured as "waiting" for debugging purposes.

see #628
2020-05-16 15:16:23 +02:00
Zero Rust
f2d6f2f319 moving the module setter to after module init 2020-05-16 07:24:14 -04:00
tobi-wan-kenobi
02a80840a1 [core] more black'ing 2020-05-16 12:00:55 +02:00
tobi-wan-kenobi
eea3c758de [core/input] Invoke commands in a subshell
add shell capability to util.cli and make sure that the input module
uses that to reliably spawn whatever command the user wants to run.

see #628
2020-05-16 11:43:43 +02:00
Pavle Portic
a8df4a5f9d
Handle n+1 characters in the scrolling decorator 2020-05-15 20:31:37 +02:00
tobi-wan-kenobi
3bb2fb8247 [core/module] add missing registration of input events via CLI
see #628
2020-05-15 19:59:13 +02:00
tobi-wan-kenobi
bfe5d8f493 [module/battery] exception typo
see #628
2020-05-15 19:48:10 +02:00
tobi-wan-kenobi
835ed070e5 [core/module] Add docstrings 2020-05-15 10:22:10 +02:00
tobi-wan-kenobi
1b53e7ecf2 [util/popup] add docstrings 2020-05-15 10:07:07 +02:00
tobi-wan-kenobi
bc382e67d3 [general] black code some more 2020-05-14 20:36:01 +02:00
tobi-wan-kenobi
526560ea54 [core/decorators] use difflib to make scrolling reset detection fuzzy
when scrolling text that is subject to *slight* changes (e.g. a song
that contains the current position within the song), allow for slight
variations in the displayed text.

fixes #629
2020-05-14 20:35:09 +02:00
tobi-wan-kenobi
3fdd2d2be6 [modules/arch-update] Gracefully handle exit code 2
fixes #624
2020-05-11 15:10:20 +02:00
tobi-wan-kenobi
b4f8870a95 [doc] update API docs 2020-05-10 13:25:13 +02:00
tobi-wan-kenobi
8ca036bc4c [util/graph] Add API documentation 2020-05-10 13:15:47 +02:00
tobi-wan-kenobi
106bb9e8c3 [util/graph] Remove docstrings in prep for more complete documentation 2020-05-10 13:07:08 +02:00
tobi-wan-kenobi
b803f385a1 [tests] Fix failing tests 2020-05-10 12:56:30 +02:00
tobi-wan-kenobi
c560c07890 [packaging/pip] Make binary utility tools functional 2020-05-10 12:52:20 +02:00
tobi-wan-kenobi
92577e7d26 [all] black code :) 2020-05-09 21:24:28 +02:00
tobi-wan-kenobi
320827d577 [core] restructure to allow PIP packaging
OK - so I have to admit I *hate* the fact that PIP seems to require a
subdirectory named like the library.

But since the PIP package is something really nifty to have (thanks to
@tony again!!!), I updated the codebase to hopefully conform with what
PIP expects. Testruns so far look promising...
2020-05-09 21:22:00 +02:00