Commit Graph

935 Commits

Author SHA1 Message Date
enkore
9e3e7a6bc6 Merge pull request #345 from facetoe/pulseaudio-sinks
Fix sink selection bug.
2016-03-28 09:29:26 +02:00
facetoe
b111fd62f1 Clean up code. 2016-03-28 08:46:25 +08:00
facetoe
0c17b6f435 Disable update check that breaks everything 2016-03-27 12:16:15 +08:00
facetoe
3422469df0 Fix sink selection bug.
A sink in the SUSPENDED state would never be selected. Not sure if this
solution is correct...
2016-03-27 09:58:45 +08:00
enkore
cf8ae97a43 Merge pull request #341 from grimpy/nowplaying_activatable
Now Playing: Check for mpris service in activatable services
2016-03-26 21:25:51 +01:00
enkore
e60051bdc5 Merge pull request #342 from terminalmage/updates-color
Change color_no_updates to None to default to i3bar color
2016-03-26 21:25:28 +01:00
enkore
832061c426 Merge pull request #343 from rscholer/dpms_format
dpms: Allow a different format string when DPMS is disabled.
2016-03-26 21:22:59 +01:00
enkore
a645bb74eb Merge pull request #340 from grimpy/pulse_auto_sink
Pulseaudio: Display/control active sink
2016-03-26 21:22:16 +01:00
Mathis FELARDOS
f26a9f9d1d core: Improve the support of other button
* This commit fix #259
* Change 'unhandled' callback by 'other'
* Add the an optional parameter 'button_id' for all callbacks

Signed-off-by: Mathis FELARDOS <mathis.felardos@gmail.com>
2016-03-25 22:27:33 +01:00
Raphael Scholer
bf71e78e23 dpms: Allow a different format string when DPMS is disabled.
Substitution of {status} is still possible, for backwards compatibility.
2016-03-25 18:05:42 +01:00
Erik Johnson
4867afeda1 Change color_no_updates to None to default to i3bar color
If ``statusline`` is not set in ``~/.config/i3/config``, it defaults to
``#ffffff`` (white). Therefore, the default behavior of the updates
module in this case is to show white for both ``color_no_updates``
(system is up-to-date) and ``color_working`` (update check in progress).

However, if one sets ``statusline`` in their ``~/.config/i3/config``,
then the color will be white when the system is up-to-date, forcing the
user to manually set ``color_no_updates`` if they would prefer it match
their default i3bar color.

This commit changes the default value of ``color_no_updates`` to
``None`` so that it matches the default i3bar unless overridden.
2016-03-25 00:29:19 -05:00
Mathis FELARDOS
95f625cd6b core: Add the middle click support and unhandled button support
* This commit fix #259
* Support of middle click button
* Add an unhandled click events for all button that will not be handled
* Remove the return type of on_click: it became useless now
* Fix the unique call of on_click in CommandEndpoint

Signed-off-by: Mathis FELARDOS <mathis.felardos@gmail.com>
2016-03-25 04:32:29 +01:00
Jo De Boeck
6161d591d2 Now Playing: Check for mpris service in activatable services 2016-03-24 21:25:27 +02:00
Jo De Boeck
b711ba96ed Pulseaudio: Display/control active sink
Make sink a property which checks which sink is currently active.
Use pactl to control volumes which gets standard insalled with libpulse
which is already a requirement.
2016-03-23 20:46:04 +02:00
Mathis FELARDOS
98e8a1cc04 core: handle callbacks that are not functions on Python 3.3
* Fix inspect.getargspec issue for non functions callbacks by creating
  an empty ArgSpec. There for we ignore all kwargs parameters.

Signed-off-by: Mathis FELARDOS <mathis.felardos@gmail.com>
2016-03-23 10:14:20 +01:00
Mathis FELARDOS
d15b3173f1 core: Change command_endpoint and on_click for supporting i3bar mouse positions
* command_endpoint: get the position from the mouse when the click
  occured. Parameters names are set here: pos_x pos_y.
  Positions are passed to on_click through keyword arguments.
* Module:
  - change __log_button_event, __button_callback_handler and on_click
    methods for handling keyword arguments.
  - "Member", "Method" and "Python" callbacks are handled by detecting
    if they have pos_x or pos_y as parameters, or if they have a
    keyword arguments. The special case of wrapped callbacks (made with
    get_module decorator for example) is handled in a similar way.
  - "External command" is handled by considering the position as a
    format dictionary. Actually no distinctions are made of how
    self.data and the new keyword argument are treated on this.
  - the parameter kwargs as been added to the doc string of on_click.
* MultiClickHandler: now handle keyword arguments.

