1. 18 May, 2019 1 commit
    • Michael Pyne's avatar
      Add 'override' decl to fix compiler warnings, fix drag-and-drop. · dc2d9c8e
      Michael Pyne authored
      This should shave off some 1,000+ warnings over the course of a build
      with GCC 9.1.
      
      This only addresses class declarations native to JuK, but Taglib and to
      a lesser extent Qt5 moc still have (or generate) code that can result in
      compiler warnings about suggested override declarations.
      
      In the process I noticed that an existing drag-and-drop support function
      (Playlist::decode) is no longer overriding Qt virtual functions, so it
      has been turned into an auxiliary function to fix existing drag-and-drop
      bugs from the KF5 port (tested by dropping files from Dolphin into a
      playlist view).
      
      Drag-and-drop from a playlist to another playlist (by dropping on the
      playlist name) still remains broken for now.
      
      CCBUG:392705
      FIXED-IN:19.04.2
      dc2d9c8e
  2. 22 Dec, 2018 1 commit
    • Michael Pyne's avatar
      Port sort function for list of playlists to KF5. · 468a5169
      Michael Pyne authored
      Now that sorting is enabled, it turned out that the sort really was
      broken for everybody (sorry!). The old Qt 3 and 4 "sort by subclassing
      the list item" feature wasn't actually ported into the Qt 5
      compatibilility list view. So although we were defining the compare
      function, nothing was actually using it.
      
      Things seemed to work fine on my local system but I suspect that's
      because I had playlists from KDE 4 times that I copied over which would
      have already sorted the special playlists to the beginning.
      
      Since the old method doesn't work I've just added a hidden sort key
      column for now. The "proper solution" is probably to use a
      QSortFilterProxyModel but that will be some time away.
      
      CHANGELOG:Restore proper sorting of the list of playlists.
      BUG:402398
      FIXED-IN:18.12.1
      468a5169
  3. 20 Dec, 2018 2 commits
  4. 04 Oct, 2017 1 commit
  5. 02 Oct, 2017 1 commit
  6. 29 Sep, 2017 1 commit
  7. 28 Sep, 2017 1 commit
  8. 26 Aug, 2017 2 commits
  9. 09 Aug, 2017 1 commit
  10. 27 Jul, 2017 1 commit
  11. 26 Jul, 2017 1 commit
  12. 30 Nov, 2013 1 commit
    • Michael Pyne's avatar
      GIT_SILENT: Update source code license headers. · d969a0b4
      Michael Pyne authored
      Thanks to Eric Newberry (from Google Code-In) for running the heavy
      lifting on this.
      
      I made some other corrections since we're touching all the source
      anyways (e.g. fixing my email addresses), fixing the encoding of Richard
      Lärkäng's name, and I've also chosen to avoid the fancy box-shaped
      comments so that there's no issue with trailing spaces/tabs.
      
      REVIEW:114216
      d969a0b4
  13. 26 Jun, 2013 1 commit
    • Michael Pyne's avatar
      startup: Async-ify cached item loading on startup, add timers. · bf4df116
      Michael Pyne authored
      In an attempt to get rid of processEvents() (related to several existing
      crash bugs) I am trying to port the startup code towards more
      async-friendly schemes.
      
      There's no threading but we at least get back to the event loop much
      more frequently while loading files.
      
      Additionally I have added debug output with instrumentation to show how
      long it takes to advance through each step of the startup (I think this
      might be the first time anyone has understood JuK startup sequence in
      years).
      
      This leaves some essentially dead code with Cache (which no longer
      acts as a container), which I will try to cleanup in later commits.
      bf4df116
  14. 11 Jun, 2010 1 commit
    • Michael Pyne's avatar
      Make the history playlist work again. · faf5e09f
      Michael Pyne authored
      In the great PlayerManager de-singletonizing of KDE 4.1 I managed to not port over the
      Qt signal for the playlist splitter that was emitted on track change, which meant the
      history playlist wouldn't receive it. I've reattached the signal to the history playlist
      which means it works[1] again.
      
      [1] It's still as broken as it was in KDE 4.0, which means that the "Date" column doesn't
      show up, and all the other columns are shifted over by one to compensate.
      
      BUG: 168998
      FIXED-IN: 4.5
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1136884
      faf5e09f
  15. 26 Nov, 2009 1 commit
    • Michael Pyne's avatar
      Decouple PlayerManager from JuK so that it isn't a singleton. · c0204770
      Michael Pyne authored
      The major reason for this change is to allow for a saner destruct sequence
      (instead of the unordered global static destruct sequence) which will hopefully
      help reduce crash-on-shutdown bugs.
      
      This will not be in the upcoming KDE 4.4 beta but will be in the 4.4 release (assuming no
      bugs are found in it ;)
      
      CCMAIL:nlecureuil@mandriva.com
      
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=1054429
      c0204770
  16. 20 Jan, 2009 1 commit
  17. 18 Jan, 2009 1 commit
  18. 27 Aug, 2008 1 commit
  19. 24 Aug, 2008 1 commit
    • Michael Pyne's avatar
      JuK optimizapalooza! · c8f53250
      Michael Pyne authored
      * Add whatever X-DBUS-foo line KUniqueApplication says we need.
      * Restructure the startup sequence to postpone all the hard work until after the GUI is setup
        as much as possible to allow passing our reply over DBUS ASAP.
      * Don't call hasCover from PlaylistItem like, ever.  I made CoverInfo::hasCover() take longer
        when I added support for APIC frames but didn't catch all unnecessary instances of their use
        last time.  Luckily this is the big win and is backportable.
      * Also, don't force CoverInfo::coverId() to call hasCover() for no reason.
      
      Hopefully this should remove the egregrious Plasma freeze-ups while starting but even after
      returning from KUniqueApplication::newInstance() quickly it seems to take a while for the reply
      to go over the D-BUS...
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=851610
      c8f53250
  20. 13 May, 2008 1 commit
  21. 04 Jun, 2007 1 commit
  22. 24 May, 2007 1 commit
    • Michael Pyne's avatar
      Fairly large overhaul of the JuK codebase to beat out a lot of the Qt 3 stuff. · 2c297413
      Michael Pyne authored
      Still a lot of Qt 3 code to go but at this point Q3ValueList, Q3Vector, Q3PtrDict and
      Q3Dict should all be gone.
      
      In addition many loops have been foreach()'ed, which really does make it more readable.
      
      There is a crash fix as well, now the polish() function in Playlist has been replaced
      with an initialization slot which is singleShot'ed since the timing of the polish event
      is apparently different than it was in Qt 3, which was making new Playlists crash when
      they were first shown.
      
      Also I went through almost every header and pared it down to the minimum reasonably
      achievable, which required some additional headers in a few .cpp files but overall
      compilation time should be down and you won't have to rebuild all of JuK just because
      a header file got touched.
      
      I haven't seen any regressions yet but then again I still can't play music either.
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=667815
      2c297413
  23. 19 Oct, 2006 1 commit
    • Tim Beaulen's avatar
      Q3ValueList to QList · 80bf456e
      Tim Beaulen authored
      Port this step by step as it's more than just changing names.
      
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=597231
      80bf456e
  24. 15 Oct, 2006 1 commit
    • Tim Beaulen's avatar
      Use QMimeData · 7f78b74c
      Tim Beaulen authored
      
      svn path=/trunk/KDE/kdemultimedia/juk/; revision=595694
      7f78b74c
  25. 13 Mar, 2006 1 commit
  26. 27 Feb, 2006 1 commit
  27. 26 Feb, 2006 3 commits
  28. 20 Oct, 2005 1 commit
  29. 01 Sep, 2005 1 commit
  30. 18 Feb, 2005 1 commit
  31. 18 Jan, 2005 1 commit
  32. 14 Nov, 2004 1 commit
  33. 01 Nov, 2004 1 commit
  34. 10 Oct, 2004 1 commit
  35. 28 Sep, 2004 1 commit
  36. 27 Sep, 2004 1 commit
    • Michael Pyne's avatar
      Implement bug 61340 (Add undo support for multi-tagging). · a64bdc6d
      Michael Pyne authored
      What this does is introduce a class that manages changes to PlaylistItems.  A number of PlaylistItems can be altered before the underlying files are changed.  Once the files are changed, a record is kept of the changes, which can then be used to undo what happened.  Also, this class takes care of items that are to be renamed.
      
      All code paths that are capable of altering a tag have been changed to use this class.
      
      Note that the underlying code could probably use some cleaning up.  e.g. adding a copy ctor to Tag instead of making a duplicateTag() function. ;-)
      
      I've tested this on a temp directory of copied music, so I'm pretty confident this all works and is safe.  However, you may want to test on a backup first to make sure it works on your system too. =D
      
      Now the question is whether I should backport this or not. :-/
      
      CCMAIL:61340-done@bugs.kde.org
      
      svn path=/trunk/kdemultimedia/juk/; revision=349640
      a64bdc6d