Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cover art support #278

Merged
merged 86 commits into from
Nov 5, 2014
Merged

Cover art support #278

merged 86 commits into from
Nov 5, 2014

Commits on Oct 21, 2014

  1. Configuration menu
    Copy the full SHA
    92247eb View commit details
    Browse the repository at this point in the history
  2. Minor test cleanups.

    rryan committed Oct 21, 2014
    Configuration menu
    Copy the full SHA
    34d48aa View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    af707e4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f987621 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5d2fa92 View commit details
    Browse the repository at this point in the history
  6. Some NULL-safety changes.

    rryan committed Oct 21, 2014
    Configuration menu
    Copy the full SHA
    eb265df View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2014

  1. Configuration menu
    Copy the full SHA
    0f3f844 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8cf9b8a View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2014

  1. Misc. fixes.

    rryan committed Oct 26, 2014
    Configuration menu
    Copy the full SHA
    1af2430 View commit details
    Browse the repository at this point in the history
  2. Remove default cover handling from CoverArtCache.

    Add <DefaultCover> configuration option to WCoverArt to let skin authors
    pick a default cover.
    rryan committed Oct 26, 2014
    Configuration menu
    Copy the full SHA
    f3eff5c View commit details
    Browse the repository at this point in the history
  3. More misc.

    rryan committed Oct 26, 2014
    Configuration menu
    Copy the full SHA
    32d9da9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    08edc49 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1ecde90 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7bbb903 View commit details
    Browse the repository at this point in the history
  7. Cache-key improvements.

    * Move cache key formatting to its own method.
    * Explicitly handle the no-size cache key.
    rryan committed Oct 26, 2014
    Configuration menu
    Copy the full SHA
    7c199cb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    107f9f9 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    807f621 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    679f786 View commit details
    Browse the repository at this point in the history

