Commit Graph

1927 Commits

Author SHA1 Message Date
casey langen
3fb7882d89 Added the ability to specify title ellipsis mode (beginning/middle/end).
Fixes #209.
2018-12-28 23:18:40 -08:00
casey langen
7a9d4c7c99 Merge branch 'master' into clangen/album_art_indexer_fixes 2018-12-28 14:00:50 -08:00
casey langen
458bbbb8e8 Ensure EqualizerOverlay stays in sync with settings from the remote client. 2018-12-28 13:55:43 -08:00
casey langen
5e0c230470 Updating equalizer settings remotely from the Android app is working now. 2018-12-28 13:44:53 -08:00
casey langen
f974911ded More eq ui boilerplate. 2018-12-28 01:17:38 -08:00
casey langen
87fbf5801d Stubbed out some more of the remote eq android ui 2018-12-28 00:10:06 -08:00
casey langen
497b35a008 Added the ability to get/set equalizer settings via IEnvironment, and
added related messages to the WebSocketServer.

Also implemented sending/updating eq settings in the Android client data
layer, and stubbed a screen that can be used for display eq values.
2018-12-27 23:22:23 -08:00
casey langen
39b068fc52 A couple more ffmpeg decoder bug fixes -- wma files seem to be decoding properly on macOS (and likely Linux) now. 2018-12-27 13:40:27 -08:00
casey langen
e3a3da754e Fixed *nix compile error. 2018-12-27 11:48:08 -08:00
casey langen
056ec704f5 Fixes to ensure FFMPEG_DECODER is defined on *nix builds. 2018-12-27 11:37:01 -08:00
casey langen
205e3e301d Fixed a couple edge case bugs in Stream and FfmpegDecoder. 2018-12-26 23:36:31 -08:00
casey langen
cc134775ef Added a new IDebug interface to the SDK -- plugins can opt-in to get an instance to one of these and write debug information to the standard location, just like the rest of the app. 2018-12-26 22:55:53 -08:00
Casey Langen
5d46fbdcad Hopefully fixes Fedora 29 ffmpeg build. 2018-12-26 21:24:27 -08:00
casey langen
f4f9c828f4 Version bump for upcoming release. 2018-12-26 18:10:36 -08:00
casey langen
56ed573a17 Fixed transparency toggle in settings. 2018-12-26 12:51:26 -08:00
casey langen
00153464aa Added the ability to toggle background color mode in settings. 2018-12-26 12:35:57 -08:00
casey langen
f6f5b9c327 Fixed Windows compile. 2018-12-25 23:55:54 -08:00
casey langen
20d0f02d2d Updated debug module (pulled from upstream f8n) and simplified ConsoleLayout. Also fixed up some more instances where we were using raw int64_t attrs instead of Color in cursespp. 2018-12-25 23:53:30 -08:00
casey langen
2ef57ec0ba Fixed a bug where switching the output driver while playback is stopped did not work properly. 2018-12-25 22:16:22 -08:00
casey langen
2f66efdfe2 Enable FFMPEG_DECODER in Win32 builds. 2018-12-25 20:15:49 -08:00
casey langen
81888780b4 Added support for opus, wavepack and wma when the ffmpeg decoder is
enabled.
2018-12-25 15:41:55 -08:00
casey langen
b53aa33ae4 Need to set escdelay later in the init process. 2018-12-25 05:51:26 -08:00
casey langen
a6bc4a27d1 Updated ffmpeg decoder to use ffmpeg 4.1 (and also fixed a small bug). 2018-12-24 23:42:32 -08:00
casey langen
47d3c6aa29 Fixed Windows compile error. 2018-12-24 23:31:34 -08:00
casey langen
a74d9e918d First crack at auto-detecting distros that need to use bundled taglib. 2018-12-24 15:41:16 -08:00
casey langen
f55628de19 Improved UTF8 detection. 2018-12-24 11:01:41 -08:00
casey langen
716a32802f Ugh, sh -> bash for the time being. 2018-12-23 17:34:52 -08:00
casey langen
a43790a70f Use sh instead of bash in wrapper scripts to maximize compatibility. 2018-12-23 17:26:20 -08:00
Casey Langen
4a5409bfcd Added some newlines to the LANG error. 2018-12-23 14:37:46 -08:00
Casey Langen
8fca39055e Don't allow the app to start if a valid LANG isn't set in the
controlling terminal.
2018-12-23 14:36:05 -08:00
casey langen
69fe527153 Re-enabled scrollbars on FreeBSD. Seems to be working fine on a fresh install. 2018-12-23 13:31:54 +00:00
casey langen
e01581495b Fixed #207 -- libmicrohttpd in FreeBSD no longer hangs on shut down so
we don't need to build it from source.
2018-12-23 12:44:29 +00:00
casey langen
c06c774bd7 Allow for customizing the quit key via settings.json using the AppQuitKey property.
Right now there's no UI for it, and it may stay this way because it's an uncommon use case and I have some concerns about users accidentally binding it to an important key and making the app difficult to start/navigate.
2018-12-22 11:49:28 -08:00
casey langen
9cc2d71c17 Simplify EqualizerOverlay a tad. 2018-12-21 20:22:24 -08:00
casey langen
c1dac7ef8d Made Checkbox a subclass of TextLabel so we get styling (alignment,
weight, etc) for free.
2018-12-21 20:21:52 -08:00
casey langen
7de549eb33 Removed macOS XCode 7.3 tooling support -- it required some gross
compile-time hacks.
2018-12-20 23:21:48 -08:00
casey langen
c43c8f1d90 Don't debounce EQ updates -- it's not necessary. 2018-12-20 22:01:56 -08:00
casey langen
f732a87f3d Migrated MainLayout to use new cursespp AppLayout. 2018-12-20 21:41:58 -08:00
casey langen
160262dd7a Fixed a bug in AppLayout::SetPadding caused by a bad merge. 2018-12-20 20:04:39 -08:00
casey langen
2113875212 Updated includes to more closely match upstream cursespp 2018-12-20 18:39:39 -08:00
casey langen
6e15a895aa Updated integrated cursespp's directory structure to match external
project's to make future merging much easier.
2018-12-20 17:59:55 -08:00
casey langen
a82d736a8b Finally fixed the overlay flicker bug that's been driving me crazy for
about a year.
2018-12-20 12:04:42 -08:00
casey langen
84c026322c Merge branch 'clangen/supereq' of https://github.com/clangen/musikcube into clangen/supereq 2018-12-19 23:38:25 -08:00
casey langen
3b6a806c88 Added the missing EQ band -- this was causing undefined behavior. 2018-12-19 23:31:02 -08:00
casey langen
3de217b2a0 Massive cursespp upgrade. 2018-12-19 20:38:05 -08:00
casey langen
a87c8563c0 Fixed a crash when falling back to default dimen values. 2018-12-19 17:29:00 -08:00
casey langen
c59ec77358 Fixed a memory leak and updated VS2017 project dependencies. 2018-12-19 17:19:12 -08:00
casey langen
6236247969 Fit & finish and license. 2018-12-19 16:14:30 -08:00
casey langen
8b164fc035 VS2017 project files for supereq. 2018-12-19 16:12:28 -08:00
casey langen
f70c58ef6b Seems to be working properly now! 2018-12-18 23:57:43 -08:00
casey langen
0681e09e18 Equalizer is doing stuff -- just not properly. 2018-12-18 23:36:40 -08:00
casey langen
a1be9aa779 Fixed Linux compile and ListWindow frame color in overlays. 2018-12-18 22:51:29 -08:00
casey langen
29fb896d33 Fixed a super old fence-post error. 2018-12-18 22:25:51 -08:00
casey langen
64691f8c83 More boring incremental equalizer UI work. 2018-12-18 22:24:08 -08:00
casey langen
db37f5e5f0 Started stubbing out an EqualizerOverlay 2018-12-18 19:35:05 -08:00
casey langen
b190afd805 Added a stubbed Shibatch SuperEQ DSP plugin. Sources were taken/stolen from the DeaDBeeF project, which is more or less a straight port of the original, with added support for floating point samples. 2018-12-17 23:46:13 -08:00
casey langen
d5924f936f Moved remaining Android binaries to musikcube-bin repository, and
added native FLAC playback support using the module gsora built.

