Age | Commit message (Collapse) | Author |
|
Please don't ever let me stay up until 29:57 again. Future me will thank
you in advance.
|
|
Currently uses meta+(c, x, n, p, up, down) keys as the only interaction
method, but that'll change soon!
|
|
I _love_ the KeyboardSelector tool.
|
|
Currently bug-free and doesn't change anything about existing mtui
behavior! Meta N to create a new player, meta up/down to switch between
which one you're interacting with. Each player has its own queue.
Eventually (soon(TM)) there'll be much better UI to go with all this!
|
|
...in reveal(). This fixes the bug where the revealed track would always
be positioned at the bottom of the screen, which happened because
reloading the listing reset the scroll index back to the top.
|
|
|
|
This makes the pause indicator (next to the time remaining in the queue)
work again.
|
|
|
|
|
|
|
|
|
|
Although we don't have any context menu options which start with the
letter G yet, if we did, the keyboard selector would (intentionally)
take priority and focus that element instead of doing jump to start/
bottom behavior. However, pressing Home/End will always work (once it's
implemented).
|
|
This means we can basically guarantee 0% CPU usage when nothing on the
screen is changing! There may still be some kinks to work out, but I've
tested most features and fixed any apparent bugs (including an unrelated
bug in the suspend feature which made it crash when resuming the process).
|
|
Also make it caseless: q = Q. See todo.txt (which also has a large new
note regarding duplicates in the selection system).
|
|
|
|
Now /that/ was hard to fit in the commit line length. (:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also add some todo's.
|
|
Or the beginning of one, anyway!
|
|
|
|
|
|
This means mtui won't be able to access tracks that were downloaded
before, but oh well. It also means we get to get rid of js-base64 as a
dependency!
|
|
|
|
|
|
Sorry :P
|
|
|
|
|
|
|
|
"v" increases because it's lowercase and therefore more likely to be
accidentally pressed, hence more likely to confuse the user when it
decreases the volume (if it decreased the volume - since it increases
the volume, it generally doesn't seem to have any effect until you've
already discovered that v and V are used for volume controls).
|
|
|
|
Items in the queue now have a menu, and if you pick "play later" from it
(the other option is "remove from queue"), it'll move that item into
somewhere further down in the queue. If it was already playing when you
select play later, it'll first skip it, then move it.
|
|
|
|
E.g. to interweave two groups together.
|
|
I.e, the "Up (to group)" button and the "(This group is empty)"
pseudo-playlist-item.
|
|
|
|
Also let the user cancel (esc) the "jump to" to restore the selected
index to wherever it was before.
A neat thing you can do with this: Your cursor will automatically move
to whatever the matched result of your query is while typing. If nothing
is found, your cursor will stay where it was the last time it found
something: so, if you press enter to confirm, AFTER you've queried
something but WHILE your query doesn't currently mathc anything, it'll
keep the cursor at whatever was most recently matched. So basically,
Ctrl-F'ing "excir" will match "Excursions", since "exc" will have
matched it already.
|
|
This is foundation for actively highlighting the result of a jump-to
while typing. (Since your focus is on the ListingJumpElement, there
needs to be some way to see which item would be selected in the
GrouplikeListing. That's what this commit implements.)
This also looks pretty nifty when you press M to open the context menu,
if I do say so myself.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|