Commits on Oct 27, 2014

  1. Pull file extension regex generator into a utility file.

    Add helper to create a supported cover art extensions regex.
    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    b1b0f5e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2057607 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cdf1a03 View commit details
    Browse the repository at this point in the history
  4. Add CoverArt widget to Deere.

    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    8183dc0 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    672111c View commit details
    Browse the repository at this point in the history
  6. Massive cover art refactor.

    * Move cover search out of the CoverArtCache workers.
    * Get rid of dedicated table for cover art (and add more columns to
      library table)
    * Delete CoverArtDAO and test.
    * Add cover scanning to LibraryScanner.
    * Load and store cover art in TrackInfoObject via TrackDAO.
    * Hook cover columns up to cached TrackInfoObjects in BaseTrackCache.
    * Get rid of "ID3TAG" string to identify metadata. Use CoverInfo::Type
      instead.
    * Add source tracking for cover provenance (user-selected
      vs. auto-selected) so we know whether it's safe to change a cover
      without losing user data.
    * Add helper for reloading cover art from file.
    * Use relative paths to cover art so FILE art is not broken by folder moves.
    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    42c8155 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a5f2fc5 View commit details
    Browse the repository at this point in the history
  8. Rework WCoverArt <-> WTrackTableView signal flow.

    * Communicate selected track instead of cover art.
    * Support connecting a WCoverArt to the track currently loaded to a deck.
    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    5ef00f4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    0477ae7 View commit details
    Browse the repository at this point in the history
  10. Add deck cover art to Deere.

    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    7000a9b View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    8572aa4 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    59ee4e5 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    ae905d5 View commit details
    Browse the repository at this point in the history
  14. Rename issueRepaint to signalWhenDone and remove update of WTrackTabl…

    …eView on requestCover completion for delegate requests.
    rryan committed Oct 27, 2014
    Configuration menu
    Copy the full SHA
    cd4b3c8 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    9c0c1bb View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    587ee29 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    946cb34 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    356d48c View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2014

  1. Configuration menu
    Copy the full SHA
    afdeb96 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0855f56 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    60c5853 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e9aa413 View commit details
    Browse the repository at this point in the history
  5. Improve connection between WCoverArtMenu, WCoverArtLabel, WCoverArt, …

    …and DlgTrackInfo.
    
    * Remove copying of changed cover art into the folder (temporarily?).
    * Mark all user-generated change events as USER_SELECTED.
    * Remove reliance on CoverInfo::trackId in a couple places.
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    9bbbea5 View commit details
    Browse the repository at this point in the history
  6. Disconnect TIO changed signals while applying track info edits.

    How did editing metadata work at all before?
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    31991b8 View commit details
    Browse the repository at this point in the history
  7. Don't crop cached pixmaps anymore.

    Scale (preserving aspect ratio) and cache them by (hash, width)
    only. Cropping doesn't really save any paint time since
    QPainter::drawPixmap is cheap when you don't have to scale the pixmap.
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    fb7570e View commit details
    Browse the repository at this point in the history
  8. Add coverArtUpdated signal to TrackInfoObject.

    Listen to the signal in WCoverArt.
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    8e11ac5 View commit details
    Browse the repository at this point in the history
  9. Fix test.

    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    da949ae View commit details
    Browse the repository at this point in the history
  10. Allow segregation of multiple users of CoverArtCache.

    * Provide a QObject* requestor pointer when calling requestCover. In
      practice this can be any number you want it to but it is particularly
      useful for the requestor class to pass a pointer to itself so it can
      compare the signal it gets to itself.
    * Provide the original CoverInfo request.
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    8b77640 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    359dade View commit details
    Browse the repository at this point in the history
  12. Make a CoverArtUtils::selectCoverArtForTrack variant that doesn't

    require a TrackPointer.
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    139a05a View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    c0cd784 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    abf7eca View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    a4132de View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    b90c5c6 View commit details
    Browse the repository at this point in the history
  17. Slight phrase tweaking.

    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    ea87686 View commit details
    Browse the repository at this point in the history
  18. Add warning about user data.

    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    33509d1 View commit details
    Browse the repository at this point in the history
  19. Merge remote-tracking branch 'cardinot/coverArtSupport' into

    coverart_test
    
    * Update WTrackTableView changes to match new WCoverArtMenu behavior.
    * Remove DirectoryDAO integration for now.
    
    Conflicts:
    	src/library/coverartcache.cpp
    	src/library/coverartcache.h
    	src/widget/wcoverartmenu.cpp
    	src/widget/wcoverartmenu.h
    rryan committed Oct 28, 2014
    Configuration menu
    Copy the full SHA
    29777ea View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2014

  1. Configuration menu
    Copy the full SHA
    49fee52 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    43cde9e View commit details
    Browse the repository at this point in the history
  3. Remove trackId from CoverInfo.

    * Add a request reference integer to CoverArtCache::requestCover.
      Use (pRequestor, requestReference) for de-duping requests instead of
      trackId.
    rryan committed Oct 29, 2014
    Configuration menu
    Copy the full SHA
    d081ff7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1d4105c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    dc82b07 View commit details
    Browse the repository at this point in the history
  6. Address review comments.

    rryan committed Oct 29, 2014
    Configuration menu
    Copy the full SHA
    94e511e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    06b1952 View commit details
    Browse the repository at this point in the history
  8. Fix UTF-8 test.

    rryan committed Oct 29, 2014
    Configuration menu
    Copy the full SHA
    0c48c06 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    320a803 View commit details
    Browse the repository at this point in the history
  10. Use cover hash as request reference in CoverArtDelegate.

    Now only loads a cover once for rows that share the same hash.
    rryan committed Oct 29, 2014
    Configuration menu
    Copy the full SHA
    dbe9811 View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2014

  1. Support sorting by cover art.

    Sorts by the hash. It works well except for the case where cover art is
    similar but not exactly the same. I think it's good enough to include,
    even if some users may be confused why visually similar cover art
    doesn't sort together.
    rryan committed Oct 30, 2014
    Configuration menu
    Copy the full SHA
    f9e9148 View commit details
    Browse the repository at this point in the history
  2. Delay trackSelected signal until the user interaction timeout.

    Improves scrolling performance when scrolling via keyboard.
    rryan committed Oct 30, 2014
    Configuration menu
    Copy the full SHA
    343f7c0 View commit details
    Browse the repository at this point in the history
  3. Only repaint cells that were cache misses when we hit the user

    interaction timeout.
    rryan committed Oct 30, 2014
    Configuration menu
    Copy the full SHA
    07fd51f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0425bc4 View commit details
    Browse the repository at this point in the history
  5. Delete unused method.

    rryan committed Oct 30, 2014
    Configuration menu
    Copy the full SHA
    3d0f864 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    fa683d8 View commit details
    Browse the repository at this point in the history
  7. Revert DlgTrackInfo parentage change.

    In DlgCoverArtFullSize, max across all top level windows to get the
    appropriate size for the cover art. Maybe this fixes the original issue?
    rryan committed Oct 30, 2014
    Configuration menu
    Copy the full SHA
    3468571 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    8dea56a View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2014

  1. Configuration menu
    Copy the full SHA
    e394457 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dddeb3b View commit details
    Browse the repository at this point in the history
  3. Support multiple-selection for cover art menu in WTrackTableView.

    * Adds CoverArtCache::guessCover(s) methods for calling
      CoverArtUtils::guessCoverArt in a background thread.
    * Removes processing of reset menu option from WCoverArtMenu and instead
      sends a signal that the owner of the menu should handle.
    rryan committed Oct 31, 2014
    Configuration menu
    Copy the full SHA
    0980b6b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cf7c539 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a7329e9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    4ad6b5d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f3e2c5c View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    24874c5 View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2014

  1. Only save images in TIO if it is not NULL

    Max Linke committed Nov 5, 2014
    Configuration menu
    Copy the full SHA
    b95c452 View commit details
    Browse the repository at this point in the history
  2. Reduce code duplication in finding possible Covers

    Max Linke committed Nov 5, 2014
    Configuration menu
    Copy the full SHA
    09b16a3 View commit details
    Browse the repository at this point in the history
  3. Move CoverArtUtil tests to own class

    Max Linke committed Nov 5, 2014
    Configuration menu
    Copy the full SHA
    46fbd24 View commit details
    Browse the repository at this point in the history
  4. Codying style clean up coverartcache

    Max Linke committed Nov 5, 2014
    Configuration menu
    Copy the full SHA
    82085f3 View commit details
    Browse the repository at this point in the history
  5. Use COSlave instead of COThread

    ControlObjectThread is deprecated all new CO's should be of type
    ControlObjectSlave
    Max Linke committed Nov 5, 2014
    Configuration menu
    Copy the full SHA
    76113d0 View commit details
    Browse the repository at this point in the history