John Maguire
341dc7326f
Reformat all C++
2020-09-22 14:56:06 +01:00
Jim Broadus
cf8d2004bd
Use deleteLater to destroy device backends
2020-06-07 14:46:13 +01:00
Jim Broadus
6a9276ec0a
Fix LibraryModel async query crash.
...
A LibraryBackend may be deleted while an associated LibraryModel object is using
it. An example is an async query running while a connected device is removed.
To prevent this, use a share pointer for the LibraryBackend.
This fixes one case where LibraryBackend is used after deletion. However, the
raw pointer is still passed around in several other places. These should be
evaluated on a case-by-case basis to insure that circular depencencies aren't
introduced.
2020-01-14 21:47:31 -08:00
Jonas Kvinge
ed3d462674
Fix memory leak and use ItemToIndex / IndexToItem ( #6262 )
2019-01-21 21:38:46 +00:00
Jonas Kvinge
7e25a7c7e4
Convert devices manager(model) to QAbstractItemModel ( #6260 )
2019-01-21 09:06:48 +00:00
Jim Broadus
6c159481ed
Handle MTP connection failures more gracefully. ( #6256 )
...
Currently, the failure to connect to an MTP device results in the UI displaying
an open device that appears empty. This change introduces a method
ConnectedDevice::ConnectAsync() that is expected to handle any connecting tasks
that could block asynchronously. Upon completion, this emits a ConnectFinished
signal that indicates success or failure. The row in the UI is only updated
after the successful response is received. Upon failure, DeviceManager will
clean up and the row in UI is left in the pre-connect state.
Currently, only the MtpDevice utilizes this mechanism. All other devices use a
default implementation that immediately reports success.
2019-01-15 21:10:05 +00:00
John Maguire
bebd781fdf
Reformat all non-3rd-party C/C++/Objective-C++.
...
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
-style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire
71893e4847
Use nullptr instead of NULL everywhere.
2014-02-06 17:29:59 +01:00
John Maguire
95330a3d7c
Deal more gracefully with a device's library not having any directories on second mount.
...
Fixes issue #3940
2013-11-04 18:44:07 +01:00
David Sansome
48f15c9fc7
Refactoring: instead of passing individual pointers to useful core classes (like TaskManager or LibraryBackend) to each class that uses them, pass one singleton-like Application instance everywhere.
2012-02-26 14:40:51 +00:00
David Sansome
ccb9f8cf94
Use URLs everywhere instead of filenames. Move the URL parsing and song loading code out of individual playlist parsers and into the base class. Fix the playlist parser unit tests.
2011-04-28 12:27:53 +00:00
David Sansome
3eedc916ad
Add a new logging system
2011-04-22 16:50:29 +00:00
David Sansome
2b08d27a88
Show loading indicators in the library model and the status bar when asynchronously loading songs during initialisation.
2011-02-26 14:27:57 +00:00
David Sansome
ed1a25693c
Add missing licenses to debian/copyright, and add copyright information to each source file
2010-11-20 13:27:10 +00:00
David Sansome
e4efa8a93e
Show the total song count on each device, instead of the mountpoint
2010-08-30 14:45:27 +00:00
David Sansome
4b381e00fd
Transcode files when copying them to devices
2010-08-29 19:22:21 +00:00
David Sansome
d980fd5ff8
Remove the pointless CreateInThread method from BackgroundThread and instead move objects to the right thread after creation.
2010-08-27 18:36:57 +00:00
David Sansome
2e646494aa
Update a device's free space after copying or removing files from it
2010-08-11 18:47:53 +00:00
David Sansome
a228e2b806
Copy files to afc devices. Doesn't quite work yet
2010-08-08 17:41:06 +00:00
David Sansome
d29fb119a4
Don't rewrite the paths of songs on afc devices, and mark them as streams in the playlist so they won't get re-read on startup
2010-08-08 13:27:36 +00:00
David Sansome
02783b1d5d
Unmount devices from the main thread instead of the organiser thread - fixes a crash when unmounting after copying
2010-08-01 11:01:07 +00:00
David Sansome
b2aba2bac2
Add an option to eject a device after copying files to it. Now with bonus multiple virtual inheritance.
2010-07-25 09:52:29 +00:00
David Sansome
b624be9800
Add almost-working support for writing to ipods
2010-07-24 16:58:14 +00:00
David Sansome
0dcdf36535
Start of work on a GIO/GVFS device backend.
2010-07-17 14:22:07 +00:00
David Sansome
e9525e8ec3
Very basic support for reading iPods with libgpod. Uses a hardcoded ~/.gvfs path for now.
2010-07-04 20:52:45 +00:00
David Sansome
4a8bff5f4e
Cope with removable media changing mount point
2010-07-04 12:10:44 +00:00
David Sansome
db5409b66b
Store devices in the main database
2010-07-03 23:00:07 +00:00
David Sansome
2deca7fd61
Add a DeviceManager which holds all the listers and connected devices. Make FilesystemDevices use their own LibraryWatcher.
2010-06-26 12:41:18 +00:00
David Sansome
28ea240eb8
ConnectedDevices have a LibraryModel
2010-06-25 23:38:21 +00:00