Commit Graph

914 Commits

Author SHA1 Message Date
casey langen
6e801eee45 Fixed ISpectrumVisualizer::Write return value. 2016-11-05 20:47:36 -07:00
Casey Langen
0dcee1a632 Suppress SIGPIPE errors in *nix -- they may occur with visualizers. 2016-11-05 20:46:31 -07:00
casey langen
53ad470a78 Fixed a crazy character encoding issue with certain UTF-8 control
characters. Also, re-enabled the multi-threaded indexer, it was
not the source of the crash.
2016-11-01 23:17:50 -07:00
casey langen
ae6775fc21 try/catch around tag reading, and also disable the multi-threaded indexing
for now.
2016-11-01 21:42:36 -07:00
Casey Langen
472e3ef2a8 Fixed macOS (and likely Linux) compile. 2016-10-31 23:18:56 -07:00
casey langen
101d002921 Added IVisualizer base interface for PCM and Spectrum visualizers. Added
configurable hotkey to show the current visualizer. A couple other small
cleanups and fixes.
2016-10-31 23:11:31 -07:00
casey langen
c2e519ca8c Added IPcmVisualizer, ISpectrumVisualizer and a very simple facade to
access them called Visualizer.

Tweaked Player.cpp to use Visualizer and pump audio data to the selected
plugin if one is available.
2016-10-30 23:56:34 -07:00
casey langen
1b7ed8ad64 Added fftw3 support so we can calculate a frequency histogram to be used
for audio visualizations.
2016-10-30 18:40:40 -07:00
casey langen
0e11128d0c Fixed a deadlock on shutdown introduced in the previous commit. 2016-10-21 21:19:21 -07:00
casey langen
144e5eeadc Cleaned up some old code -- removed ThreadHelper and integrated the
functionality into Indexer. In the future we should use asio for this sort
of thing.
2016-10-19 23:06:28 -07:00
casey langen
dd0e413e38 Fixed auto-scroll behavior in TrackListView -- had some backwards logic
last night.
2016-10-04 10:12:08 -07:00
casey langen
6dbde108f7 Fixed a silly null pointer dereference in TrackListView related to
auto-scrolling behavior.
2016-10-03 23:50:06 -07:00
casey langen
3476c7b2ed Fixed a bug in ListWindow() where setting the selected index would not
result in a repaint.
2016-10-03 23:38:30 -07:00
casey langen
3123701db2 Automatically scroll to the playing song if the user hasn't touched the
tracklistview for 30 seconds.
2016-10-03 23:19:51 -07:00
casey langen
afca90fb13 Updated version to 0.2.2 2016-10-01 12:31:40 -07:00
Casey Langen
0a9b69a5f5 Fixed an off-by-one error in TransportWindow track calculation. Also fixed a bug where the transport was redrawing every second when stopped. 2016-09-28 20:57:28 -07:00
casey langen
3db2331736 A couple small source cleanups, plus updated the TransportWindow to
display volume percentage.
2016-09-25 00:01:23 -07:00
casey langen
673f6ff256 Update README.md 2016-09-20 22:11:23 -07:00
Casey Langen
eccefc0aa8 Small update to CMakeLists.txt to fix non-brew compile in macOS 10.12. 2016-09-20 17:47:48 -07:00
casey langen
855c7d54f9 Update README.md 2016-09-20 13:30:49 -07:00
casey langen
a05b1425d8 Update README.md 2016-09-20 13:30:42 -07:00
Daniel Önnerby
c31b708b21 Merge pull request #103 from clangen/master
Awesome 😃
2016-09-20 22:15:46 +02:00
Casey Langen
d6427976b1 Version bump to 0.2.1 2016-09-20 12:47:37 -07:00
casey langen
aaacb11219 Swapped shuffle and repeat hotkeys. 2016-09-20 12:17:15 -07:00
casey langen
bfd6a80e96 Fixed a resize issue in ConsoleLayout where a rounding error could lead to
an incorrect log window size.
2016-09-20 11:14:26 -07:00
casey langen
935bf6833a Fixed an old off-by-one error in Text::BreakLines, and updated
DialogOverlay appropriately.
2016-09-20 11:14:02 -07:00
casey langen
c9945d5af8 - Modified LayoutBase to emit events on focus terminate or wrap
- Updated LibraryLayout to use FocusTerminated event to simplify logic
  around focusing the transport, instead of using null checks in
  FocusNext() and FocusPrev().
