casey langen
a21f60ba97
Cleaned up an edge case where adding stuff to the play queue while not
...
playing, then switching to the play queue, would result in nothing being
selected.
Also fixed a bug where trying to play an empty play queue (or playing
something when nothing is selected) would crash.
2017-01-21 22:54:12 -08:00
casey langen
6f51debdde
Fixed bug where deleting the currently playing item from the play queue
...
would cause the second, instead of first, track in the queue to start
playing.
2017-01-21 22:28:43 -08:00
Casey Langen
ce24a7064b
Fixed macOS compile.
2017-01-21 22:11:13 -08:00
casey langen
743d36dc31
Added proper hotkey support for play queue mutation.
2017-01-21 22:07:36 -08:00
casey langen
d01b36c7b4
Added support for modifying the play queue with categories.
2017-01-21 20:59:47 -08:00
casey langen
9ab7769675
Added a new PlayQueueOverlays popup that allows the user to enqueue tracks
...
into the play queue. Up next will be enqueing categories (albums, artists,
etc) in the same way.
2017-01-21 20:33:38 -08:00
casey langen
462ac04448
Added ITrackList interface to sdk. We'll use this for plugins in the near
...
future.
2017-01-21 17:24:32 -08:00
casey langen
06438830fc
Added playback index tracking to PlaybackService::Editor.
2017-01-21 17:16:05 -08:00
casey langen
1802323279
Incremental work to support tracklist editing. Starting with the play
...
queue:
1. Added ITrackListEditor interface
2. Added PlaybackService::Edit() that returns a little data structure that
exposes an ITrackListEditor. Used by NowPlayingLayout. Implementation is
still incomplete.
2017-01-21 15:03:28 -08:00
casey langen
f084da0963
Updated cursespp::Window to use treat X and Y as coordinates relative to
...
the parent window. Added GetAbsoluteX and GetAbsoluteY methods to
cursespp::IWindow interface.
2017-01-20 23:16:19 -08:00
Casey Langen
fd37afb33f
More work on custom colors. Apple Terminal is now "properly" supported.
2017-01-16 17:20:57 -08:00
casey langen
33fea97dfe
Fallback to better colors if the terminal has 256 colors, but does not support setting custom values.
2017-01-17 00:42:44 +00:00
casey langen
7c011acadf
Small tweaks to make things work on the Raspberry Pi.
2017-01-16 07:07:27 +00:00
Casey Langen
4a722e0f0c
You know what? We don't need to keep a list of buffers at all -- just a count is good enough.
2017-01-15 14:05:30 -08:00
Casey Langen
dafbf480e8
Reduce CPU usage in CoreAudioOut:
...
* We don't need to count buffers by provider, counting all buffers is good enough
* Use an std::deque instead of std::list to maintain pending buffers
* Removed boost, use std instead.
2017-01-15 11:56:09 -08:00
casey langen
e518d3a575
Version bump.
2017-01-15 11:19:46 -08:00
Casey Langen
e4bb690a56
Make sure we include libnullout in the installation.
2017-01-14 14:43:32 -08:00
casey langen
f0a15e584b
Updated CHANGELOG.txt
2017-01-14 12:06:01 -08:00
casey langen
452d0a43f5
Some *nix and macOS compiler fixes.
2017-01-14 11:56:27 -08:00
casey langen
3e1165dd87
Fixed NullOut's CMakeLists.txt.
2017-01-14 11:54:15 -08:00
casey langen
9616bc39e9
Added a null output plugin.
2017-01-14 11:52:53 -08:00
casey langen
f77a5ef23a
Updated CHANGELOG.txt
2017-01-12 21:17:56 -08:00
Casey Langen
fb8ad79a59
Fixed a bug in Player where buffers may not get properly released during seeking.
2017-01-11 21:03:55 -08:00
casey langen
afd24ca9aa
(Hopefully) fixed crash in WASAPI audio stream routing. Unclear exactly
...
what was going on, but reordering cleanup seems to have fixed it.
2017-01-10 18:03:00 -08:00
casey langen
d85d8a3f3f
Third time's a charm.
2017-01-10 07:30:40 -08:00
casey langen
904293f080
More macOS fixes.
2017-01-10 07:07:26 -08:00
casey langen
b94f29305e
This should fix ConsoleLayout's compile on macOS.
2017-01-10 07:01:19 -08:00
casey langen
f6403bd5f7
- Deleted MetadataKeyValue and MetadataValue from core. No idea what these
...
are/were, but they're not used anymore
- Deleted OutputWindow.h -- not necessary to subclass
- Moved ListView::SetAdapter functionality into the ScrollableWindow base
class
- Cleaned up adapter ownership by using shared, instead of raw, pointers.
2017-01-09 23:15:26 -08:00
casey langen
05afff01ad
Fixed Linux compile... surprising it worked on macOS.
2017-01-09 21:40:30 -08:00
casey langen
f7d660720c
A few more prototype updates -- working transport buttons, fixed listview
...
styling, etc.
2017-01-08 21:17:00 -08:00
casey langen
c71f5a5f10
Updated musikbox to take advantage of LocalLibrary's ability to dispatch
...
results on a specified MessageQueue to reduce gymnastics required to
update category and track list views.
2017-01-08 21:16:14 -08:00
casey langen
5af9b778f5
Added PlaybackEvent, VolumeChanged, and TimeChanged to PlaybackService.
...
Mirrors the underlying Transport events, but will raise them on the
MessageQueue thread.
2017-01-08 13:14:38 -08:00
casey langen
4474b96f28
Updated prototype to run queries in the background and update on the main
...
thread. Also, track filtering works properly.
2017-01-07 23:19:35 -08:00
casey langen
442697e9ce
Modified ILibrary interface to also accept an IMessageQueue reference. The
...
implementation will dispatch results on this queue if it's non-null.
2017-01-07 22:53:06 -08:00
casey langen
c9619c88d6
More proof of concept work, showing core and glue can be re-used for other
...
apps easily.
2017-01-07 15:44:37 -08:00
casey langen
49abe0526d
Proof of concept MessageQueue implementation for raw Win32 with
...
PlaybackService integration. Visualizers work too.
2017-01-07 13:07:22 -08:00
casey langen
138766e8ff
Don't re-define WINVER in core/config.h if it's already defined.
2017-01-07 13:06:27 -08:00
casey langen
1ff0ac00f3
Added a protected method to MessageQueue to get the next dispatch time.
2017-01-07 12:23:23 -08:00
Casey Langen
2f57240125
Fixed macOS compile again.
2017-01-07 00:14:37 -08:00
casey langen
9812e2fe3d
- Moved PlaybackService and TrackList from glue to core
...
- Moved all current queries from box to blue
2017-01-06 23:49:46 -08:00
Casey Langen
79cf91851d
Fixed macOS (and likely Linux) compile.
2017-01-06 18:34:33 -08:00
casey langen
0d7dfce805
Moved some sources out of "musikbox" and into a new "glue" directory. This
...
is for non-UI code that doesn't necessarily belong in core, but can be
reused across clients.
2017-01-06 18:28:00 -08:00
casey langen
45bac55dc3
Put MessageQueue behind an interface so implementation can vary on
...
different platforms.
2017-01-06 16:07:47 -08:00
casey langen
3ba692d20a
Added back some old files I deleted a long time ago, just so we can do
...
some platform-specific testing easily.
2017-01-06 12:37:08 -08:00
casey langen
40fe1512de
Ninja fix for non-win32 platforms.
2017-01-05 23:29:01 -08:00
casey langen
158ba27528
Some win32-specific optimizations -- don't worry about redrawing the
...
window nearly as frequently when minimized. Further reduces CPU usage in
the common case (music playing in the background).
2017-01-05 23:28:12 -08:00
casey langen
8e94592f55
Updated message queue next time check to not require a mutex -- just use
...
an atomic int instead.
2017-01-05 20:45:46 -08:00
casey langen
1475abbbac
- Fixed nomad float sample scaling to use fewer instructions.
...
- Fixed PlaybackService to read duration from transport first.
2017-01-05 01:44:53 -08:00
casey langen
fd39258578
Fixed Outputs.cpp to load correct default plugins.
2017-01-05 00:13:01 -08:00
casey langen
a6e78c0941
Updated optimization flags.
2017-01-04 19:22:05 -08:00