Signed-off-by: Mathis FELARDOS <mathis.felardos@gmail.com>
2016-03-23 08:36:11 +01:00
enkore
0b49c4058a Merge pull request #333 from terminalmage/fix-updates
Fix KeyError when using backend-specific updates formatter
2016-03-22 12:31:48 +01:00
enkore
843088c9f5 Merge pull request #332 from drwahl/master
last.fm: initial commit of last.fm module
2016-03-22 12:30:22 +01:00
enkore
c35eb5ee3b Merge pull request #338 from grimpy/fix_nowplaying
now_playing: use get_dbus_method for compatibility
2016-03-22 12:29:41 +01:00
Jo De Boeck
6a7e80ec38 now_playing: use get_dbus_method for compatibility
Calling method directly on dbus proxy object does not always work.
2016-03-22 12:13:29 +02:00
Hugo Osvaldo Barrera
9a091ab024 Improve solaar error handling/display
Improve errors shown by solaar plugin, also cleaning up how error are
internally handled.

See #335
2016-03-21 19:51:44 -03:00
David Wahlstrom
e529fa8c95 dota2wins: truncate win percentage
Use only 2 decimals for win percentage so we don't fill all of the
status bar with decimal places.
2016-03-18 09:03:19 -07:00
Erik Johnson
2a886ffa1e Fix KeyError when using backend-specific updates formatter
When a backend-specific formatter (i.e. ``{Pacman}``, ``{Cower}``, etc.)
is used, and the initial "working" status is set, the loop in which the
update totals is compiled has not yet run, leading to a KeyError.

This commit fixes the traceback by setting initial values of "?" for
these formatters before the initial "working" status is set.
2016-03-16 21:47:14 -05:00
David Wahlstrom
7163122e1b last.fm: initial commit of last.fm module
This last.fm module will report to the status bar the current track that
is being played.  Last.fm requires an API key for access to their APIs,
so the user must provide their own API key which can be easily obtained
for free from http://www.last.fm/api/.
2016-03-16 16:27:02 -07:00
Erik Johnson
ff31e08b74 Add settings entry for color_icons
This allows this item to be overridden in i3pystatus with custom colors
and icons.
2016-03-12 22:49:30 -06:00
Kenny Keslar
693d2ebdb7 Catch exceptions in button handlers 2016-03-02 15:57:57 -05:00
Kenny Keslar
7d90574212 Pulseaudio - use execute helper & fix program check 2016-03-02 15:40:16 -05:00
Lennart Braun
f2b4447126 Fix explicit utf-8 encoding 2016-02-26 16:18:12 +01:00
Lennart Braun
530b9f2d88 Add mpd password support 2016-02-26 15:34:38 +01:00
facetoe
357aaa76a1 Fix uneven quotes in status command. 2016-02-20 22:51:27 +08:00
facetoe
ee79a691b2 Fix dateTime bug identified in #322
Also fixed bug where an event with no title would cause a crash.
2016-02-18 20:29:07 +08:00
enkore
7117df6fb2 Display exception class name (in-line exception display)
cf #322
2016-02-16 13:40:30 +01:00
enkore
bf2e992fc9 Merge pull request #317 from facetoe/google_calendar
Add GoogleCalendar module
2016-02-14 14:56:33 +01:00
facetoe
577e3df17f Fix bugs in setting_util.py.
An exception was thrown while loading classes and the -l paramater
wasn't working correctly.
2016-02-14 14:49:55 +08:00
enkore
32296aad6b Merge pull request #319 from t3zla/master
Made the openvpn module more flexible by allowing custom status commands, along with changing the spelling of "colour"
2016-02-12 14:14:34 +01:00
enkore
58ca67109c Change default mode to standalone=True 2016-02-12 14:12:43 +01:00
Holden Salomon
8254eaf43e Made the openvpn module more flexible by allowing custom status commands, making it compatible with networkmanager based VPNs. Also changed the spelling of colour_down and colour_up to color so the module is the same as all of the others 2016-02-11 12:00:49 -05:00
facetoe
67142bc6fe Add GoogleCalendar module 2016-02-10 22:06:29 +08:00
Julius Haertl
99ca98eaea openvpn: Rename colour_up/colour_down to color_up/color_down 2016-02-10 10:03:47 +01:00
enkore
a83a53dec0 Merge branch 'dota2winsdefaultetc' 2016-02-03 18:43:47 +01:00
David Wahlstrom
4f490d6b4a dota2wins: truncate win percentage
Use only 2 decimals for win percentage so we don't fill all of the
status bar with decimal places.
2016-02-03 18:42:28 +01:00
w8u
b1a2c4d6c5 corrected settings to avoid Sphinx errors 2016-02-02 16:38:52 +01:00
w8u
1680ef4f17 A module for monitoring message amount in VK 2016-02-02 16:38:52 +01:00
enkore
2890f942f3 configuration.rst: update example callbacks 2016-02-02 16:01:28 +01:00
enkore
289c090ea4 Import core.util.get_module into i3pystatus main module 2016-02-02 15:47:18 +01:00
enkore
dcda1bb3a4 Fix initialization error if standalone is False
Does anybody even use this scenario anymore? We could remove quite some
code if we only supported standalone operation.
2016-02-02 15:47:00 +01:00
enkore
9759d6eea5 Revert "Lift restriction that "run" cannot be used as a callback"
This reverts commit d018be872a.
2016-02-01 17:09:47 +01:00
enkore
57be3c45a9 updates: add an individual formatter for every backend 2016-02-01 13:11:58 +01:00
enkore
d7af5c762f updates: new formula®
Start an extra worker ourselves, then use a condition to notify it
of explicit update requests
2016-02-01 12:48:56 +01:00
enkore
39e2c64570 updates: allow display of a "working/busy" message 2016-02-01 12:20:30 +01:00
enkore
d018be872a Lift restriction that "run" cannot be used as a callback 2016-02-01 12:18:03 +01:00
enkore
5dbb8b6cac Fix typo 2016-01-31 18:34:07 +01:00
enkore
b3a1ab2508 syncthing: callback descriptions 2016-01-31 18:33:34 +01:00
enkore
5959ba9463 Merge pull request #295 from rumpelsepp/master
Add Syncthing module
2016-01-31 18:30:37 +01:00
Stefan Tatschner
70a9ead7ef Add Syncthing module
This module provides support for Syncthing [1]. Currently this module
only supports showing the up/down status of Syncthing and it is possible
to start/shutdown Syncthing via click events. A few callback functions
for usage with/without systemd are provided as well.