2016-09-19 13:41:08 -07:00
casey langen
935ed10de9 Fixed now playing library view focus by removing some code that never
should have been there in the first place.
2016-09-18 01:19:25 -07:00
casey langen
e7752eb3d0 Changes to support transport focus:
1) Added VolumeUp, VolumeDown, SeekForwad, SeekBack to Playback util
2) Updated GlobalHotkeys for (1)
3) Added support for UP/RIGHT to increase volume or seek forward, and DOWN/LEFT
   to decrease volume or seek back.
2016-09-17 23:04:34 -07:00
Casey Langen
bec8caf280 Preparing TransportWindow for focusing capabilities:
1) Added more to ILayout's interface, including focus mode (circular
   versus terminating), and the ability to focus by index.
2) Added pseudo-focus modes to TransportWindow so it behaves vaguely
   like a layout, but without the overhead.
3) Removed unused WindowLayout and updated build files.
4) Fixed a bug in MainLayout where focused view wasn't being properly
   Blur()'d when changing focus to the command bar
5) Fixed some FocusPrev() and FocusNext() logic in LayoutBase
2016-09-17 22:37:08 -07:00
casey langen
0f3b577838 Fixed taglib plugin build on Windows by undefing HAVE_CONFIG_H. Not sure
how it ever worked to begin with? Some old cached build file?
2016-09-16 14:37:48 -07:00
casey
18edf20cec Ensure "album artist" is properly queried in TrackList so jumping functionality works in library mode. 2016-09-16 13:45:37 -07:00
casey
c4230b169b Added library browsing by "album artist" as well as just "artist" 2016-09-14 22:10:49 -07:00
casey
cabbfb3800 Corrected musikbox project dependencies -- they was working before, by accident. Recent VS2015 updates caused breakage. 2016-09-14 22:10:49 -07:00
Casey Langen
5df01cb2ae Removed '-fpermissive' from compiler flags -- not necessary (and potentially harmful) 2016-09-13 14:52:40 -07:00
casey
2379b94473 Fixed a couple memory leaks where adapters were not being properly deleted. 2016-09-11 11:33:00 -07:00
Casey Langen
db4b97711c Version bump. 2016-09-02 19:08:57 -07:00
Casey Langen
da6c3fc393 Cleaned up first run dialog text. 2016-09-02 19:08:35 -07:00
casey
ca9a9e3489 Added bounds checking to Window and DialogOverlay so we don't get crashy if things are positioned incorrectly. 2016-09-02 16:28:34 -07:00
casey
1cea4cde2e Small correction to padding calculation when breaking lines in DialogOverlay. 2016-09-02 12:23:49 -07:00
casey
1b90bb5999 Align DialogOverlay buttons to the right. 2016-09-02 12:17:43 -07:00
casey
38912b9e63 Added text alignment options to ShortcutsWindow. 2016-09-02 11:59:15 -07:00
casey
7e60827aab Ensure the OverlayStack is cleared when the app loop finishes. 2016-09-02 10:19:26 -07:00
Casey Langen
2a819eb0ad Renamed Overlays -> OverlayStack 2016-09-02 10:09:43 -07:00
Casey Langen
77f3293dd7 Removed old, unused LayoutStack stuff. 2016-09-02 10:00:57 -07:00
casey
b320cc837d - Fixed MSVC compile
- Fixed a bug in Overlays where we were performing operations on an invalid iterator, leading to undefined behavior.
2016-09-02 09:53:39 -07:00
Casey Langen
5a0597d472 - Fixed bug in Overlays related to pushing the same layout multiple times
- Added a "welcome to musikbox!" first run dialog in SettingsLayout
- Added App::Overlays() that can be used to manage overlays from UI components
2016-09-02 09:06:08 -07:00
Casey Langen
e0f232fcad Added auto-dismiss behavior to DialogOverlay, and some additional cleanup. 2016-09-02 06:31:06 -07:00
Casey Langen
55b2f262bf - Added Overlays::Push, Overlays::Remove
- Fixed dismissing of overlay and proper redrawing in App
- New overlay frame style in Colors
2016-09-02 00:34:04 -07:00
Casey Langen
b1bbb6485c Moved ShortcutsWindow to cursespp so it can be reused. TODO: reuse in DialogOverlay. 2016-09-01 23:30:16 -07:00