Commit Graph

255 Commits

Author SHA1 Message Date
Robin Lee 224c475b50 Rename multiple files to match the application ID
The desktop entry file, appdata file and installed icons are renamed to
match the application ID for the benefit of Flatpak packaging.
2021-07-20 11:21:05 +01:00
Jim Broadus f04657e7e7 Replace qrand usage with QRandomGenerator
QRandomGenerator was introduced in 5.10 and qrand has since been
deprecated. QRandomGenerator::global() returns a global instance that
has been securely seeded. QRandomGenerator provides methods that
generate values within ranges, so taking a modulus of the result isn't
necessary.
2021-04-20 10:31:07 +01:00
Fabio Bas 651eee13e2 lint 2021-03-12 15:20:16 +00:00
Fabio Bas f56244cd8e add wayland icon 2021-03-12 15:20:16 +00:00
Jim Broadus 59864bf1b6 application: Add a Starting() slot to Application
Add a slot that is invoked when the main application loop starts. This
can be used to perform setup tasks after the initialization has
occurred. Initial use is to hide a splash.
2021-02-21 14:18:54 +00:00
Jim Broadus 1a3828e2c1 protobuf: Fix namespace conflict
Protobuf 3.15 adds a namespace alias for "pb" that conflicts with
Clementine's. Modify Clementine to use "cpb".

Patch provided by @ahesford

Reference: 5c028d6cf4/src/google/protobuf/port.h (L44)
2021-02-21 14:17:26 +00:00
John Maguire 341dc7326f Reformat all C++ 2020-09-22 14:56:06 +01:00
PowerSnail 531cd052ca use QT's High DPI attribute 2020-02-24 13:44:09 +00:00
MorbidMind 60d3435324 Remove obsolete workarounds
Nvidia force close from 2011. Last driver version affected was 304.37, 304.83 is the last in the series and is from 2013.
macOS Soundcloud certificate - CA exists in the system bundle.
macOS font issue from 2013
Gnome volume control with Glib older than 2.36 - Debian Jessie, oldoldstable repo has 2.42
2020-02-23 16:05:26 +00:00
Jim Broadus bb736d1156 Prevent accidental usage of /usr/bin/data
Clementine detects a data directory in the same directory as the executable to
determine portable configuration. But there are some packages that create
/usr/bin/data, causing Clementine to run in portable mode.

Use a more unique data directory name, clementine-data, as the portable data
directory. For backwards compatibility, use the legacy data directory if the
already exists there.
2020-02-23 16:04:42 +00:00
Cesar Enrique Garcia Dabo 397145d21f Remove obsolete forced setting of XDG_CONFIG_HOME.
Apparently this was introduced in 2011 as a workaround to solve a problem in
libimobiledevice. However already in 2013 the problem was solved
in libimobiledevice:
b811fbb05b
2019-12-10 18:05:55 +01:00
John Maguire 8b765a5257 Remove qtsparkle support 2019-11-14 20:53:46 +00: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
Antonio Russo 783dada13e Revert "Blacklist all NVidia drivers"
In 2011, there was a bug that caused NVIDIA drivers to hang
Clementine on shutdown. In 2012, only some drivers had the
fix for this issue. Now, in 2019, we do not need to work
around this bug. By reverting commit

c2723008a2

