Commit Graph

1013 Commits

Author SHA1 Message Date
Cesar Enrique Garcia Dabo a7ad66d028 Fix issues reported by clang-format 2019-12-10 18:45:06 +01:00
Luis Caceres 7ef917008a Fix formatting again 2019-12-09 17:02:42 +00:00
Luis Caceres 344989785b Fix multiple triggers of shortcut actions
Also properly connect/disconnect from DBus signal upons register/unregister.
2019-12-09 16:58:32 +00:00
Luis Caceres 2307c15227 Fix style 2019-12-09 16:25:29 +00:00
Cesar Enrique Garcia Dabo f5ec88b529 Add support in GetConfigPath() for /pixmapcache directory 2019-12-07 23:30:14 +01:00
Cesar Enrique Garcia Dabo ab2f7c03ea Use QStandardPaths to define Path_Root and Path_CacheRoot.
These two directories use QStandardPaths::ConfigLocation and
QStandardPaths::GenericCacheLocation respectively, with the
application name (Clementine) appended. The QStandardPaths class from QT
honors the XDG standards:

https://specifications.freedesktop.org/basedir-spec/basedir-spec-0.6.html
https://doc.qt.io/qt-5/qstandardpaths.html#writableLocation
2019-12-07 23:22:13 +01:00
Luis Caceres a3531d749a Actually fix formatting 2019-12-07 19:30:10 +00:00
Luis Caceres 0b6519bad4 Fix build with DBus disabled 2019-12-06 23:56:15 +00:00
Luis Caceres 8cab8fe180 Fix formatting 2019-12-06 23:53:40 +00:00
Luis Caceres 24a571769a Initial KGlobalAccel support 2019-12-06 22:34:13 +00:00
John Maguire b7c3173001
Merge pull request #6439 from jonaski/signalmapper
Replace all uses of QSignalMapper with C++11 lambda expressions
2019-11-10 19:13:31 +00:00
Jonas Kvinge 344023e6dd Fix formatting 2019-11-10 15:16:39 +01:00
Jonas Kvinge ba31c755ef Replace all uses of QSignalMapper with C++11 lambda expressions 2019-11-10 15:07:12 +01:00
John Maguire 21da802630
Merge pull request #6438 from jonaski/remove-extra-semicolon
Remove extra ';'
2019-11-10 00:53:37 +00:00
Jonas Kvinge d09c27f719 Remove extra ';' 2019-11-10 00:30:18 +01:00
Jonas Kvinge 0da490a5e1 Replace QString::null with QString() 2019-11-09 23:45:28 +01:00
John Maguire cb6cd7c485 Merge remote-tracking branch 'origin/master' into qt5 2019-10-04 16:51:43 +01:00
Antonio Russo e66fdd86da Periodically save settings
Instead of immediately saving, which leads to poor performance,
and possible hardware damage (see #6057), limit saves to once
per second (similar to how KDE does it).  It also guarantees
that only one save is required per second, by sharing a QSettings
object, and establishes a signaling framework to put other
setting save events into (but only uses this for the two major
offenders: playlist tab switching and window resizing).

This is in contrast to 6a312e7, which simply deferred the save
until program exit, and caused problems for some people (see #6217
and #6209).

Signed-off-by: Antonio Russo <antonio.e.russo@gmail.com>
2019-09-10 18:41:18 -06:00
Jonas Kvinge 8d921c15be Fix memory leaks in database 2019-07-25 19:02:43 +02:00
John Maguire 75f18dab23
Merge pull request #6374 from jonaski/qt5-update
Qt5 update
2019-07-24 11:51:48 +01:00
Andrew Reading c76697b42c Introduce limit for number of tag client processes.
Previously, the number of processes spawned was always
QThread::idealThreadCount() (returning the number of logical CPU
cores). On new systems with many cores, however, this can result
in 12, 16, 24, or ... processes being spawned, which is a bit
excessive.

This establishes a new config variable,
'max_numprocs_tagclients' within the Settings group, in order
to limit the maximum number of tag client processes that get
spawned. It also adds a means of setting this via the Behavior
page in Settings. It can be set to any integer in the interval
[1, QThread::idealThreadCount()]; it defaults to the maximal value
so as to emulate the old behavior.
2019-07-21 10:53:13 -07:00
Jonas Kvinge 1a2274bd2b Merge branch 'master' into qt5-update 2019-07-21 14:20:59 +02:00
Jim Broadus babff78025 Add error handling path for async song loading.
Async song loading can fail without user feedback. This change adds return codes
to these async load functions. It will now produce an error dialog in simple
scenarios (test case is user selecting a file that is not readable). Other cases,
such as directories and playlists, aren't yet covered.
2019-04-10 11:49:09 -07:00
John Maguire 17d95b7833
Merge pull request #6286 from smithjd15/apeFiles
More bits for APE files (Finish APE file support)
2019-04-10 11:13:51 +01:00
James D. Smith bd89a1d2de Fixes for APE filetype. 2019-04-01 22:56:50 -06:00
Filip Gawin be827f4f7f Simplify some statements 2019-02-22 18:49:48 +01:00
smithjd15 8dd5750efa Improved support for APEv2 tags. (#6280) 2019-02-14 17:37:44 +11:00
Jonas Kvinge d8788d6a0d Update qt5 branch 2019-01-27 01:00:36 +01:00
Jonas Kvinge 0e52bd9d63 Remove amazon cover provider (#6265) 2019-01-21 22:04:50 +00:00
Jonas Kvinge 1d17bee44a Merge with master and fix conflicts 2019-01-18 01:38:12 +01:00
Jonas Kvinge 681f986f0f Fix global shortcuts using GSD D-Bus backend (#6251) 2019-01-09 04:11:28 +00:00
Jonas Kvinge 1f87535c2f Replace sha2 with QCryptographicHash (#6230) 2018-12-03 00:45:20 +00:00
Jim Broadus 95187ed0a1 Fix encoding of GError messages when logging. (#6228)
GError messages contain non-ascii characters. This normally just produces some garbage when we use the default QString contructor that assumes ASCII for logging. However, when a message includes the right double quote, UTF-8 sequence 0xE2 0x80 0x9D, the final byte is OSC. VT100 expects a command sequence to follow and stops echoing output until it sees ST or BEL character, which may never come. Thus, the console output is halted.

This change uses QString::fromLocal8Bit instead of depending on the default constructor. About half of the sites in the codebase had already been converted.

One side effect is that log messages are quoted. There are additional options to control this, but those were only introduced in Qt 5.4.
2018-12-02 09:51:19 +00:00
Jonas Kvinge 16bdd39c03 Merge remote-tracking branch 'upstream/master' into qt5-update 2018-11-29 23:21:54 +01:00
Jonas Kvinge 9f946a2898 Improvements to makefiles and make components optional (#6221) 2018-11-29 21:32:12 +00:00
Alex Kong 0b54e1ff0b Updated accessibility check logic to fix Mojave crash 2018-11-24 18:36:34 +00:00
Jonas Kvinge 1d5783b846 Fix formatting 2018-11-21 10:31:17 +00:00
Jonas Kvinge 8c198a99a5 Qt 5 fixes 2018-11-21 10:31:17 +00:00
Jim Broadus 5a1a5a9d95 Display podcast episode information. (#6203)
* Display podcast episode information.
Add an EpisodeInfoWidget with title, author, duration, date, and description fields. Include this in the PodcastInfoDialog. If exactly one episode is selected, then show both the podcast and episode widgets and display the episode's URL. Otherwise, hide the episode widget and follow the existing behavior. Note that the desription field for the EpisodeInfoWidget uses the QLabel and does not currently download embedded images.
Add an always_show_hours option to the PrettyTime methods to include hours in formatting even if the field is zero. This is less ambiguious in some cases where duration is displayed.

* Apply patch from automated formatter test.
2018-11-17 13:29:16 +00:00
Jonas Kvinge d4fab4a2ea Merge remote-tracking branch 'upstream/master' into qt5-update 2018-11-11 22:46:07 +01:00
Jonas Kvinge 24c428dbae Add missing Player::Stop() (#6192) 2018-11-11 16:14:59 +00:00
Amish Naidu 107e945872 Convert uses of QtAlgorithms to std:: algorithms 2018-10-09 19:17:54 +01:00
Jonas Kvinge c29c2e95cc Fixed merge conflicts 2018-09-30 15:11:06 +02:00
John Maguire 97eadbd441 Add error handling for FTS3 tokenizer 2018-09-29 23:30:37 +01:00
John Maguire 5e8dcd668c Merge branch 'fix-sqlite' of https://github.com/Fat-Zer/Clementine into fix-sqlite 2018-09-29 23:07:30 +01:00
Ilgiz Mustafin a65dabcf0a Date columns for use in library search queries. (#6135)
* Mention numeric columns in tooltip

* Add date filters in search queries

* Show filter usage in tooltip

* Fix code formatting
2018-09-08 13:18:44 -07:00
Ilgiz Mustafin 68d473cfb1 Add filetype filter in search queries 2018-09-05 01:44:40 -07:00
Ilgiz Mustafin 8818ba340a More columns for use in library search queries
Support more columns for the COLUMN:VALUE syntax
in the library search query
2018-09-05 01:44:40 -07:00
Alexander Kernozhitsky a71694f61b Emitting CanPlay and CanPause on change
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=898998 for more
information.
2018-08-24 05:59:33 -07:00
Jonas Kvinge a5e8eba91c Merge remote-tracking branch 'upstream/master' into qt5-update 2018-06-29 02:38:19 +02:00
Eoin O'Neill 4733185d08 Added basic VGM format playback and tag reading. (#6089)
Current VGM format implementation in GStreamer (gstgme) only supports Sega Geneses (Mega Drive) and Sega Master System emulation.
GStreamer also cannot handle the VGZ format (a shorthand for vgm.gz, a gzipped archive that contains a song) which means
that users will currently have to extract the contents of their VGZ files to individual vgm files.
2018-06-18 14:26:11 +01:00
vaterlangen fcf96cb6ff Queue size and duration is now displayed in queue manager && Album Cover Popup fixes (#6086) 2018-06-18 14:21:44 +01:00
Eoin O'Neill e2f63e3945 Implemented SPC playback functionality.
Would like to add more playback support for additional GME supported file types. GME is already supported by the GStreamer backend.
2018-06-16 10:06:37 +01:00
Jonas Kvinge e0d2d9b424 Use taglib to check for valid audio file 2018-06-06 22:54:48 +02:00
Chocobozzz 16b4f9a991
Merge remote-tracking branch 'upstream/master' into qt5 2018-05-14 08:25:27 +02:00
Jonas Kvinge 37912a87b8 Fix WavPack playback (#6048) 2018-05-01 18:29:47 +01:00
Mark Furneaux d28a318437 Clang format 2018-04-14 16:57:06 -04:00
Jonas Kvinge 804168edc7 Bring back album cover fetching from discogs. (#6028)
* Bring back cover fetching from discogs.
2018-03-19 14:18:56 +00:00
Mark Furneaux 3626d84964 Add play next from library 2018-03-18 22:44:00 -04:00
Chocobozzz 70f68b1926
Merge remote-tracking branch 'upstream/master' into qt5 2018-02-01 09:50:42 +01:00
Mattias Andersson 650eb0534a Always include the hours in the the time string if the duration if (#5925)
longer than one day.
2017-12-13 18:37:34 +00:00
Victor Parmar eab875c46d Add support for deleting the currently playing track via the commandline (#5899) 2017-11-21 10:02:36 +00:00
Adrian Garcia 27fc915921 Add settings option to stop playback if song fails to play (#5905) 2017-11-21 10:00:36 +00:00
Allan Nordhøy 36459d2e62 Spelling "%" → "percent" for consistency (#5842) 2017-08-29 02:08:52 +02:00
Allan Nordhøy 38cc22ca85 Update song.cpp (#5839) 2017-08-29 01:23:05 +02:00
John Maguire 328e669e81 Fix mac build 2017-08-16 14:55:38 +01:00
Jacob Henner 203ec76973 Add contextual searches to playlists, library and global search. (#5649)
* Closes #5567: Contextual album/artist search in library search, global search, and playlists.

* Change artist/album search to 'search for this' in globalsearch

* Change artist/album search to 'search for this' in library

* Applying patch from @Fat-Zer to allow search incl year

* Re-adding missing schema definition
2017-08-09 14:12:36 +01:00
John Maguire 4aee29982e Fix MPRIS track ids
Fixes #5795
2017-08-07 17:46:07 +01:00
John Maguire 04beaa96f9 Fix MPRIS2 playlist ids.
Fixes #5798
2017-08-07 16:57:03 +01:00
David Roeca 49876536a5 Resolve #3693 (#5790)
* bring in playlist updates for potential fix

* define signal to handle organise playlist bugs

* work in progress

* fix wrong signal/slot

* next push forward on handling new song creation

* Reorganize signals/slots; still need to figure out why not all signals are being handled

* Get playlists to work when they're in memory

* more changes to playlist updates

* revert unnecessary changes and finalize fix
2017-07-22 18:57:33 +01:00
Chocobozzz fc517ce7a5 Merge remote-tracking branch 'upstream/master' into qt5 2017-06-05 21:28:05 +02:00
Alex Bikadorov 8953227c65 New shortcut: remove current playing song from playlist (#5723) 2017-05-31 17:59:36 +01:00
Grace Dolphy 9f00e021f6 This fixes "First track always the same in shuffle #793". Adding this call in the if statement allows a reshuffle to happen after the playlist ends so that when the playlist will restart, it will already have a new set location to go to. (#5689) 2017-03-31 11:49:41 +01:00
santigl 18d2e35bc6 Register QAbstractSocket::SocketState meta type 2017-03-27 12:56:39 +01:00
santigl e3ece3d4c4 SaveToTemporaryFile(): use QTemporaryFile directly 2017-03-21 10:50:12 +00:00
santigl 35e274c497 Refactor SongLoader::LoadRemotePlaylist() 2017-03-21 10:50:12 +00:00
santigl f44414db81 Add Utilities::SaveToTemporaryFile() 2017-03-21 10:50:12 +00:00
santigl f609bc793f Fix remote-playlist load 2017-03-21 10:50:12 +00:00
Alexander Golubev 77b6d72a3e core/database: configure fts3 tokenizer support
Original patch by Arfrever
This fixes https://github.com/clementine-player/Clementine/issues/5297
2017-03-16 14:54:55 +03:00
John Maguire f7eea6c505 static_cast<:: apparently confuses older GCC. 2017-03-14 17:34:42 +00:00
Jan Paul Erkelens 0215707810 Uses effective fields for album hashing and comparison (#5653) 2017-03-08 12:22:50 +00:00
santigl e30e6da065 Add 'effective_album' property to Song 2017-03-06 18:21:27 +00:00
Morris Hafner 8a6cc8b506 Add missing <functional> includes (#5630) 2017-02-13 16:46:46 +00:00
Florian Bigard 69b2a832db Merge branch 'master' into qt5 2017-01-18 15:57:07 +01:00
John Maguire c7b8aacad8 Remove support for VK
Fixes #5591
2017-01-11 18:08:43 +00:00
Chocobozzz 2096b1f268 Merge branch 'master' into qt5 2016-12-13 20:26:19 +01:00
John Maguire d19ee71443 Try disabling SPMediaKeyTap on Sierra+.
Update issue #5497
2016-11-09 13:58:39 +00:00
Chocobozzz 18a89f78a9 Merge remote-tracking branch 'upstream/master' into qt5 2016-10-07 14:30:09 +02:00
Ilya Selyuminov 09b0fab87c Add new command line option for creating a new one playlist #5373 (#5468) 2016-08-26 08:59:11 -05:00
Valeriy d4e932db9a udisks2 support for devicemanager (refs #3264) 2016-05-17 22:56:16 +03:00
Valeriy 948140fab5 disconnect GVolumeMonitor signals from GioLister before destroying it
fixes #5369
2016-05-11 17:58:12 +03:00
Chocobozzz 0aa3405274 Merge remote-tracking branch 'upstream/master' into qt5 2016-05-09 12:46:08 +02:00
Santiago Gil 0451240df8 Display a stream's URL if it lacks a title (#5333) 2016-04-18 15:20:07 +01:00
Marko Hauptvogel c0e08d42ed Fix rating preservation
This is a bugfix for commit bb5a952e to prevent deletion of database-only ratings.
2016-04-17 19:23:36 -07:00
Alex 11670e1760 Fix playlist behaviour (#5330)
* Do not restore playback state on application start if overwritten by command line options

This also fixes unwanted pausing if a new instance is started with commandline URL combined with playback restore.
Note that the actual buggy code (MainWindow::ResumePlayback()) is not fixed here.

* Fix for commandline URLs for new instances are always appended to playlist.
2016-04-12 15:53:43 +01:00
John Maguire 6693a870ad Reformat intergalacticfm service 2016-04-06 15:45:25 +01:00
John Maguire 9291f09b1b Merge branch 'master' into PanderMusubi-master 2016-04-06 15:43:32 +01:00
John Maguire ed13d02231 Remove support for mpris1 2016-03-30 17:14:58 +01:00
John Maguire 9c33369fcc Merge pull request #5292 from printesoi/fix-mpris-signals
Fix mpris dbus notifications
2016-03-30 15:36:04 +01:00
Victor Dodon 3dd55e1c86 mpris2: fix format
Minor code refactoring:
- Use ternary operator in Mpri2::CanSeek
- Run make format
2016-03-29 21:29:47 -07:00