Also removed an old, default `dimens.xml` file that was making aapt
angry.
2018-12-15 18:09:51 -08:00
casey langen
d8000d1fba Updated libressl, libcurl, boost, and pdcurses. 2018-12-15 17:31:26 -08:00
casey langen
464ec0485c Merge branch 'master' into clangen/album_art_indexer_fixes 2018-12-09 00:27:32 -08:00
casey langen
2df1dc8fd9 Updated Android app to use the latest tooling. Also updated dependencies
and cleaned up a few warnings.
2018-12-09 00:27:04 -08:00
casey langen
8e38aedd16 Added ITagStore::ContainsThumbnail(), and added optimizations around not
re-processing thumbnails at the track level if artwork already exists at
the album-level.
2018-12-08 23:11:50 -08:00
casey langen
84b138e138 musikdroid tooling updates. 2018-11-07 19:54:17 -08:00
casey langen
f32dc96fba Improved support for terminals that have transparent backgrounds. 2018-11-03 14:41:18 -07:00
casey langen
0bde25edd3 Preparing for 0.51.0 release 2018-08-25 17:02:45 -07:00
casey langen
78f935c59f Warning cleanup 2018-08-25 17:02:04 -07:00
casey langen
27a46cac19 Added the ability to configure WASAPI and DirectSound buffer sizes. 2018-08-25 16:42:11 -07:00
casey langen
a1728851c8 Fixed a bug in the plugin overlay's number validator. 2018-08-25 16:41:44 -07:00
casey langen
93824b89d8 Gradle plugin version bump 2018-08-25 10:46:47 -07:00
casey langen
7d43dc9b39 Added right-click context menu support. 2018-08-19 11:29:02 -07:00
casey langen
db37e5823b libFLAC binary upgrade. 2018-08-19 11:28:45 -07:00
casey langen
9ca925bce4 One more warning cleanup. 2018-08-12 23:28:56 -07:00
casey langen
73447a7030 Some more warning cleanups. 2018-08-12 23:13:38 -07:00
casey langen
2e00d0c536 OK, now that there are clear repro steps, the crash on invalid metadata
should be fixed for reals.
2018-08-12 22:37:14 -07:00
casey langen
a1591667f9 This should fix the server crash that happens when a client queries a
now playing that contains tracks that have been removed from the
library.
2018-08-12 22:17:47 -07:00
casey langen
e4f36d011d Cleaned up a few more compile warnings. 2018-08-12 18:08:41 -07:00
casey langen
01bc1eae3f Some clang compiler warning cleanup. 2018-08-12 18:00:00 -07:00
casey langen
b8da6430b5 Ensure shutdown happens promptly if the indexer is still running. 2018-08-07 12:16:01 -07:00
adem
0935a4e933 Update ru_RU.json 2018-07-16 01:35:36 +04:00
casey langen
2da57cc984 Revert "A bit more bold experimentation."
This reverts commit 84b2ff5544.
2018-07-14 16:09:22 -07:00
casey langen
98d6438685 Revert "A bit of A_BOLD experimentation. May revert."
This reverts commit 1b7f02d02e.
2018-07-14 16:08:33 -07:00
casey langen
84b2ff5544 A bit more bold experimentation. 2018-07-14 16:05:23 -07:00
casey langen
1b7f02d02e A bit of A_BOLD experimentation. May revert. 2018-07-13 23:15:03 -07:00
casey langen
b88abfa654 Added a flag to disable bold intensify for A_BOLD colors. 2018-07-13 22:11:41 -07:00
casey langen
e99fbc74fb More gruvbox_dark tweaks. 2018-07-13 20:25:22 -07:00
casey langen
bb9c837810 gruvbox tweaks. 2018-07-11 22:01:29 -07:00
casey langen
a06b554b6a Added an initial "gruvbox" theme. 2018-07-09 21:53:05 -07:00
casey langen
497c84008b Simplify a bit of PluginOverlay code 2018-07-09 21:52:55 -07:00
casey langen
26b17f94e3 Added missing default user agent implementation for HttpClient. 2018-07-09 21:52:33 -07:00
casey langen
157071ed9d Added precision to ISchema::DoubleEntry 2018-06-23 11:19:21 -07:00
casey langen
b2f4f7fde6 Cleaned up extraneous whitespace. 2018-06-22 23:29:55 -07:00
casey langen
3a0da6d7e4 Updated VS2017 compiler no longer liked libFLAC_static.lib after an
updated. Re-compiled, added a new binary.
2018-06-22 23:28:29 -07:00
casey langen
03fc3dac6c Android app version bump. 2018-06-22 23:28:19 -07:00
casey langen
8234e2937b Fixed *nix compile. 2018-06-22 23:03:36 -07:00
casey langen
edc0211038 Exposed "audio_endpoint_routing" to the wasapiout prefs schema. 2018-06-22 14:01:46 -07:00
casey langen
b3055da272 Updated NullOut to expose the playback speed multiplier as a config
schema.
2018-06-22 13:57:49 -07:00
casey langen
c94de607a4 Better bounding display logic. 2018-06-22 13:48:45 -07:00
casey langen
269140324c Added min/max value bounding for int and double schema types. 2018-06-22 13:26:00 -07:00
casey langen
e71ca2f70f Fixed #195: fixed a couple rogue, non-localized last.fm strings. 2018-06-22 12:53:33 -07:00
casey langen
0a3f1a4f68 Ensure ListWindow doesn't kill the selected item when an empty area is
clicked.
2018-06-22 12:48:56 -07:00
casey langen
a9ea1acb8f Checkpoint commit for plugin schema interfaces that can be used to build a dynamic configuration UI (similar to about:config) 2018-06-22 12:43:52 -07:00
casey langen
fa8b29026f Fixed a bug where ListOverlay::OnVisbilityChanged was not calling up to super, leading overlays not always properly disappearing. 2018-06-19 13:24:31 -07:00
casey langen
046ab523be Updated to the latest version of Android Studio and related tooling and
SDKs (including Fabric, Kotlin, Gradle and AppCompat). Fixed up compile
errors and warnings accordingly.
2018-06-10 22:44:06 -07:00
casey langen
01eae8299e Updated musikcubed/main.cpp with the new version.h location. 2018-06-09 22:54:08 -07:00
casey langen
8c928bd127 0.50.0 release prep. 2018-06-09 22:47:49 -07:00
casey langen
b4f8bf60aa Moved HttpClient into the SDK so plugins can use it as well. Required
some other minor restructuring.
2018-06-09 16:27:31 -07:00
adem
93568ff68d Remove junk from ru_RU.json 2018-06-08 11:54:58 +04:00
adem
50237873b9 Update ru_RU.json 2018-06-08 11:52:43 +04:00
casey langen
3fac0df917 Added fstream to Common.cpp -- this should make gcc happy again. 2018-06-05 23:00:36 -07:00
casey langen
7aac375a8c Tightened up the key bindings editor -- a handful of little things,
updated copy and the ability to reset keys to default. Also wired it
into the app settings screen to replace the hotkey tester.
2018-06-03 22:28:31 -07:00
casey langen
dabd4cc278 Added missing files to CMakeLists.txt 2018-06-03 20:56:27 -07:00
casey langen
1753a09862 Merge branch 'clangen/hotkey_viewer' 2018-06-03 20:54:43 -07:00
casey langen
a04a626178 Added hotkey backup. 2018-06-03 20:48:31 -07:00
casey langen
4a22c48293 Implemented Hotkeys::Set() and related functionality. 2018-06-03 12:06:57 -07:00
casey langen
e36fa357b9 Working hotkey reset. 2018-06-03 01:27:14 -07:00
casey langen
f1c39e2038 - added UI to set/replace hotkey values and also reset all to default
(not wired up yet)
- stubbed Hotkeys::Set() and Hotkeys::Reset()
- fixed TextInput::KeyPress in InputRaw mode.
2018-06-03 00:23:52 -07:00
casey langen
89dbbb5aee More incremental work to support hotkey viewing and editing. 2018-06-02 23:21:37 -07:00
casey langen
8c408ffed1 A bunch of small bug fixes for things that showed up in Fabric. 2018-06-02 13:40:03 -07:00
casey langen
7260ccf827 Beginnings of a hotkey editor implementation. 2018-06-02 13:01:00 -07:00
casey langen
1d4544d399 Fixed a bug where the DEL key wasn't triggering a "TextChanged" event in
TextInput.
2018-05-28 23:49:43 -07:00
casey langen
090ae0ea63 Fixed volume slider offset calculation. 2018-05-28 22:57:44 -07:00
casey langen
56209e84ff Extended mouse support to ListOverlay, PreampOverlay and
TransportWindow.
2018-05-28 22:57:44 -07:00
casey langen
9e410eb739 Ensure a double click focuses the active ListWindow, just like a single
click!
2018-05-28 22:57:44 -07:00
casey langen
e81fc57f1d Added support for PDCurses mouse wheel. 2018-05-28 22:57:44 -07:00
casey langen
39271142fa Fixed compiler warning. 2018-05-28 22:57:44 -07:00
casey langen
9048467e45 Basic mouse handling support! 2018-05-28 22:57:44 -07:00
casey langen
f9d57c06b4
Merge pull request #189 from benterris/move-proportionally
Add the ability to move the cursor proportionally
2018-05-20 21:15:45 -07:00
benterris
002762ace2 add command to move cursor proportionally to the track duration 2018-05-19 16:06:59 +01:00
adem
ffe7d07760 Update ru_RU.json 2018-05-14 14:18:30 +04:00
adem
df9583df2c Add Russian translation for musikcube 2018-05-14 13:22:35 +04:00
casey langen
0e9bfbaccc Fixed Windows compile. 2018-05-03 21:33:44 -07:00
Casey Langen
016176103c Moved LastFm to core, and wired it directly into PlaybackService so it
works from `musikcubed` as well. In the future we'll probably want
a repository for scrobblers... but for now this works.
2018-05-03 21:27:37 -07:00
casey langen
386eae43df Fixed lastfm on Linux. Need to test macOS and FreeBSD next. 2018-05-02 22:24:47 -07:00
casey langen
d2ab0a84f2 Fixed Linux compile... but getting an "Invalid API Key" error. 2018-05-02 22:07:41 -07:00
casey langen
c31514c315 Implemented the track.scrobble() call. Posts to last.fm work now! 2018-05-02 21:32:16 -07:00
casey langen
8a75e7e8b3 Added super basic UI for connecting to last.fm. Needs (a lot of) polish. 2018-05-02 01:41:27 -07:00
casey langen
722587e669 Some initial scaffolding for the last fm configuration UI. Nothing
user-facing yet.
2018-05-01 00:40:26 -07:00
casey langen
1e2582fb1d Fixed URL signature and the ability to create new sessions. Also added
the ability to store, load and clear sessions.
2018-04-30 21:59:28 -07:00
casey langen
e4a92dae4d Checkpoint commit for LastFm integration -- URL signing and working
`auth.getToken` call.
2018-04-29 23:01:29 -07:00
casey langen
a4c0056a07 Initial version of a simple wrapper around the libcurl "simple"
interface to make it a bit nicer to use. Nothing too exotic.
2018-04-29 21:44:19 -07:00
casey langen
c3a1a26130 Guard against returning negative limits. 2018-04-29 00:19:33 -07:00
casey langen
43101fe6d8 Fixed a bug where the set_volume remote API request was not returning
a response.
2018-04-12 00:45:37 -07:00
casey langen
00e62a1adb Fixed a bug where the same playback overview may be broadcast to clients
multiple times.
2018-04-11 00:37:59 -07:00
casey langen
7af0ae48c9 Move the it_IT translation to the correct directory. 2018-04-06 21:14:43 -07:00
DeVeL_AnOnIk
9489421033
Italian Translation for musikcube
See the readme for more info...
2018-03-20 21:27:37 +01:00
casey langen
4b9d554662 Fixed a bug where the notification may not stay gone. Also upgraded
Exoplayer and Kotlin versions.
2018-03-03 15:53:52 -08:00
casey langen
ae80169713 Added theme support via #pragma comment so the font chooser and menus
look nicer.
2018-02-23 23:29:17 -08:00
casey langen
b488951e1d Upgraded PDCurses -- was still about 80 commits behind upstream. Oops. 2018-02-23 23:28:29 -08:00
casey langen
6965684718 Repaired broken musikwin project -- even though it'll probably never be
used. Also created a solution for it so building is easier.
2018-02-23 17:23:27 -08:00
casey langen
47dc8d836b Fix SystemService crashes on Oreo devices. 2018-02-21 18:13:15 -08:00
casey langen
afb061aaf4 Ensure PlaybackService gets destroyed before the Library instance --
otherwise the play queue will not be serialized properly on exit.
2018-02-20 00:35:03 -08:00
casey langen
59fe25ec2d - Fixed the win32 build script
- Don't restore playback session if the setting is disabled
2018-02-20 00:28:11 -08:00
casey langen
c0284e2f82 Version bump for musikdroid release. 2018-02-19 23:49:34 -08:00
casey langen
9c0695c7ab Made SaveSettingsOnExit enabled by default now that it seems stable. 2018-02-19 23:48:31 -08:00
casey langen
a1cc7c5422 Addded a new setting to musikdroid that allows automatic playback
transfer from client to server when a headset is disconnected.
2018-02-19 14:40:24 -08:00
casey langen
15c59437cd Moved play context saving/restoration to core library, and run it
automatically in PlaybackService ctor/dtor. Also, updated
PlaybackService to allow for custom transports, but initialize itself
with a MasterTransport if one is not specified. This simplifies things
in the app-layer.
2018-02-19 12:08:19 -08:00
Casey Langen
504d7ec70b Re-arrange play context load/save to happen in the main app setup,
before views are created or the indexer is kicked off -- this makes the
app appear more quickly.
2018-02-18 22:19:00 -08:00
casey langen
dbd15acd0c Updated sqlite to v3.22.0. Previous version was more than a year and a
half old.
2018-02-18 21:51:48 -08:00
casey langen
c96f873e69 Post build tweak. 2018-02-18 15:35:32 -08:00
casey langen
177cf1851e Round out session resumption: remember and restore the play head. 2018-02-18 15:02:26 -08:00
casey langen
8550e62b1d Use SourceCodePro font by default, and also hide the Font/Paste menu
bar. This makes the app much better looking by default.
2018-02-18 15:02:26 -08:00
casey langen
a840728083 Merged upstream clangen/PDCurses changes that allow for specifying a
preferred font, and default menu bar visibility.
2018-02-18 15:02:26 -08:00
casey langen
c2fa156dc9 Merged our PDCurses with upstream master. 2018-02-18 15:02:26 -08:00
casey langen
d0e3e35d94 Added missing constant mapping for new PlaybackPrepared state. 2018-02-18 02:20:24 +00:00
casey langen
3dd4bbbad7 Experimental changes to support automatically enqueuing of previously
playing track. Required minor surgery to the ITransport interface, both
transport types, and PlaybackService.
2018-02-17 16:57:53 -08:00
casey langen
a22c346293 Cleaned up warnings on *nix 2018-02-17 12:48:05 -08:00
casey langen
6a4e9ae9c3 Initial work to support saving app session on exit, then restoring it on
startup.
2018-02-17 11:29:57 -08:00
Casey Langen
a2dc03ffaa Version bump for next release. 2018-02-15 09:27:55 -08:00
Casey Langen
b96c2e6c17 Added the ability to start playback directly from the directory pane in
DirectoryLayout by using the context menu key.
2018-02-15 09:27:50 -08:00
casey langen
82931b3669 Fixed *nix compile. 2018-02-12 23:26:23 -08:00
casey langen
005bfeeb3a Fixed a bug where OnChildVisibilityChanged() was calling up to
super::OnParentVisibilityChanged(). Oops.
2018-02-12 23:21:24 -08:00
casey langen
ab79b4bdbe Fixed up DirectoryLayout's TrackList title. 2018-02-12 21:37:29 -08:00
casey langen
acf9befb86 Don't show path chooser if there is only one indexed path. Also:
remember the previously selected directory.
2018-02-12 21:21:59 -08:00
casey langen
d8d2fc7da0 Fixed focus order issue in DirectoryLayout when hiding/showing directory
list.
2018-02-12 20:55:55 -08:00
casey langen
1f88974620 Fixed bugs related to LayoutBase not properly re-indexing focusable
targets when views are hidden or shown. Added new
IWindow::OnChildVisibilityChanged that is automatically called by all
child Windows to notify containers of visibility changes.
2018-02-12 20:55:02 -08:00
casey langen
5dbb2c6abc A handful of additional small bugfixes for directory browsing:
1. Update the tracklist on indexer progress
2. Optimized DirectoryAdapter::HasSubdirectories()
3. Added directory name to tracklist title
4. Hide direcotry chooser for root paths without any subdirs
2018-02-12 09:45:17 -08:00
casey langen
e5d82dc868 A couple small bug fixes in the directory browser. 2018-02-12 08:10:38 -08:00
casey langen
80a10ffe5f Don't requery unless we need to. 2018-02-12 00:21:10 -08:00
casey langen
0cf2274745 Browsing metadata by directory is now pretty much working. 2018-02-12 00:08:16 -08:00
casey langen
8885651ea7 More boilerplate -- added an overlay to BrowseOverlays to allow the user
to select the browse root, then pass it through all relevant components.
Also added some localized strings.
2018-02-11 13:09:23 -08:00
casey langen
8673eddda4 - Added DirectoryTrackListQuery.
- Updated 'directories' table so columns are compatible with generic
"regular" category (and category tracklist) queries.
2018-02-11 01:15:52 -08:00
casey langen
0ba98925ba Stubbed DirectoryLayout for browse by directories functionality.
Required moving some functionality from BrowseLayout LibraryLayout.
2018-02-11 00:25:03 -08:00
casey langen
4a033ae0c6 Index track directory metadata as well -- this is the first step towards
directory browsing.
2018-02-10 23:50:47 -08:00
casey langen
bcec9dc7ca Added scrollbar support to ListOverlay. 2018-02-10 13:03:06 -08:00
Casey Langen
bc565f31b3 Fixed the macOS packaging process. 2018-02-02 10:30:25 -08:00
casey langen
aaaea49025
Update CMakeLists.txt 2018-02-01 19:35:48 -08:00
casey langen
e44d24e8c8 Exit with failure if "--stop" fails. Also give the daemon a couple more seconds to clean up. 2018-02-01 19:13:21 -08:00
casey langen
27d4696971 Fix RPATH handling in CMakeLists.txt 2018-02-01 19:12:28 -08:00
casey langen
2655c8a265 Ensure arguments get forwarded from wrapper script to executable 2018-02-01 01:10:18 -08:00
casey langen
c1a0708089 Enabled SO_REUSEADDR for server sockets. 2018-01-31 20:13:12 -08:00
Casey Langen
084f888d14 Added support for a basic set of command line options: --start, --stop,
--running, --version and --help.
2018-01-31 12:33:10 -08:00
casey langen
8d142fefcd More musikcubed code cleanup -- verified working on FreeBSD now. 2018-01-30 23:29:54 +00:00
casey langen
35689bb143 Cleaned up exitIfRunning() and simplified LOCKFILE 2018-01-31 06:24:50 +00:00
Casey Langen
b04aa4e529 Use libev to drive daemon event loop. This prevents the hacky periodic
wakeups to check the (now unnecessary) global quit flag.
2018-01-30 21:44:57 -08:00
Casey Langen
c8b81162f3 Ensure MessageQueue wait time calculations always use the same time
unit!
2018-01-30 09:39:22 -08:00
Casey Langen
0fdb83d643 MaxKellermann@ correctly pointed out the SIGTERM signal handler was not safe, and
may result in deadlock. Updated code to avoid allocations and just set
the quit flag. Required minor surgery to IMessageQueue and impl to add
a timeout to WaitAndDispatch().
2018-01-30 09:21:04 -08:00
casey langen
b18ed5ab18 The play queue now shows sequential track numbers instead of ones read
from metadata.
2018-01-29 22:58:10 -08:00
casey langen
402aab9d2c Ensure musikcubed shuts down cleanly on SIGTERM. 2018-01-29 20:59:13 -08:00
Héctor Molinero Fernández
cf3cbfd7f6 Include fstream 2018-01-29 21:19:44 +01:00
casey langen
1a0bc55a15 Updated to boost 1.66.0 on Windows. 2018-01-29 09:10:21 -08:00
casey langen
4c758af5ac MessageQueue implementation now uses checked weak_ptr receivers for
broadcasts. This solves an issue where the message queue may prevent
components (like views) from getting cleaned up if they don't unregister
before they are discarded.
2018-01-29 09:08:54 -08:00