we work around known bad drivers, but do not penalize all
NVIDIA users for this ancient bug.
2019-04-21 09:11:33 -04:00
Jonas Kvinge 8c198a99a5 Qt 5 fixes 2018-11-21 10:31:17 +00:00
Andreas Sturmlechner d5e5f8246f Remove "-qt5" suffix from ApplicationName and OrganizationName
Renaming the application does not really make sense, but keeping it in
qLog info to identify it in debug output.
2018-02-19 16:22:04 +00:00
Chocobozzz 70f68b1926
Merge remote-tracking branch 'upstream/master' into qt5 2018-02-01 09:50:42 +01:00
Victor Parmar eab875c46d Add support for deleting the currently playing track via the commandline (#5899) 2017-11-21 10:02:36 +00:00
adwait a7ec5662e1 Updated qt bug report page 2017-10-04 16:47:35 +01:00
Andreas Muttscheller 652f38ac84 Fix C:\data cache directory for portable builds
Lastfm needs a NetworkAccessManager which is created during the
initialization of lastfm in main.cpp, it also sets a cache directory.

For the portable version, GetConfigPath uses
QCoreApplication::applicationDirPath() to get the current directory of
Clementine. If no QApplication (or QtSingleApplication in Clementines
case) was instantiated, it returns /data on Linux or C:\data on Windows
for the cache config path.

This commit changes the order so lastfm will be initialized after
QtSingleApplication was created and the correct cache config path will be
returned.

Fixes #5354
2017-02-26 11:20:10 +01:00
Chocobozzz 18a89f78a9 Merge remote-tracking branch 'upstream/master' into qt5 2016-10-07 14:30:09 +02:00
John Maguire a8a0f2e4fd Remove echonest and update songkick concert fetcher.
#5416
2016-06-27 14:47:42 +01:00
Chocobozzz 0aa3405274 Merge remote-tracking branch 'upstream/master' into qt5 2016-05-09 12:46:08 +02:00
Bigard Florian f2fce34ad8 Fix spotify blob config path (#5370) 2016-05-09 10:55:16 +01: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
Chocobozzz e6e189967d Merge remote-tracking branch 'upstream/master' into qt5 2016-02-29 18:03:02 +01:00
John Maguire abc6370b00 Don't force native windows on OS X with qt5 2016-02-17 17:14:14 +00:00
John Maguire affb215a52 Move cover providers initialisation later in startup. 2016-02-12 16:25:01 +00:00
Chocobozzz f5cd85c6de Fix the command line options when another instance is running 2015-10-12 14:07:10 +02:00
Chocobozzz 631a6cdabd Merge branch 'master' into qt5 2015-09-16 17:40:54 +02:00
Chocobozzz 53af2bd75c Fix echonest qt5 compilation issues with different GNU/Linux distributions 2015-07-08 19:00:14 +02:00
John Maguire e94ec8d119 Add Equifax root cert after Apple removed it.
Fixes #4942
2015-07-07 19:15:23 +01:00
Chocobozzz 5aec1c0e24 Merge remote-tracking branch 'upstream/master' into qt5
Update qt version to 5.4.2
2015-06-03 22:57:58 +02:00
John Maguire e1ea116bfb Remove Grooveshark support.
Well that was nice while it lasted.
2015-05-01 11:57:59 +01:00
John Maguire 319b8a5824 Use SHA512 signatures for the spotify blob.
SHA512 is unsupported by reasonable QCA versions so we must use
libcrypto++ instead.
2015-04-28 12:27:07 +01:00
Arnaud Bienner 20583b8b0a Correct typo 2015-04-25 18:01:32 +02:00
Arnaud Bienner 99521ac15f Add missing certificate for api.soundcloud.com
Fixes #4794.
2015-04-25 17:51:08 +02:00
Chocobozzz 1c6d164219 Avoid warning message with dbus inialized before a QApplication 2015-04-16 20:21:19 +02:00
Chocobozzz 4d0e413fb9 Finally use of qtsingleapplication adapted to qt5 2015-04-16 15:06:00 +02:00
Chocobozzz 8b226c2171 Update non optionnals sources to qt5 2015-04-11 23:24:07 +02:00
John Maguire 1a01b825da Remove Discogs support.
Fixes #4735
Downloading album covers now requires per-user access tokens.
2015-02-03 13:10:13 +01:00
Krzysztof Sobiecki fa9ea6ec5f Fix compilation with moved files in internet/ 2014-12-18 23:35:21 +01:00
David Sansome 0b97a29aa1 Set log levels after commandline options are parsed. Fixes --verbose, --quiet and --log-levels 2014-10-04 21:22:29 +10:00
David Sansome d5617c0daf Set the media role for pulse audio 2014-06-19 22:51:58 +10:00
David Sansome 93a0f160df Add Configure items to the context menus for cloud file services. 2014-03-30 16:46:16 +11:00
John Maguire 0a67a00ec0 Initialise logging earlier. 2014-03-12 19:06:00 +01:00
John Maguire fc9c983e2c Put global functions used for startup in namespace 2014-02-13 18:59:59 +01:00
John Maguire bebd781fdf Reformat all non-3rd-party C/C++/Objective-C++.
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
 -style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire acfc7e6d21 Add missing header for _exit()
Fixes #4188
2014-02-07 13:41:26 +01:00
John Maguire 71893e4847 Use nullptr instead of NULL everywhere. 2014-02-06 17:29:59 +01:00