Commit Graph

2925 Commits

Author SHA1 Message Date
casey langen
189931fbcc Show LibraryNotConnectedLayout when disconnected from a remote
library, and automatically switch back to `LibraryLayout` when
reconnected.
2020-10-08 23:04:58 -07:00
casey langen
c7b466919f Added stubbed LibraryNotConnectedLayout 2020-10-08 23:03:44 -07:00
casey langen
2e6b588092 Don't raise a changed event unless something actually changed. 2020-10-08 23:03:05 -07:00
casey langen
02046d3a3c Added the concept of library connection state. For local libraries this
doesn't apply, but will be used by remote libraries to communicate to
the UI when they are available (or not).
2020-10-08 22:06:14 -07:00
casey langen
a4426e13f3 Added auto websocket reconnect. 2020-10-08 21:36:19 -07:00
casey langen
cc41b3a0cb Oops, checked in a line I shouldn't have. 2020-10-08 19:58:31 -07:00
casey langen
e0709afdb3 Fixed a memory leak in WebSocketClient 2020-10-08 19:52:20 -07:00
casey langen
c2573fc945 Upgrade jsonpp 2020-10-08 19:02:49 -07:00
casey langen
8c777f8780 Experimental changes to TrackList to support batching. 2020-10-08 17:42:37 -07:00
casey langen
1cf4b15273 Minor bug fix to TrackMetadataBatchQuery 2020-10-08 17:40:21 -07:00
casey langen
cdc55c940b Added TrackMetadataBatchQuery for optimizing remote library track list
rendering. Not used yet.
2020-10-08 00:17:52 -07:00
casey langen
ad3ee46a52 Ensure RemoteLibrary disconnects the underlying websocket when it's
closed.
2020-10-08 00:14:56 -07:00
Casey Langen
f936d21479 Disable websocketpp logging, it's corrupting the terminal. 2020-10-07 17:40:06 -07:00
Casey Langen
a057787c27 Fixed clang compile and warnings. 2020-10-07 17:32:38 -07:00
casey langen
935162e8b9 Implemented remote audio playback and fixed a handful of bugs along the
way. Not near production quality yet, but it *does* work.
2020-10-07 16:37:15 -07:00
casey langen
ed717d4f88 Let's actually use the supplied password. 2020-10-06 23:21:34 -07:00
casey langen
382cfb0711 Fixed a couple other missing MessageQueue broadcasts for serialized
queries. We should be good now.
2020-10-06 23:15:17 -07:00
casey langen
c88942569b Fix SavePlaylistQuery 2020-10-06 23:04:46 -07:00
casey langen
37d7acb147 Fixed some warnings and added missing externally facing connection logic
to WebSocketService.
2020-10-06 22:16:05 -07:00
casey langen
ecd68a6057 IQuery::Synchronous support in RemoteLibrary. 2020-10-06 21:43:45 -07:00
casey langen
72e8895aa9 Kind of sort of working now. Need to get synchronous queries working,
even though they are generally undesireable.
2020-10-06 21:29:08 -07:00
casey langen
3f0603656b Fixed Linux compile. 2020-10-06 19:54:18 -07:00
casey langen
b3c887f7ce Fleshed out some of WebSocketClient and now have queries (de)serializing
through IMetadataProxy via WebSocketServer
2020-10-06 19:12:47 -07:00
casey langen
49b49ade51 The client seems to connect to the web socket server. 2020-10-06 02:28:55 -07:00
casey langen
3d170d4127 Removed some old testing code 2020-10-06 02:28:40 -07:00
casey langen
ab3b425281 Added some disabled code. 2020-10-06 01:22:08 -07:00
casey langen
50260ed53b Added placeholder WebSocketClient to core. 2020-10-05 23:09:42 -07:00
casey langen
45f4a96ea7 Fixed LastFm compiler warnings with some good old fashioned gross casts. 2020-10-05 23:00:25 -07:00
casey langen
4cfe49a061 Added ILibrary::IsConfigured() 2020-10-05 23:00:14 -07:00
casey langen
c15033c77d Fixed a bug in LocalMetadataProxy that was assuming the input Track
would always be the same reference as the resulting track in
TrackMetadataQuery.
2020-10-05 22:19:24 -07:00
casey langen
c63892bcdc Fixed a couple really old LibraryTrack bugs caused by code that was
never exercised.
2020-10-05 22:03:26 -07:00
casey langen
b51dee258f Upgraded websocketpp and moved it and libmicrohttpd into the shared
3rdparty directory.
2020-10-05 21:28:46 -07:00
casey langen
61a0ee78de Fixed MetadataMapListFromJson 2020-10-05 21:11:02 -07:00
casey langen
0dfe2fc26e Intermediate commit; some bugs in serializing MetadataMap fixed, others
still exist.
2020-10-05 20:51:48 -07:00
casey langen
fc8279968e Finished initial round of query serialization. 2020-10-05 18:44:16 -07:00
casey langen
9af8844a29 Added GetPlaylistQuery serialization and fixed a bug in
CategoryTrackListQuery
2020-10-04 22:58:46 -07:00
casey langen
ed313ecce0 Fixed out of control memory / CPU usage caused by unnecessary track
parsing.
2020-10-04 22:42:29 -07:00
casey langen
139c669790 musikcubed/main.cpp fix for updated LibraryFactory API 2020-10-04 21:55:52 -07:00
casey langen
b8f7861917 More LibraryFactory bug fixes. This thing needs to be rethought. 2020-10-04 21:52:12 -07:00
casey langen
1deb6cf153 * Another minor LibraryFactory() refactor -- it's still gross, but not as bad now.
* Fixed RemoteLibrary to return a stubbed IIndexer to avoid null derefs
* Fixed a couple bugs in track serialization
2020-10-04 21:44:29 -07:00
casey langen
dd5cd54e33 Added CategoryTrackListQuery serialization 2020-10-04 15:10:58 -07:00
casey langen
e467e28513 Updated QueryRegistry with new queries. 2020-10-04 13:12:42 -07:00
casey langen
81b4c3d434 Updated progress 2020-10-04 11:15:20 -07:00
casey langen
51e1025ecb Make SearchTrackListQuery serializable and add utility methods for de/serializing TrackList and std::set<> types. 2020-10-04 11:14:09 -07:00
casey langen
5b901f557d added checklist. todo: remove checklist 2020-10-04 01:48:47 -07:00
casey langen
3257179db6 SetTrackRatingQuery is now serializable 2020-10-03 23:22:53 -07:00
casey langen
7f4d0ee78b AllCategoriesQuery is now serializable. 2020-10-03 23:06:14 -07:00
casey langen
6cbe4ca758 Fix TrackMetadataQuery. 2020-10-03 22:17:00 -07:00
casey langen
5a08277603 TrackMetadataQuery work in progress. 2020-10-03 22:06:10 -07:00
casey langen
acbe1f91ef Debounce category searches 2020-10-01 23:59:42 -07:00