Commit Graph

251 Commits

Author SHA1 Message Date
Jonas Kvinge efcdfdf612 Remove unused include for macOS 2021-03-13 02:00:38 +01:00
Jonas Kvinge 133f094d72 Add support for saving embedded album covers
Fixes #286
2021-02-26 21:03:51 +01:00
Jonas Kvinge b3681002a7 Change int to qint64 2021-02-10 18:27:40 +01:00
Jonas Kvinge 9ed184edbf Simplify code 2021-02-06 00:32:01 +01:00
Jonas Kvinge 89572b07fb Remove default argument 2021-02-06 00:30:40 +01:00
Gavin Howard 0f96daec9a
Fix playlist saving
The fix came from a suggestion by Jonas; I just tested it.
2021-02-03 16:38:24 -07:00
Jonas Kvinge 03959a68d5 Formatting 2021-02-02 21:08:58 +01:00
Jonas Kvinge 59b48ceb4a Use std::make_shared 2021-02-02 21:08:12 +01:00
Jonas Kvinge 88874f0dcd Remove NewClosure 2021-01-30 21:53:53 +01:00
Jonas Kvinge 60528525e0 Use QObject::connect() everywhere for consistency 2021-01-29 18:53:20 +01:00
Jonas Kvinge cb5a7f8c9d Replace NewClosure with lamdas 2021-01-29 18:47:50 +01:00
Jonas Kvinge fd9c6d460a Fix lamda connect for audio CD tracks load finished 2021-01-29 18:45:09 +01:00
Jonas Kvinge bf7c8df353
Connection syntax migration (#637) 2021-01-26 16:48:04 +01:00
Jonas Kvinge 9c6c26f424 Delete TagCompletionModel 2021-01-26 00:40:06 +01:00
Jonas Kvinge 010a0cc2a7 Fix playlist filter with Qt 6 2021-01-20 20:18:29 +01:00
Jonas Kvinge 1bd586268c Update some copyrights 2020-12-12 00:33:27 +01:00
Jonas Kvinge 6ab6e6d3a8 Format code 2020-11-22 03:36:46 +01:00
Jonas Kvinge 91e5cafe76 Remove disabling repeat and shuffle buttons
It's more confusing than helpful
2020-11-20 21:48:10 +01:00
Jonas Kvinge 47754951f0 Format code 2020-11-20 21:47:01 +01:00
Jonas Kvinge f877639ed7 Fix repeat/shuffle disabled when a dynamic playlist is open
Fixes #593
2020-11-19 18:12:48 +01:00
Jonas Kvinge 042da74955 Change return type of qHash with Qt 6 to size_t 2020-11-17 01:22:38 +01:00
Jonas Kvinge deddaed04a Remove use of std::bind where possible 2020-11-14 02:13:22 +01:00
Jonas Kvinge c0663bc19f Use reference 2020-11-13 20:34:29 +01:00
Jonas Kvinge b3b5a38c3a Minor code style fix 2020-11-11 22:55:56 +01:00
Jonas Kvinge 15b656b753
Merge pull request #587 from fbugno/issue515
Fix HiDPI scaling for glow animation and drag over playlist
2020-11-10 22:52:08 +01:00
Felipe Bugno f5785db163 Code style changes to match the existing code
This changes the style of the private variable and the call
convention of the inherited functions.
2020-11-10 17:55:00 -03:00
Felipe Bugno b062febea0 Fix HiDPI scaling for glow animation and drag over playlist
This set the proper scaling and pixel ratio of QPixmap widgets
used as cached objects.

Most of cached objects uses a custom QPaint instead of the default
painter object from the parent widget. The problem is that, unlike
the painter from the parent object, set by the main application,
and that has DPI and scaling settings from the device, these custom
QPainters don't know about the underlying device, thus uses a
scale of 1 to render artifacts.

When a cached object "edited" by a custom QPaint along his pipeline
where used on a paint or drawrow routine, his stored image is distorted
and burred in a effort to resize it to the display configuration.
2020-11-09 21:49:22 -03:00
Jonas Kvinge 73c7024e11 Dont return from SongSaveComplete early, needs to free TagReaderReply 2020-11-09 19:17:31 +01:00
Jonas Kvinge 160e4570a2
Use C++17 (#579)
* Use C++17

* Replace std::random_shuffle with std::shuffle

* Add random include
2020-11-05 22:28:49 +01:00
Jonas Kvinge a174c142c1 Remove unused linked list includes 2020-11-04 18:06:36 +01:00
Jonas Kvinge 09e0059930 Resize organize window when copying to device
Fixes #566
2020-10-27 17:50:16 +01:00
Jonas Kvinge ad2fb82aa9 Don't edit playlist name on doubleclick in playlists view
Fixes #567
2020-10-27 17:11:17 +01:00
Jonas Kvinge 944cd020af Only strip problematic characters when saving a playlist 2020-10-25 01:01:43 +02:00
Jonas Kvinge f7b36ac4c7 Replace use of QVariant::type() with Qt 6 2020-10-24 03:32:40 +02:00
Jonas Kvinge 6d080a0d59 Fix crash when copying a closed playlist to a device
Fixes #551
2020-10-08 19:19:39 +02:00
Jonas Kvinge f0ae1051ee Only set art manual for temporary metadata when temp metadata is set 2020-10-08 19:14:56 +02:00
Jonas Kvinge 872da05ff6 Inform of song change on play restart, add playlist auto sorting.
Fixes #511
2020-10-01 19:58:16 +02:00
Jonas Kvinge e2d5b44b0a Hide certain playlist list context menu options when items are not selected 2020-10-01 19:49:06 +02:00
Jonas Kvinge 938ee20f1f Make sure song changed is only called once 2020-09-29 22:40:43 +02:00
Jonas Kvinge e390f3a399 Clear now playing in MainWindow::MediaPlaying() instead
Fixes #548
2020-09-29 17:38:00 +02:00
Jonas Kvinge e22d463d11 Use QFileInfo::completeBaseName() instead of QFileInfo::baseName()
Fixes #550
2020-09-29 17:30:21 +02:00
Jonas Kvinge b63030d302 Don't send now playing twice
Fixes #548
2020-09-28 17:47:45 +02:00
Jonas Kvinge 89d6b7cec0 Add smart playlists, ratings and Qobuz
Fixes #259
Fixes #264
2020-09-17 17:50:17 +02:00
Jonas Kvinge e3587d369e Add const 2020-09-10 22:05:12 +02:00
Jonas Kvinge 2a048502cc Add PlaylistItem::NewFromSong function 2020-09-10 22:04:11 +02:00
Jonas Kvinge 73692797dc Fix QWidget::enterEvent with Qt 6 2020-09-05 19:20:43 +02:00
Jonas Kvinge 22afcbcbb6 Only allow playlist editing if song is editable
Set proper flags in model instead of overriding edit in view.

Proper fix for #524
2020-08-30 22:23:38 +02:00
Jonas Kvinge cfd1fe59f3 Only allow playlist editing if song is editable.
Fixes #524
2020-08-30 21:40:04 +02:00
Jonas Kvinge 82d10dd7cb Remove debug line 2020-08-30 01:59:26 +02:00
Jonas Kvinge 841065fb91 Load icons for buttons before setting enabled/disabled
Fixes #500
2020-08-30 01:57:21 +02:00
Jonas Kvinge 08f32d1de6 Refactor playlist view/header code
- Don't reload all settings when changing playlists
- Fix initial playlist header columns sizes
- Properly reset header state when resetting columns
2020-08-29 19:55:00 +02:00
Jonas Kvinge 445cf22333 Use deleteLater 2020-08-29 16:24:40 +02:00
Jonas Kvinge 3948af80b8 Fix pixelated source icon for currently playing song in playlist 2020-08-25 21:51:23 +02:00
Jonas Kvinge 82142751de Improve playlist autoscrolling
Fixes #420
2020-08-23 19:37:24 +02:00
Jonas Kvinge 4e5755f218 Refactor some functions 2020-08-23 19:17:50 +02:00
Jonas Kvinge d23da7a612 Replace Qt::MidButton with Qt::MiddleButton 2020-08-23 03:27:24 +02:00
Jonas Kvinge 414a4a97fb Use unicode option when replacing non-words
Fixes #513
2020-08-15 11:43:14 +02:00
Jonas Kvinge fbc99827ab Revert "Turn off sort indicators for playlist"
This reverts commit 7b50ec4630.
2020-08-14 17:30:27 +02:00
Jonas Kvinge 7b50ec4630 Turn off sort indicators for playlist
Fixes #511
2020-08-12 16:56:28 +02:00
Jonas Kvinge 34634d776e Make sure to always use original metadata when editing tags 2020-08-10 21:27:56 +02:00
Jonas Kvinge 1f772081fd Only update temporary metadata when set
Fixes #507
2020-08-10 00:32:57 +02:00
Jonas Kvinge 15ddf6ff20 Save and restore playlist scrollbar position when switching between playlists 2020-08-09 14:00:56 +02:00
Jonas Kvinge d16a26605e Fix updating playlist songs when there are multiple files with the same URL
Fixes #501
2020-08-06 21:40:42 +02:00
Jonas Kvinge 7aa5f0d258 Only show delete and save playlist button when item is selected
Fixes #500
2020-08-06 16:00:03 +02:00
Jonas Kvinge 459404e3f0 Rename organise to organize
Prefer US spelling
2020-08-04 21:18:14 +02:00
Jonas Kvinge 2d5a6d6583 Use album artist for album repeat mode 2020-07-30 20:46:30 +02:00
Jonas Kvinge 4c028c1659 Use position().toPoint() with Qt 6 2020-07-29 21:40:03 +02:00
Jonas Kvinge d332a6777a Use QSortFilterProxyModel::filterRegularExpression only with Qt 6 2020-07-29 21:39:02 +02:00
Jonas Kvinge 0b7b7656b2 Replace use of QRegExp 2020-07-20 00:57:42 +02:00
Jonas Kvinge eb270df835 Use std::bind in QtConcurrent::run() to fix compile with Qt 6 2020-07-19 22:43:58 +02:00
Jonas Kvinge ff73dd2183 Partial revert commit af67de8 2020-07-19 19:07:12 +02:00
Jonas Kvinge 13856b33ec Fix playlist filter with Qt 5 2020-07-18 22:37:49 +02:00
Jonas Kvinge a3a1c6f4c8 Fix saving playlist column alignment 2020-07-18 18:18:34 +02:00
Jonas Kvinge af67de8aa6 Use lambdas for QtConcurrent::run instead of NewClosure 2020-07-18 16:28:39 +02:00
Jonas Kvinge e5b3df41e9 Replace QRegExp with QRegularExpression 2020-07-18 04:05:07 +02:00
Jonas Kvinge f24b6a520c Replace QDateTime::toTime_t() with QDateTime::toSecsSinceEpoch() 2020-07-18 03:53:30 +02:00
Jonas Kvinge d2bfc73b91 Only set playlist view item delegates once 2020-07-10 16:18:31 +02:00
Jonas Kvinge 42c62206c8 Move the currently playing song to the top when the playlist is manually shuffled
Fixes #304
2020-07-09 20:52:06 +02:00
Jonas Kvinge a99a19aa60 Fix broken playlist undostack when i.e. removing duplicates and unavailable songs 2020-07-08 20:43:46 +02:00
Jonas Kvinge 4e003c12a6 Add a taste of Strawbs background image 2020-07-07 23:02:24 +02:00
Jonas Kvinge 558e392234 Make search field clear buttons follow icon size settings 2020-06-29 01:09:02 +02:00
Jonas Kvinge 4d78b30e8c Make icon sizes configurable, increase default sizes for icons
Fixes #250
2020-06-28 18:36:48 +02:00
Jonas Kvinge dc36aee7ff Change some explicit usage 2020-06-26 22:41:38 +02:00
Jonas Kvinge 740f9581e6 Change 0 to nullptr 2020-06-26 22:06:23 +02:00
Jonas Kvinge 651020388d Use override 2020-06-15 21:55:05 +02:00
Jonas Kvinge 72ede666d4 Replace use of C style casts 2020-06-15 17:59:02 +02:00
Jonas Kvinge 56caab4461 Remove redundant initialization 2020-06-15 00:11:52 +02:00
Jonas Kvinge 13b60351a6 Replace use of deprecated C++ headers 2020-06-14 23:54:18 +02:00
Jonas Kvinge 082c9097e4 Fix parameter name mispatches 2020-06-14 18:58:24 +02:00
Jonas Kvinge 2fbdb29ebc Replace 0 with nullptr 2020-06-14 17:02:47 +02:00
Jonas Kvinge bf5fea8951 Replace use of QMultiMap::insertMulti with QMultiMap::insert 2020-05-29 17:46:41 +02:00
Jonas Kvinge c35235371a Replace QString::SkipEmptyParts with Qt::SkipEmptyParts on Qt 5.14.0 or higher 2020-05-29 17:40:11 +02:00
Jonas Kvinge 5d6b0fa329 Reset last played song when playlist is finished 2020-05-10 13:08:29 +02:00
Jonas Kvinge 7d1fac44e9 Update non collection songs with manually unset cover 2020-05-05 23:57:37 +02:00
Jonas Kvinge 4abc650edf Make scrobbler handle streams 2020-04-25 00:07:42 +02:00
Jonas Kvinge 8da4c88fd3 Fix compile warnings 2020-04-23 21:08:28 +02:00
Jonas Kvinge a2c0e4d4b1 Improve album cover loader, lyrics search and streaming support
- Improve album cover loader
- Add album cover loader result struct
- Move album cover thumbnail scaling to album cover loader
- Make init art manual look for album cover images in song directory
- Make album cover search work for songs outside of collection and
  streams
- Make album cover search work based on artist + title if album is not
  present
- Update art manual in playlist for local files, devices and CDDA
- Make lyrics search work for streams
- Add stream dialog to menu
- Remove dead code in InternetSearchModel
- Simplify code in InternetSearchView
2020-04-20 18:03:18 +02:00
Jonas Kvinge c69fff52cc Remove useless using std 2020-04-20 17:49:06 +02:00
Jonas Kvinge aa43d42cdb Remove const from signal slot connects 2020-04-13 05:57:48 +02:00
Jonas Kvinge 60e8519b65 Fix track and title in playlist not being movable
Fixes #403
2020-04-08 22:44:39 +02:00