Christopher Snowhill
4c95c943ef
[Playlist Storage] Rewrite to use Core Data
...
Completely rewrite the playlist storage once again, this time with a
much faster Core Data implementation. It still uses a little magic for
Album Artwork consolidation, but string consolidation doesn't seem to be
needed to reduce the disk storage size. Works much faster than my silly
implementation, too.
Old implementations are still kept for backwards compatibility with
existing playlists.
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-16 07:14:33 -07:00
Christopher Snowhill
92573ec088
[Job Queue] Overhauled long action handling
...
Long actions, such as file opening, playlist loading, metadata loading
and refreshing, etc, are now handled through NSProgress. Additionally,
a new status bar change displays the progress of the task instead of
the total duration of the playlist. Finally, app quit is blocked by a
running task, and if the app is quit while a task is running, it will
be delayed until the task completes, at which time the app will
terminate cleanly.
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-15 01:01:45 -07:00
Christopher Snowhill
5411a60ea1
Added option to remove tracks to the trash
...
Fixes #23
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-10 21:35:13 -08:00
Christopher Snowhill
64c4aa2e25
Handle deleting the current track gracefully
...
Now it should flow playback correctly to the next remaining track after
the block of deleted tracks. And if the user deletes the next queued
track, it will still be queued to flow past the deleted block. If the
user undoes their deletes and restores the tracks, playback will resume
after the originally deleted track.
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-09 21:04:17 -08:00
Christopher Snowhill
85c7073649
Reformat my own source code with clang-format
...
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-06 21:49:27 -08:00
Christopher Snowhill
2b4de1033d
Playlist View: Replace Cell-based table with View-based table. It needs some work still, though.
2022-01-20 14:59:26 -08:00
Christopher Snowhill
2445cc94a9
- Retrieve profile paths properly instead of hard coding
...
- Display playlist total duration in units up to weeks and down to just seconds, and only pluralize units as necessary
- Major change: Implemented a SQLite disk backed playlist, track data, and queue storage system, which will be synchronized from the player in real time, and will hopefully survive system or app crashes. Existing plist playlist will be imported on first run, and removed on shutdown.
2021-12-24 01:01:21 -08:00
Christopher Snowhill
922e657f0b
Context menu: Add option to reload metadata from existing playlist entries
2021-07-03 15:32:13 -07:00
Christopher Snowhill
13bd399b31
Clean up most warnings and update some dependencies
2021-04-29 18:16:24 -07:00
Dzmitry Neviadomski
c1da9a66e1
Modernize several classes.
...
Use modern ObjC syntax.
Use new Pasteboard APIs.
Explicitly declare protocols.
2021-01-31 02:14:08 +03:00
Chris Moeller
17272ce43c
Clean up lots of warnings and minor issues.
2016-06-29 22:10:29 -07:00
Chris Moeller
9cd138384d
Setting Repeat One will now direct all synthesizing decoders to run forever, rather than merely restarting repeatedly. Playptmod now cuts off length detection after half an hour, in case some files' loops are not detected.
2014-02-13 21:16:18 -08:00
Chris Moeller
7a9e4a720c
Added Remove Dead Items command
2013-10-18 00:14:53 -07:00
Chris Moeller
2d5f340011
Added Remove Duplicate Items command
2013-10-18 00:13:27 -07:00
Chris Moeller
759aeab4fb
Implemented pause on startup
2013-10-12 19:16:47 -07:00
Chris Moeller
521eb67183
mamburu: Randomizing playlist is now undoable, adding playlist entry no longer causes un-randomization
2013-10-11 12:33:58 -07:00
Chris Moeller
25bf55459e
Silenced some warnings
2013-09-29 17:27:55 -07:00
vspader
7819210b96
Added interface for shuffle albums mode.
2009-03-09 21:04:46 -07:00
vspader
03937f480b
Cleaned up modified add behavior.
2009-02-28 14:22:33 -08:00
vspader
df2fa22a93
Shuffle/Repeat are now remembered.
2009-02-28 10:06:21 -08:00
vspader
c902c96a19
Fixed shuffle images.
2009-02-27 22:40:50 -08:00
lmsilva
dda74d0608
fixed seek slider from becoming active & disabling it when STOP occurs
2008-11-21 15:14:23 +00:00
vspader
f53bfc861d
Side pane say what?
2008-06-21 04:05:30 +00:00
vasfed
e063790e93
Updated APL plugin to use new protocol
...
Added support for behavior modifiers on addition/opening of files
Added Command+Control as modifier for open/enqueue
2008-05-09 21:24:49 +00:00
vspader
3375e15a83
Queue is now a toggle.
2008-03-08 23:57:54 +00:00
vspader
671d7021ae
Added Current Entry Object controller to fix issue with currently playing not being updated when loading.
2008-03-02 20:03:22 +00:00
areff
771a6de380
Added Stop after Current, hooked it into Ctrl-Z for now, for lack of anything better (it needs to be easily accessible one way or the other), added image to signify status by adding a little red square to the play icon.
2008-02-25 15:39:04 +00:00
vspader
588fa5ddc6
Modified total time to also used arrangedObject observing.
2008-02-24 17:32:50 +00:00
vspader
a10898f4c9
Index column is now set by observing arrangedObjects instead of the updateIndexesFromRow method.
2008-02-24 17:16:19 +00:00
vspader
7109dec4ad
Some playlistentry cleanup.
2008-02-23 19:46:23 +00:00
areff
e3216e0ef1
Added Remove from Queue right click menu item, still lacks validation. Updated KnownIssues.
2008-02-22 15:26:46 +00:00
areff
184525a47a
Implemented Repeat All through NSPredicate and filtering, method should be applicable when Shuffle is fixed too.
2008-02-21 19:14:20 +00:00
areff
8bff745c38
Implemented Add to Queue as choice in Right click menu, added Clear Queue to Playlist menu.
2008-02-21 07:30:28 +00:00
areff
f20b10fdd4
Most of the Repeat logic is in place (needs some brush up here and there). Still missing Repeat Album. Disabled some annoying debug output from MADDecoder. Updated KnownIssues.
2008-02-19 19:59:35 +00:00
vspader
ae4c112076
Fixed up repeat menu and added back repeat album.
2008-02-19 04:02:05 +00:00
vspader
8434f6e3b3
Added RepeatTransformers with the beginnings of support for the repeat modes. MenuItems's reflect the repeat state (yet do not work to set the state yet), and the repeat button toggles w/images as expected..
2008-02-19 03:39:43 +00:00
matthewleon
abf2da423d
Implemented UI elements necessary for right-click search by artist/album.
2008-02-16 16:13:21 +00:00
matthewleon
387015db22
Eliminated annoying flicker in Spotlight interface. Made tiny tweaks to PlaybackController and PlaylistController header to eliminate compiler warnings.
2008-02-14 23:09:51 +00:00
vspader
37820a586d
Fixed up undo/redo support. Should be working great now.
2008-02-10 22:46:12 +00:00
vspader
e2b40fe1a3
Added move operation to DNDArrayController. Streamlined undo.
2008-02-10 19:35:58 +00:00
vspader
299285f0cd
Changed undo/redo menuitems back to firstResponder. Modified PlaylistView to validate undo/redo items.
2008-02-10 17:13:30 +00:00
areff
9b05ce02d2
Added undo functionality in playlist, undo works for removals, moves and adds.
2008-02-10 16:16:45 +00:00
vspader
20dd4930ee
Fixed up menus. Still need to correct a few actions.
2007-05-26 14:09:03 +00:00
vspader
4ed575f475
Moved PlaylistEntry number variables over to NSNumber. Removed displayIndex and lengthString, using formatters instead. Fix bug with autosaving playlist.
2007-03-14 02:28:30 +00:00
vspader
15f1aa2ebd
Cleaned up code. Added PlaylistLoader class properly, with support for m3u and pls formats. Changed default playlist to m3u. Added bugs GALORE!
2007-03-09 01:16:06 +00:00
vspader
59b42286e5
Click index column to remove sort descriptor. Added sort by path connection.
2007-02-18 22:27:55 +00:00
vspader
e919340f6d
Column resizing
2006-05-29 22:23:56 +00:00
sryegkahl
aea620374c
Removed a superfluous (redundant) function I wrote for revision 172
2006-05-24 18:09:44 +00:00
sryegkahl
a430aff269
"Show in Finder" feature for track files (right-click menu).
2006-05-23 15:12:24 +00:00
vspader
eb290c0cd9
Entries loaded in new thread, no delay at startup
2006-05-12 14:34:59 +00:00