Prefer to have widgets force a draw when their data changes. This should
reduce draws (unless the user has a module installed that updates >=
1/sec, the old draw default).
This should also remove a source of some of the race conditions that
users were experiencing (though not all, there are still many).
* Add ability to select and open builds
* Add commit message (oneline style) to text displayed in the widget
* Add documentation on the new keyboard shortcuts
* Cleanup some duplicate code
When no widget has focus, press the letter key to focus on the widget
assigned to that letter.
Example:
GitHub (d)
Press "d" to focus on the GitHub widget.
Using the todo module as a template, this change adds interactivity
to the Jira module to allow selecting individual issues and opening
them in a web browser.
The j and k keys (or arrow keys) move up and down, and pressing
enter will open the URL for a given issue in the system's default
URL handler.
For my own use case (and anyone in a similar situation), the Jira
module is more useful if I can specify a list of projects to
display issues from, rather than no project (which selects all
projects) or one specific project.
New supported syntax:
` project: ["PROJA", "PROJB"]`
If this is merged, documentation for the Jira module should be
updated accordingly. (Sorry, I would have done this myself but
I'm not sure what the right place is - when grepping I find
multiple places in the repo containing documentation strings
and I'm not sure what the "master" location is)
Specifying a single project (or no project) is still supported -
behavior shouldn't change for anyone who doesn't change their
config.
Widget titles can now be specified in the config file via a 'title' key.
Example:
wtf:
mods:
todo:
title: Tada
which can include emoji. No need to force everyone to look at my emoji,
now they can define their own.
Widgets can inform whether or not they should get tab focus.
Widgets that provide additional functionality should return true.
Widgets that have no extra capability should return false.
This allows the FocusTracker to only tab through and focus on widgets
for which it provides value.