The module is designed in a generic way (st_get(), st_post()), such that
new features could be add very easily.

[1]: https://syncthing.net
2016-01-31 17:46:09 +01:00
enkore
739c595ef0 Fix is_method_of (cf #310), add regression test case 2016-01-28 20:34:53 +01:00
enkore
fcc3bf67d4 Update alsa.py
cf #300
2016-01-28 16:57:57 +01:00
enkore
81690baa62 Merge pull request #309 from richese/timer
Added `Timer` module.
2016-01-28 15:01:24 +01:00
enkore
2aeda9c5e3 Fix single string case & docs 2016-01-27 20:15:59 +01:00
enkore
dec534ce81 Fix errorneous recursive replace mishap 2016-01-27 20:02:51 +01:00
enkore
0743767385 Two line if 2016-01-27 20:00:50 +01:00
enkore
612b8b07eb Update modules to a7583a9
Not updated for various reasons:
clock,
dpms,
gpu_temp,
load,
mail,
mem_bar,
modsde,
net_speed,
pianobar,
pulseaudio,
regex [no named formatters],
runwatch,
shell,
solaar,
temp,
text,
updates,
weather,
whosonlocation,
xkblayout,
zabbix


This might break something: I can't test all these modules. If it does,
file a bug / open a PR / send me a note.
2016-01-27 19:53:33 +01:00
enkore
a7583a9786 Implement #300 2016-01-27 19:31:12 +01:00
enkore
a9462aa862 Merge branch 'cbself' 2016-01-27 19:11:54 +01:00
enkore
aed169de4d Implement decided resolution of #304
- Remove self for normal callables
- Retain self for methods (of course)
- Add decorator to retrieve self for special callbacks that need it
  (Yes, the example is kinda stupid and would be unnecessary with #300)
2016-01-27 19:07:59 +01:00
Lukáš Mandák
1c6b42d9e5 Removed dependency on enum module. 2016-01-27 14:20:09 +01:00
Lukáš Mandák
0bf0fd3591 Added Timer module. 2016-01-27 11:59:26 +01:00
enkore
4c37834df4 Merge pull request #282 from t3zla/master
Added previous song support to the spotify module, activated by scrolling down while over the module in the status bar
2016-01-26 22:34:59 +01:00
enkore
f05a16482b Merge pull request #308 from tukss/mpd-unix-socket
add support for MPD connects via AF_UNIX sockets
2016-01-26 22:34:38 +01:00
enkore
69f5835223 Merge pull request #306 from janoliver/master
Added module for tracking the status of Batch computing jobs on a cluster running the Sun Grid Engine (SGE)
2016-01-26 22:33:58 +01:00
Philipp Edelmann
45377b12c3 add support for MPD connects via AF_UNIX sockets
A port number equal to 0 now lets the mpd module interpret the host as
a path to a socket.
2016-01-22 23:27:53 +09:00
Jan Oliver Oelerich
691453950b fixed indentation 2016-01-20 09:11:30 +01:00
Jan Oliver Oelerich
0fce823952 fixed a bug of running jobs not being displayed. 2016-01-20 09:09:32 +01:00
Jan Oliver Oelerich
f32c8e0650 reverted .gitignore and fixed indents of sge.py 2016-01-19 10:17:50 +01:00
Jan Oliver Oelerich
6925770e4f Added module for tracking the status of Batch computing jobs on a cluster running the Sun Grid Engine (SGE) 2016-01-19 09:38:47 +01:00
Maxi Padulo
f12d1f9d48 Fix handler not executing external cmd (#301)
Wrong name on function call was raising AttributeError
exception disrutping the code execution.
2016-01-12 13:03:50 +01:00
enkore
6520d1e770 Merge pull request #299 from mxlian/master
backlight module increasing brightness on scroll not working
2016-01-11 12:43:09 +01:00
Maxi Padulo
b132c4d842 Fix backlight not increasing brightness 2016-01-09 17:39:46 +01:00
David Bronke
084269cf0d Fix typo in MoonPhase.status.
This fixes the default shown in the docs, so copy/pasting it into your config won't end up giving you a broken `Waning Crescent` mapping.
2016-01-08 02:12:32 +00:00
enkore
a356e42c12 Fix pulseaudio creating zombies (#293) 2016-01-05 12:51:39 +01:00
enkore
f40feda2c4 Merge pull request #281 from fabrox/master
Implemented optional volume display/setting as in AlsaMixer.
2016-01-05 12:49:06 +01:00
Lorian Coltof
ef58c5a6fa Added the bar_design option in the format of the battery module 2016-01-03 16:43:29 +01:00
Douglas Eddie
731749f0e3 Added check for ismount() and empty directories.
Previously the free space of the underlying filesystem would be reported if the path provided was a directory but not a valid mountpoint. This adds a check to first confirm whether a directory is a mountpoint using os.path.ismount(), and if not, then runs an os.listdir() to count the files; empty directories are considered not mounted.

This functionality allows for usage on setups with NFS and will not report free space of underlying filesystem in cases with local mountpoints as path.
2016-01-03 16:43:29 +01:00
Douglas Eddie
1c4f941304 Improved handling of (un)mounted drives/partitions.
richese provided base for new options.
2016-01-03 16:43:29 +01:00
Nuno Cardoso
87c01278f7 Added double click support 2016-01-03 16:43:29 +01:00
Alexandr Mikhailov
3d22043881 Fixed global color with max severity alert 2016-01-03 16:43:29 +01:00
Alexandr Mikhailov
a09bf88007 Another PEP8 compatibility fix 2016-01-03 16:43:29 +01:00
Alexandr Mikhailov
0aeec83741 Pep8 correction 2016-01-03 16:43:29 +01:00
Alexandr Mikhailov
b2dd1b46ca Added Exception for incorrect Zabbix authentication and implemented global color for module result 2016-01-03 16:43:29 +01:00
Alexandr Mikhailov
bac8a05d41 Simplify individual alerts assignment 2016-01-03 16:43:28 +01:00
Alexandr Mikhailov
31374a2ec4 Added Zabbix module 2016-01-03 16:43:28 +01:00
Jan Fader
b6a472e014 fixed documentation of solaar 2016-01-03 16:43:28 +01:00
Jan Fader
09e2e64d36 initial commit of solaar.py 2016-01-03 16:43:28 +01:00
fahrstuhl
2a65efa068 adds doc for variant feature 2016-01-01 18:18:01 +01:00
fahrstuhl
0a17ee2bfb PEP8 compliance 2016-01-01 14:05:55 +01:00
fahrstuhl
0a63932c62 adds variant to xkblayout 2016-01-01 14:04:32 +01:00
Maximiliano
47f1f72c5c disk module: corrected doc string 2015-12-22 17:14:38 +01:00
enkore
378d913caf Merge pull request #283 from PolarNick239/master
GPU temperature and memory usages modules (nvidia only)
2015-12-21 23:20:12 +01:00
enkore
b1aabe3b52 Merge pull request #285 from facetoe/openvpn
Make symbol configurable in openvpn module
2015-12-21 23:19:34 +01:00
enkore
e430454905 Merge pull request #280 from richese/misc_settings
Added options to change logfile and internet check server.
2015-12-21 23:19:24 +01:00