Commit Graph

167 Commits

Author SHA1 Message Date
Andreas b5ba1164af Send only songs from library which are available. 2013-12-03 12:19:46 +01:00
Andreas 42d9a86ff0 Calculate chunkcount with the real file size, not the size saved in the database (might be wrong and results in corrupted download). 2013-11-29 13:59:48 +01:00
Andreas 7470f67acf - Fix remove songs from playlist in network remote.
- Update protocol buffer version.
2013-10-31 19:52:02 +01:00
Andreas afae01156d Merge branch 'portable' 2013-10-26 09:34:07 +02:00
Andreas f6ab3a9044 Fix library download in network remote. 2013-10-25 20:31:56 +02:00
Andreas 9d0b1611c7 Fix crash when fetching lyrics with the network remote.
(cherry picked from commit 90c8929f96)
2013-10-09 19:43:28 +02:00
Andreas 90c8929f96 Fix crash when fetching lyrics with the network remote. 2013-10-09 19:33:59 +02:00
Andreas acb18cdcde First tries on a portable version. 2013-09-29 10:43:34 +02:00
Andreas fc78a78afc - Send songrating to client.
- Receive songrating as float (like saved in Song).
- On RemoteClient destructor check if socket is still connected before calling waitForDisconnect()
(cherry picked from commit 9237356e33)
2013-09-22 12:10:18 +02:00
Andreas 9237356e33 - Send songrating to client.
- Receive songrating as float (like saved in Song).
- On RemoteClient destructor check if socket is still connected before calling waitForDisconnect()
2013-09-22 12:06:19 +02:00
Andreas 3210d016d6 Wait until socket is closed before destroying RemoteClient object. Otherwise the disconnect message is not sent.
(cherry picked from commit 6a61f8598d)
2013-08-24 21:29:04 +02:00
Andreas 6a61f8598d Wait until socket is closed before destroying RemoteClient object. Otherwise the disconnect message is not sent. 2013-08-24 21:24:01 +02:00
Andreas 23aff7c890 Use qBound() instead of multiple ifs.
(cherry picked from commit 5fc6804326)
2013-08-20 11:09:19 +02:00
Andreas 5fc6804326 Use qBound() instead of multiple ifs. 2013-08-20 11:07:58 +02:00
Andreas 1254d025ab Include rate song feature in network remote. 2013-08-15 20:52:12 +02:00
Andreas 9e322adfd4 Track position timer was not started when a client connects and Clementine is playing a track. 2013-08-11 21:46:29 +02:00
Andreas 53b8f59e6f Try to fix Windows build. 2013-08-01 19:13:43 +02:00
Andreas 3a309e9b25 Added message to retrive the library (table songs). 2013-08-01 18:13:14 +02:00
Andreas 662b635d96 - Do not send cover arts on file download chunks.
- Set the version in the send function, not in each function that creates a protocol buffer message.
2013-08-01 10:52:01 +02:00
Andreas 4fe293b6d0 The insert and remove signal for a playlist was not correct. 2013-07-31 19:06:29 +02:00
Andreas e8f9d856b6 Open the server socket without proxy. 2013-07-31 17:28:11 +02:00
Andreas 0785214949 - Do not offer streams to download clients.
- Move Google Play logo and qr code to the middle of the settings screen.
2013-07-27 14:13:02 +02:00
David Sansome 1a3f6af1bd Clean up the network remote settings page, add a "Get it on Google Play" button. 2013-07-27 15:27:08 +10:00
Andreas cf1dfe0d58 Clementine will offer a song before download first. The client can deceide if it want to download it or not. Only when the client accepted the file, Clementine sends it. 2013-07-23 16:59:50 +02:00
Andreas 1e4819f2df Add stop after current track feature to network remote. 2013-07-20 19:38:37 +02:00
Andreas 7238916359 Some code style improvements. 2013-07-19 14:41:49 +02:00
Andreas b4cf8280c3 - DownloadItem has a constructor now.
- Use QQueue instead of QQueue* for download_queue_.
- Code cleanup.
2013-07-19 14:16:32 +02:00
Andreas d1da0159e2 - Check if Queue is empty before sending next song.
- Changed the way the queue is deleted after client disconnects.
2013-07-18 12:14:00 +02:00
Andreas 66eff922d8 Delete download queue entry only if it contains the client. 2013-07-18 11:39:52 +02:00
Andreas f67083c92e Network remote: Each song will be send after client confirms that the previous track was received. Saves a lot of memory especially when sendings lossless files. 2013-07-18 11:28:53 +02:00
Andreas 4406992554 Oops. 2013-07-16 22:17:25 +02:00
Andreas 01084de461 Fix memory leak when a client downloads tracks. 2013-07-16 22:16:05 +02:00
Andreas 6c19acdf48 Memory optimization in network remote. 2013-07-16 17:47:49 +02:00
Andreas 150345f2a6 Fix build error with QT < 4.7 2013-07-12 13:27:52 +02:00
Andreas 25b3dc8b09 Remove unnecessary parameter and comment. 2013-07-12 12:41:45 +02:00
Andreas c09d77f413 Network remote can now send songs to clients. 2013-07-12 12:31:27 +02:00
Andreas 6b92048c15 Code cleanup. 2013-07-10 20:00:52 +02:00
Andreas c413beda8f Only send lyrics from active providers. 2013-07-10 13:51:18 +02:00
Andreas 9e0b877e5a The network remote can now send lyrics to clients. 2013-07-10 13:24:23 +02:00
Andreas 20e1f1b3d6 Rescale album art when heigt is greater than 1000px, too. 2013-06-01 13:52:39 +02:00
Andreas bcaeac7a02 Track position update was sometimes not sent on first track. 2013-05-27 16:08:35 +02:00
Arnaud Bienner e9f14d9f8a Fix GetPlaylist and update network remote 2013-05-11 23:59:51 +02:00
Andreas e456ad679e Fix Linux Minimal build. 2013-05-07 19:09:31 +02:00
Andreas 4bb433e912 - Correct filename in coverexport when textfield is empty.
- Network clients can now love and ban tracks.
2013-05-07 17:57:53 +02:00
Andreas 5fe0f3402a New requests for opening and closing playlists in the network remote. 2013-04-20 16:11:57 +02:00
Andreas 8888cc410a Send closed playlists too if requested. 2013-04-16 13:57:04 +02:00
John Maguire 874eb66c46 Fix compile for Qt 4.6. 2013-04-13 15:58:49 -07:00
pie.or.paj 18e8d6ca20 - Added basic playlist management (add and remove tracks) in network remote. 2013-04-13 11:57:05 +02:00
Andreas 87ea891755 Fix issue: The wrong auth code disconnect message was not sent. 2013-03-30 19:09:58 +01:00
Andreas a79834755b Change connect message handling. 2013-03-27 16:54:02 +01:00
Andreas 3f2aae602e - Send data to clients only if they are authenticated.
- Send songs of the active playlist if the active playlist changes.
2013-03-23 17:02:00 +01:00
Andreas 7939890545 - Send the playlisttracks from the currenly active one in SendFirstData().
- New proto type FIRST_DATA_SENT_COMPLETE: Is send, when the method SendFirstData() finishes.
2013-03-21 16:14:13 +01:00
Andreas be68c9f702 If use auth code is enabled, check if the client has sent the correct auth code before processing any messages. 2013-03-21 10:57:52 +01:00
Andreas ed86c7b09b - New protocol buffer type: ACTIVE_PLAYLIST_CHANGED. This type is sent when the currenly active playlist changes instead of sending all playlists to the clients. 2013-03-20 15:57:22 +01:00
Andreas b9ff2dc46d Debug output interface and ip address for windows mDNS discovery. 2013-03-19 22:24:56 +01:00
Andreas 3e01d32a89 Fix issue 3545. Disconnect a client when the expected protocol buffer length is more than 128MB to prevent a crash. 2013-03-12 12:12:04 +01:00
Andreas e4ac2e6d82 Add debug output to pin down issue 3545. 2013-03-11 22:22:22 +01:00
Andreas d083f38f54 Revert "Add ipv6 to windows mdns." 2013-03-09 18:01:56 +01:00
Andreas bcf3c519de Fix compile errors. 2013-03-09 13:29:46 +01:00
Andreas e09da09d31 Add ipv6 to windows mdns. 2013-03-09 12:04:17 +01:00
Andreas 9fb46f0d29 Another quick fix. 2013-03-08 19:04:26 +01:00
Andreas 6546779626 - Remove initialization of QList.
- Fixed compile error.
2013-03-08 19:00:34 +01:00
Andreas 5747b7acb0 Fix tinysvcmdns compile errors. 2013-03-08 18:20:57 +01:00
Andreas c5246a722b Add include for QList. 2013-03-08 16:14:57 +01:00
Andreas 79c2aaacd9 Windows: Publish service on all interfaces. 2013-03-08 15:20:31 +01:00
John Maguire a66ffdcc61 Oops, objective-C 2013-02-22 15:30:55 +01:00
John Maguire 04db045c30 Truncate name used for mdns service. 2013-02-22 15:29:00 +01:00
John Maguire def697c31a Add truncation support to Zeroconf with test. 2013-02-22 14:53:54 +01:00
Andreas ebd2b1ecba Remove domainname from mDNS service name. 2013-02-19 16:30:42 +01:00
Andreas 315fcb05c4 Another fix for Windows mDNS. 2013-02-19 15:53:17 +01:00
Andreas bedea9f11b Pass txt to mdnsd_register_scv. 2013-02-18 18:12:01 +01:00
Andreas 39bce9ba96 - Fix mDNS on Windows.
- Unique name for mDNS broadcast (hostname and domain added).
- Add link to Google Play Store for the Android app.
2013-02-18 18:10:31 +01:00
John Maguire f27abb820f Fix leak of clients in network remote. 2013-02-18 14:54:21 +01:00
John Maguire 68f6fd4900 Don't leak Objective-C types in bonjour publishing. 2013-02-18 13:15:34 +01:00
Andreas bcae4a7094 Added Debug output for windows mDNS. 2013-02-18 11:58:09 +01:00
Andreas 578e143cf1 Fix: playlist name with non ASCII characters was not transfered correctly. 2013-02-15 15:57:45 +01:00
Andreas 28632cdb37 Fix version set. 2013-02-08 19:42:46 +01:00
Andreas 0c7354dba6 Send the version when disconnecting because of an invalid auth code. 2013-02-08 19:27:56 +01:00
Andreas 8175e23f91 Always send default version. With the default tag the version is not sent automatically. 2013-02-08 18:52:14 +01:00
Andreas 589816e82c - Added various playlist signals.
- Bump Proto version to 3, so that people update Clementine when using new Android App Version is released.
2013-02-07 21:34:04 +01:00
Andreas f779e14df7 Fix connects for Repeat and Shuffle. They were never reached. 2013-02-03 21:09:48 +01:00
Andreas 8a97e317a6 Send Random and Repeat Mode on connection. 2013-02-03 20:24:36 +01:00
Andreas 617c575ef4 Send all playlist on connect. 2013-02-02 16:51:48 +01:00
Andreas a4d26bc249 - Actually fix the SIGPIPE (Broken Pipe) Error. It was caused by the QTcpSocket::flush().
- Revert previous SIGPIPE fixes.
- Rename method in RemoteClient to match its function.
2013-01-28 22:45:26 +01:00
Andreas a2c07527bf Included signal header file in main.cpp. 2013-01-28 15:40:00 +01:00
Andreas fcc0da554b Moved signal(SIGPIPE, SIG_IGN) to main. 2013-01-28 14:39:31 +01:00
Andreas a40aa6fb8d Added security methods to prevent SIGPIPE termination. 2013-01-28 14:21:04 +01:00
Andreas 4ed516ad1f Send the current track position when a client connects 2013-01-26 11:52:53 +01:00
Andreas 9472c5ace2 - Fixed a bug where clementine crashed when restarting the server (e.g. changed setting). Cause by wrong connect statement.
- Added set track position feature in proto
- Added authentication method
- Clementine sends now a disconnect message when closed
2013-01-23 20:02:12 +01:00
John Maguire 0e6ff8fdc6 Add missing include for std::floor(). 2013-01-23 12:11:59 +01:00
Andreas 78ad2fb517 Fixed an issue where clementine could crash: A client connects before the playlist manager is
initialized. This caused a null pointer exception. Now the server is started after the
playlist manager was initialized.
2013-01-22 22:58:32 +01:00
Andreas 0828115c74 - Display a qr code in the remote control settings to download the android app
- Transfer the current track position to clients
2013-01-22 22:02:16 +01:00
Andreas e9fd09193c This should fix the issue, that the coverart is not transfered on windows. 2013-01-18 19:03:25 +01:00
John Maguire 0b60a17a2b Add MDNS implementation for windows. 2013-01-17 14:11:15 +01:00
Andreas 76c294e470 Merged from "remotecontrol". Fixed two broken connects 2013-01-16 19:26:33 +01:00
John Maguire 209b342bb9 Re-order avahi calls to make it more obvious what's going on. 2013-01-16 15:48:04 +01:00
John Maguire 7d09548243 Add mDNS service publishing on Mac. 2013-01-16 15:26:35 +01:00
John Maguire 0e226cc34b Add mDNS service publishing on Linux for the remote control. 2013-01-16 14:56:31 +01:00
Andreas e452ae3ea9 Fixed a bug in IpIsPrivate where 192.168.x.x was not recognized as a private ip. 2013-01-15 20:20:31 +01:00
John Maguire 32b81f057d Fix broken connect 2013-01-15 14:59:48 +01:00