Commit Graph

6187 Commits

Author SHA1 Message Date
Fabio Bas 89e9b20df1 Use smart pointers for menus; move static vars and most private methods to an anonymous namespace 2021-03-16 11:03:00 +00:00
Fabio Bas 3ba2c811f4 Different context menu for service and stations; "add to your radio streams" action for stations; reworked server error handling 2021-03-16 11:03:00 +00:00
Fabio Bas 6a45edaa34 Removed dirty hack in InternetModel; added "radiobrowser:" url handler; rework station play callback 2021-03-16 11:03:00 +00:00
Fabio Bas cd062f1d8b Added settings page 2021-03-16 11:03:00 +00:00
Fabio Bas cc0cedc5bd added station art 2021-03-16 11:03:00 +00:00
Fabio Bas 3e31094227 Initial RadioBrowser support: implemented search, groups by category, top 100 2021-03-16 11:03:00 +00:00
Fabio Bas e7768948e0 Initial radio-browser.info support 2021-03-16 11:03:00 +00:00
Jim Broadus 08ded2384f build: Move main config from /src to /include
Move /src/config.h to /include/clementine-config.h. The new name
prevents conflict with 3rdparty/taglib/config.h. A stub src/config.h will
remain for a transition period.  This is a first step in eliminating the
dependency of /ext components on /src.
2021-03-16 09:30:56 +00:00
Clementine Buildbot 610d87fa33 Automatic merge of translations from Transifex 2021-03-16 02:52:27 +00:00
Clementine Buildbot 681e7bea5f Automatic merge of translations from Transifex 2021-03-15 02:51:40 +00:00
Jim Broadus 3bd15aea0d library: Add option to ignore files by extension
Add a new skip option in library settings that takes a comma separated
list of file extensions. Skip files with the specified extensions when
scanning the library.
2021-03-14 14:00:03 +00:00
Clementine Buildbot cef1d7e745 Automatic merge of translations from Transifex 2021-03-14 02:51:37 +00:00
Jim Broadus 10bf5dc171 internet/core: Remove unused ItemDoubleClicked
ItemDoubleClicked became noop in 70429217c.
Usage of PlayBehaviour_DoubleClickAction was removed in b08172138.
2021-03-13 18:27:10 +00:00
Jim Broadus dfb953a78f player: Emit request URL in SongChangeRequestProcessed
Use the request URL rather than the media URL when emitting the
SongChangeRequestProcessed signal. The request URL is the URL that the
PlaylistManager, which is the only consumer of this signal, knows about.
However, in the current cases, the url is only checked by the playlist
when the two URLs should be the same.
2021-03-12 15:20:42 +00:00
Jim Broadus bde6d9cc5b player: Add original request URL to playback request 2021-03-12 15:20:42 +00:00
Jim Broadus 2339404852 player: Send request when reporting playback status
Modify the signals emitted by the engine when a url is determined to be
valid or invalid to send the entire request. This will allow additional
metadata to be added to the request, providing a mechanism to better
identify the request source.
2021-03-12 15:20:42 +00: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
Clementine Buildbot 6314c8cb2d Automatic merge of translations from Transifex 2021-03-12 02:52:30 +00:00
Clementine Buildbot 7bb0c59f25 Automatic merge of translations from Transifex 2021-03-09 02:49:48 +00:00
Clementine Buildbot 3677f702ae Automatic merge of translations from Transifex 2021-03-04 02:47:06 +00:00
Clementine Buildbot 2d8a56b7c8 Automatic merge of translations from Transifex 2021-03-03 02:47:30 +00:00
Clementine Buildbot c7f5c0f401 Automatic merge of translations from Transifex 2021-03-02 02:38:18 +00:00
Clementine Buildbot 0c099ab6f6 Automatic merge of translations from Transifex 2021-03-01 02:48:09 +00:00
Clementine Buildbot 2b988ed7b4 Automatic merge of translations from Transifex 2021-02-28 02:46:39 +00:00
Jim Broadus 05f513ab6f skydrive: Add rescan option
Add menu option to drop all items from the database and rescan the cloud
drive.
2021-02-27 13:14:23 +00:00
Jim Broadus c87409c896 cloudfileservices: Refactor context menu code
Add PopulateContextMenu, called once to populate the menu items, and
UpdateContextMenu, called ever time a menu is shown, to allow
service-specific behavior.
2021-02-27 13:14:23 +00:00
Jim Broadus b57e66dd51 cloudfileservices: Common rescan confirmation dialog
Move Google Drive's rescan confirmation dialog to CloudFileService for
reuse.
2021-02-27 13:14:23 +00:00
Jim Broadus 5767317678 onedrive: Update to use graph api
The live API was deprecated in 2018. This change implements basic
onedrive access using the MS graph API.

The URL scheme was also changed from skydrive to onedrive. This is based
on the assumption that existing playlists won't have compatible item
ids.

Known issues:
- Directories with over 200 items will be truncated.
- No mechanism for discovering changes at runtime.
- No mechanism for removing deleted items or rescanning.

Reference: https://docs.microsoft.com/en-us/onedrive/developer/rest-api/concepts/migrating-from-live-sdk?view=odsp-graph-online
2021-02-26 11:18:49 +00:00
Jim Broadus 7b5d2fd79f onedrive: Fix authentication
Discontinue use of obsolete auth endpoints. Update the name of the
settings group as well since the existing skydrive settings are no
longer useful.

Reference: https://docs.microsoft.com/en-us/onedrive/developer/rest-api/concepts/migrating-from-live-sdk
2021-02-26 11:18:49 +00:00
Jim Broadus 565110e223 onedrive: Fix json response parsing
Discontinue use of incorrect and obsolete QJsonDocument::fromBinaryData
method. Utilize common InternetService::ParseJsonReply instead.
2021-02-26 11:18:49 +00:00
Joe Robinson bce55d0efc Fix cover art query for Subsonic-based Funkwhale servers 2021-02-26 11:16:55 +00:00
Jim Broadus 4e8a12f373 errordialog: Don't clear messages on sponaneous events.
Don't clear the message dialog if a hide event is sent from the window
manager. These spontaneous events are sent when a window is minimized,
moved to a different screen, etc.
2021-02-23 21:41:50 +00:00
Jim Broadus b989a674a4 application: Add splash during initialization
Since initialization on first startup or during a database schema update
can take several seconds, show a splash screen. In the initial
implementation, this is just a small Clementine logo.

The benefit of instantiating the splash in the Application class rather
than in main is that it could eventually show status messages during
startup. However, this implementation does not use the
QSplashScreen::finish mechanism that would synchronize the hiding of the
splash screen with the showing of the main window.
2021-02-21 14:18:54 +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 b40d9ed44b oauth: Fix redirect
Query params were not added to redirect url prior to inclusion in oauth
request. This change fixes OneDrive authentication.

Regression introduced in 8b226c2171
2021-02-21 14:18:17 +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
Clementine Buildbot d93bd9ca2b Automatic merge of translations from Transifex 2021-02-19 02:41:26 +00:00
Clementine Buildbot b69dd2d909 Automatic merge of translations from Transifex 2021-02-14 02:41:16 +00:00
Clementine Buildbot cde0343a68 Automatic merge of translations from Transifex 2021-02-13 02:39:31 +00:00
Clementine Buildbot f7ed4a3090 Automatic merge of translations from Transifex 2021-02-11 02:40:17 +00:00
Jim Broadus f7b6708e4f transcoder: Add options widget for voaacenc
Base GstAudioEncoder class properties are not included.
Reference: https://gstreamer.freedesktop.org/documentation/voaacenc/index.html
2021-02-07 15:05:11 +00:00
Jim Broadus 4994091f86 transcoder: Add options widget for fdkaacenc
As with the other cases, the base GstAudioEncoder class properties are
not included.
Reference: https://gstreamer.freedesktop.org/documentation/fdkaac/fdkaacenc.html
2021-02-07 15:05:11 +00:00
Jim Broadus e84f87f625 transcoder: Apply transcoder option fixes to settings page
Dynamically add tabs to the transcoder settings page. Use the same
mechanism that is used in the options dialog to select an options
page based on the best encoder element for a mime type.
2021-02-06 21:28:38 +00:00
Jim Broadus 79d81283a8 transcoder: Add an enum for known codecs
Add CodecType to enumerate codecs available for settings and a MimeType
to provide the mime string.
2021-02-06 21:28:38 +00:00
Jim Broadus 8f3772b593 transcoder: Move option error into its own widget
Create a TranscoderOptionsError class and ui that inherits from
TranscoderOptionsInterface. Use this to display options errors. Move
widget creation into a static method. These changes will allow use of
the same mechanism in the transcoder settings page.
2021-02-05 10:40:31 +00:00
Jim Broadus eb7a9bfa4c transcoder: Show options based on encode element
Instead of assuming a specific set of options based on a format,
determine which encoder element will actually be used in the pipeline.
2021-02-03 10:46:14 +00:00
Jim Broadus a98035d635 transcoder: Separate suitable element search from creation
Split best element type search from Transcoder::CreateElementForMimeType
into new FindBestElementForMimeType method. This will allow the setting
dialog to determine the encoder element type before the pipeline is
built.
2021-02-03 10:46:14 +00:00
Jim Broadus 57a6fe4f20 utilities: Add common method for bug report URL generation
Move code from PodcastParser::ParseItem for reuse.

Example:
Calling Utilities::MakeBugReportUrl("New bug") returns:
https://github.com/clementine-player/Clementine/issues/new?title=New%20bug
2021-02-03 00:32:00 +00:00
Jim Broadus 281da05325 transcoder: Provide user feedback in options error condition
Remove condition that allows no dialog to be displayed when user selects
options for transcoding. Display the dialog with an error message
instead. This also applies to the transcode options dialog in the
ripping and network remote settings.
2021-02-02 09:58:20 +00:00
Jim Broadus b735f5d1c3 transcoder: Change TranscoderOptionsDialog constructor
Take a reference to a TranscoderPreset object instead of the the type.
This will allow the dialog to provide better information and correct
options.
2021-02-02 09:58:20 +00:00
Clementine Buildbot 2725ef99d5 Automatic merge of translations from Transifex 2021-02-02 02:56:25 +00:00
Clementine Buildbot 50ee786135 Automatic merge of translations from Transifex 2021-02-01 02:55:24 +00:00
Clementine Buildbot 816fd88d48 Automatic merge of translations from Transifex 2021-01-31 02:55:13 +00:00
Clementine Buildbot 8db8b1e788 Automatic merge of translations from Transifex 2021-01-30 02:55:19 +00:00
Jim Broadus 18eef830a5 transcoder: Add ability to dump pipeline graphs
Add a "Dump Graph" menu option to the pipeline view if CLEMENTINE_DEBUG
is enabled.
2021-01-29 22:30:03 +00:00
Jim Broadus 7d061afdc3 gstengine: Add PipelineView class
Add ListView derivative class for displaying GstPipelineModel data. A
GetSelectedIds method provides the list of selected pipelie IDs.
2021-01-29 22:30:03 +00:00
Jim Broadus 8d11e9ffab transcoder: Remove unused slots
Transcoder::Start() and Transcoder::Cancel() were defined as slots but
never used as such.
2021-01-29 13:12:26 +00:00
Jim Broadus d4c9628222 transcoder: Don't show progress when nothing is selected
Previously, pressing the "Start transcoding" button with zero files selected
would show the progress group with the progress bar in the busy state.
2021-01-29 13:12:26 +00:00
Clementine Buildbot 78d4c4f3f7 Automatic merge of translations from Transifex 2021-01-29 02:56:20 +00:00
Clementine Buildbot b9a8442632 Automatic merge of translations from Transifex 2021-01-28 02:54:59 +00:00
Jim Broadus 7ba322b10b debug: Generalize debug feature check
Move the debug console variable check to a static method in the
Application class and use environment variable CLEMENTINE_DEBUG instead
of CLEMENTINE_DEBUG_CONSOLE. This will allow debug features to be
enabled elsewhere in the code.

Example:
CLEMENTINE_DEBUG=1 clementine
2021-01-27 15:14:40 +00:00
Clementine Buildbot 79ca9147e9 Automatic merge of translations from Transifex 2021-01-27 02:54:57 +00:00
Maarten Jacobs cb88954a3b Changed usage of boolean to enumeration
Changed the NextInternal() and NextItem() methods to use a enumerated value to track whether "next track" or "next album" is desired
2021-01-26 23:35:10 +00:00
Maarten Jacobs 8fcdbd5114 Adding a "play next album" function, in addition to "play next
track".

Changed shortcut key for Next Album from "space" to F9

Fixed indentation in player.cpp

Fixed spacing in player.cpp.

Updated player.cpp to ensure while loop takes into consideration the last
song on the playlist.

Fixed lint formatting error in player.cpp

Additional changes to player.cpp to make sure next album search reacts properly to the given repeat mode.

Updated player.cpp to address cpplint issues.

Fixing formatting issues.

Fixing formatting errors.

Finished formatting updates.

Final formatting...

Final formatting

Really final formatting...

Addressed issues from code review.

Added functionality to disable Next Album option when repeat mode is "repeat track".

Added commentary to recent changes.

Disable Next Album action also when Repeat Mode is Repeat_Album

In addition to disabling this action for the Next_Track repeat mode, the same applies to the Next_Album repeat mode.
2021-01-26 23:35:10 +00:00
Jim Broadus 8c2ab8fa05 transcoder: Add pipeline list to details dialog
List current running transcode pipelines when the details dialog is displayed.
This will be allow the addition of cancel and debug options.
2021-01-26 10:31:25 +00:00
Jim Broadus befaacebf9 gstengine: Add a model for pipelines
Provide GstPipelineModel for displaying lists of GstPipelineBase instances.
2021-01-26 10:31:25 +00:00
Clementine Buildbot a7a32b08b6 Automatic merge of translations from Transifex 2021-01-22 03:38:11 +00:00
Clementine Buildbot 76c87146dd Automatic merge of translations from Transifex 2021-01-21 03:38:44 +00:00
Clementine Buildbot 447e91a68e Automatic merge of translations from Transifex 2021-01-20 03:37:48 +00:00
Clementine Buildbot a9e193234e Automatic merge of translations from Transifex 2021-01-19 03:35:37 +00:00
Clementine Buildbot 7854aefdd6 Automatic merge of translations from Transifex 2021-01-18 03:34:38 +00:00
Clementine Buildbot f1678fd33c Automatic merge of translations from Transifex 2021-01-17 03:35:38 +00:00
Clementine Buildbot 81a3c0f83c Automatic merge of translations from Transifex 2021-01-15 03:33:21 +00:00
Jim Broadus cf842a8c5a gstengine: Use existing stream id to track background streams
New ids were being created for background stream mapping, but streams already
have unique IDs that can be used for this.
2021-01-14 11:29:43 +00:00
Clementine Buildbot 72e2e62eb1 Automatic merge of translations from Transifex 2021-01-14 03:36:26 +00:00
Jim Broadus 4f5bf1cc6f gstengine: Give pipelines unique names
Currently, most pipelines are named "pipeline". Use a type string in combination
with the stream id to give each pipeline a unique name.
2021-01-13 22:59:49 +00:00
Jim Broadus 5ffdb7d98c gstengine: Move pipeline id handling to base class
Move the id and the global counter from GstEnginePipeline to GstPipelineBase.
Make counter atomic.
2021-01-13 22:59:49 +00:00
Clementine Buildbot 2dd424a195 Automatic merge of translations from Transifex 2021-01-13 03:27:02 +00:00
Jim Broadus ace5234e62 transcoder: Fix flacenc "insane" level encoding
The gstreamer flacenc element defines a set of quality levels that is different
from the standard flac library. Its highest level, labeled "insane", uses
settings that are outside of the streamable subset. Set the streamable-subset
property to false for this level.

Reference: https://xiph.org/flac/format.html#subset
2021-01-12 11:47:12 +00:00
Clementine Buildbot e1e559732b Automatic merge of translations from Transifex 2021-01-12 03:20:36 +00:00
Clementine Buildbot b3aed042eb Automatic merge of translations from Transifex 2021-01-11 03:16:59 +00:00
Jim Broadus f779652aa2 Localize song count in playlist
Use %Lx to localize number formatting.

Reference: https://doc.qt.io/qt-5/qtquick-internationalization.html#5-use-lx-so-numbers-are-localized
2021-01-10 21:58:54 +00:00
Jim Broadus 7b94309827 transcoder: Use GstPipelineBase class for pipeline
This allows the use of the DumpGraph method in transcoding pipelines. The call
can be added to Transcoder::StartJob for debugging. In the future, a trigger
may be added to the debug console ui.
2021-01-10 18:14:57 +00:00
Jim Broadus f9e9dae73d gstengine: Add a base class for pipelines
This allows debug functionality to be shared.
2021-01-10 18:14:57 +00:00
Clementine Buildbot 8c774e3880 Automatic merge of translations from Transifex 2021-01-10 03:17:22 +00:00
Jim Broadus 25d3fca079 gstengine: Fix output audio depth
When the decoder bin's src pad becomes available, check its caps
for a format. If the format is not S16LE, then apply F32LE caps
before the tee. This prevents the pipeline from negotiating
S16LE when the decoder produces other formats.
2021-01-06 20:39:33 +00:00
Jim Broadus 06066dfba4 gstengine: Add a caps filter in pipeline before tee 2021-01-06 20:39:33 +00:00
Jim Broadus 2b17170bf8 gstengine: Move the probe capsfilter to the correct side of the converter
The pipeline currently constructs a caps filter between the tee and the
probe audio converter. This requires that S16LE data is fed to the tee.
2021-01-06 20:39:33 +00:00
Clementine Buildbot 479f1d4de9 Automatic merge of translations from Transifex 2021-01-04 03:05:13 +00:00
Clementine Buildbot 8201c10355 Automatic merge of translations from Transifex 2021-01-03 03:03:01 +00:00
Clementine Buildbot 8f863bc969 Automatic merge of translations from Transifex 2021-01-02 02:58:52 +00:00
Benjamin Valentin 3efa68f07d internet/soma.fm: use high quality AAC stream
Prefer the high quality 130 kbit/s AAC stream over the 'fast' 128 kbit/s
mp3 stream.
2021-01-01 18:00:59 +00:00
Jim Broadus 409c6b89d1 gstengine: Add a gstreamer debug console page
New page initially provides a button that triggers a dump of a graph of the main
pipeline.
2021-01-01 16:26:29 +00:00
Jim Broadus c353deba0c gstengine: Add a DumpGraph method to GstEnginePipeline
This will write a .dot graph and can be integrated with the debug console.
2021-01-01 16:26:29 +00:00
Jim Broadus 0ee64a32f6 console: Add a mechanism to allow components to add pages
Add a MainWindow signal that is emitted when a debug console is created. Relay
that signal to the Application. Add an AddPage method to the Console class that
allows components to populate pages when they receive the signal.
2021-01-01 16:26:29 +00:00
Clementine Buildbot 2b99d32bee Automatic merge of translations from Transifex 2021-01-01 03:01:46 +00:00
Jim Broadus 63a73a4a55 Fix debug console instance leak
Each time the debug console is launched, a new instance is created, but never
deleted. To fix, create one instance, if the option is enabled, and show that
one each time the menu option is selected.
2020-12-31 21:07:58 +00:00
Clementine Buildbot dc2c1e1117 Automatic merge of translations from Transifex 2020-12-29 02:57:55 +00:00
Clementine Buildbot 87cd3d2aba Automatic merge of translations from Transifex 2020-12-28 02:56:46 +00:00
Jim Broadus a012e7e273 gstengine: Fix InitFromString return value
GstEnginePipeline::InitFromString was attempting to link the decoder and audio
bins twice and returning the result of the failed second attempt as it's own
status. The return value was also being ignored by the caller.
2020-12-27 21:50:06 +00:00
Clementine Buildbot 0393d865ca Automatic merge of translations from Transifex 2020-12-27 02:55:57 +00:00
Jim Broadus 616ccc6fde gstengine: Remove extra unref on element creation failure
GstEngine::CreateElement unrefs the supplied bin if an error
occurs. In all current cases, that bin is referenced by a
pipeline.
2020-12-26 22:14:23 +00:00
Clementine Buildbot 5495445175 Automatic merge of translations from Transifex 2020-12-26 02:55:52 +00:00
Clementine Buildbot faab7fa6c5 Automatic merge of translations from Transifex 2020-12-25 02:56:29 +00:00
Clementine Buildbot 870969ef42 Automatic merge of translations from Transifex 2020-12-23 02:57:28 +00:00
Jim Broadus c999fc70e2 Fix hang during internet model reset
An old hack was notifying MergedProxyModel users that max int rows had been
removed when a submodel was reset. This caused the code that invalidates
selected items to spin for a very long time. A modelAboutToBeReset signal,
introduced in Qt 4.6, allows notification before the submodel information is
lost.

Note: there is one other case, in RemoveSubModel, where this hack is used.
This is only called when a device is removed and doesn't trigger this
condition, but it should probably be addressed in the future.
2020-12-22 20:40:05 +00:00
Clementine Buildbot 9f8093a22b Automatic merge of translations from Transifex 2020-12-22 02:56:44 +00:00
Clementine Buildbot 863a668240 Automatic merge of translations from Transifex 2020-12-21 02:54:48 +00:00
Clementine Buildbot af4810a581 Automatic merge of translations from Transifex 2020-12-20 02:51:13 +00:00
Clementine Buildbot 51c600a537 Automatic merge of translations from Transifex 2020-12-19 02:51:12 +00:00
Clementine Buildbot 6a6ef729ef Automatic merge of translations from Transifex 2020-12-18 02:52:23 +00:00
Matthieu Bruel 41513527cd hatstand code review update 1 2020-12-17 12:23:30 +00:00
Matthieu Bruel 114802a0ca Adding links to new remote in network remote settings 2020-12-17 12:23:30 +00:00
Matthieu Bruel 7d038c7354 Missing filechooserwidget files... 2020-12-17 12:23:30 +00:00
Matthieu Bruel 9714b0632d All changes for ClemRemote v1.0 (in one go) 2020-12-17 12:23:30 +00:00
Robert-André Mauchin cfcd0a956e Drop -std=c++0x and -U__STRICT_ANSI__
This was causing compilation failures, static assertion failed, with GCC 11.

Fix #6865

Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
2020-12-17 11:28:09 +00:00
Jim Broadus ccba649f62 Clear cached indexes in InternetModel when rows are removed
When opening a context menu on an internet item, the selected items are stored
in the InternetModel instance. In cases when the items are removed, certain menu
options can cause a crash. A specific case is downloading a podcast when the
user has chosen to limit the number of visible episodes. The subtree for the
podcast is rebuilt after the download completes, so if a context menu was opened
during the download time, selecting the append to playlist option will attempt
to operate on bad indexes.

This fix uses the rowsAboutToBeRemoved signal to remove these stored indexes.

There are likely another rare cases where the indexes can become invalid. For
example, sibling items within a subtree may be removed, causing the stored
indexes to become incorrect or out of range.
2020-12-15 22:36:30 +00:00
Clementine Buildbot c1c43e9a67 Automatic merge of translations from Transifex 2020-12-13 02:43:47 +00:00
Clementine Buildbot 91bad31f68 Automatic merge of translations from Transifex 2020-12-09 02:41:23 +00:00
Clementine Buildbot ba8fc09a65 Automatic merge of translations from Transifex 2020-12-07 02:38:38 +00:00
Jim Broadus 01f0727649 giolister: Don't include invalid mountpoint url
If the gvfs mountpoint property for a volume is empty, we add an empty URL to
the devices URL list. This causes errors in duplicate entry detection.
2020-12-06 12:59:50 +00:00
Clementine Buildbot df262c5c7e Automatic merge of translations from Transifex 2020-12-06 02:37:13 +00:00
Jim Broadus cca48b1ebf giolister: Ignore mountpoints
Read the G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT attribute (unix::is-mountpoint) to
determine if a volume is a mount that udisks2 has detected. Ignoring these
prevents network mounts from showing up as devices.
2020-12-05 13:24:54 +00:00
Clementine Buildbot f5c904b267 Automatic merge of translations from Transifex 2020-12-05 02:35:11 +00:00
Jim Broadus 1a0b288a8f giolister: Remove extra g_object_unref
GioLister::UnmountDevice calls g_object_unref on the GVolume object held by a
DeviceInfo. This appears to be left over from a time before DeviceInfo held
onto the volume.
2020-12-04 22:07:01 +00:00
Jim Broadus abc70554f3 giolister: Append _ to some DeviceInfo class members
Rename drive, mount, and volume to drive_, mount_, and volume_ to
avoid confusion with method arguments.
2020-12-04 22:07:01 +00:00
Clementine Buildbot 20f49c4454 Automatic merge of translations from Transifex 2020-12-03 02:34:21 +00:00
Clementine Buildbot 41b1ba8ffc Automatic merge of translations from Transifex 2020-12-02 02:33:31 +00:00
Clementine Buildbot c4d22d4414 Automatic merge of translations from Transifex 2020-12-01 02:33:42 +00:00
Clementine Buildbot f60c422242 Automatic merge of translations from Transifex 2020-11-30 02:33:52 +00:00
NicolasToussaint 7b3e2dfd8c PlayPlaylist: set current and not active playlist to selection 2020-11-30 01:50:58 +00:00
Clementine Buildbot f17e29f41d Automatic merge of translations from Transifex 2020-11-29 02:32:32 +00:00
NicolasToussaint b2044a5be5 apply PR recomendations 2020-11-28 20:24:56 +00:00
NicolasToussaint ee72b974bf add CLI play-playlist option, to play given playlist name. 2020-11-28 20:24:56 +00:00
Clementine Buildbot c536dc88e9 Automatic merge of translations from Transifex 2020-11-28 02:31:39 +00:00
Clementine Buildbot eec7641ef7 Automatic merge of translations from Transifex 2020-11-27 02:31:50 +00:00
Clementine Buildbot d417aed29f Automatic merge of translations from Transifex 2020-11-26 02:31:54 +00:00
Clementine Buildbot c856a66176 Automatic merge of translations from Transifex 2020-11-25 02:31:22 +00:00
Clementine Buildbot d970b74003 Automatic merge of translations from Transifex 2020-11-24 02:31:19 +00:00
Clementine Buildbot ae4948ce32 Automatic merge of translations from Transifex 2020-11-23 02:30:52 +00:00
Clementine Buildbot 1daf43f914 Automatic merge of translations from Transifex 2020-11-07 02:29:09 +00:00
Clementine Buildbot eefb96bdce Automatic merge of translations from Transifex 2020-11-03 02:27:29 +00:00
zan 16d09ace07 Fix visibility incongruences 2020-11-02 11:07:42 +00:00
Clementine Buildbot cac606186a Automatic merge of translations from Transifex 2020-10-31 02:27:33 +00:00
Jim Broadus fc4cb6fc7a Fix opml import crash
The opml parsing code handles cases where there are extra levels in the xml file
by copying the child to the main container. This corrupts the source instance
during the copy, which leads to corruption in the destination, and ultimately a
crash when it is later used.

To fix, do the copy in two steps, copying the child container to a temporary
location before copying to the destination.
2020-10-17 09:12:22 +01:00
Clementine Buildbot 4e3e9c8d14 Automatic merge of translations from Transifex 2020-10-12 02:34:09 +00:00
Clementine Buildbot 9e8d4434a0 Automatic merge of translations from Transifex 2020-10-04 02:31:34 +00:00
Clementine Buildbot b49afcc5b7 Automatic merge of translations from Transifex 2020-09-24 02:30:41 +00:00
Zanny 2bac3626c5
Fix logout cancelling (#6796) 2020-09-23 10:39:59 +01:00
Clementine Buildbot 54f7637ad2 Automatic merge of translations from Transifex 2020-09-23 02:29:48 +00:00
John Maguire 2172732b1e Include windows.h first as it's special 2020-09-22 14:56:06 +01:00
John Maguire 341dc7326f Reformat all C++ 2020-09-22 14:56:06 +01:00
Clementine Buildbot 8ae194c4a7 Automatic merge of translations from Transifex 2020-09-20 02:29:18 +00:00
Clementine Buildbot f7bece3b83 Automatic merge of translations from Transifex 2020-09-13 02:28:52 +00:00
Clementine Buildbot e9b62fa343 Automatic merge of translations from Transifex 2020-09-11 02:28:40 +00:00
Clementine Buildbot 7b3a0f397b Automatic merge of translations from Transifex 2020-09-09 02:29:06 +00:00
Clementine Buildbot d0bf92f064 Automatic merge of translations from Transifex 2020-09-06 02:28:36 +00:00
Clementine Buildbot 598f840078 Automatic merge of translations from Transifex 2020-09-03 02:28:37 +00:00
Clementine Buildbot 06855ea6c8 Automatic merge of translations from Transifex 2020-09-02 02:28:14 +00:00
Clementine Buildbot 29aad2ae3d Automatic merge of translations from Transifex 2020-08-29 02:27:36 +00:00
Gerion Entrup 6821f6d7bd udisks2lister: enable ipod recognition
The extends two functions:
- Recognize iPods as iPods, check for them in MakeDeviceUrls
- Give them a nice Icon in DeviceIcons (code taken from devicekitlister)
2020-08-28 16:48:13 +01:00
Clementine Buildbot 2d280734aa Automatic merge of translations from Transifex 2020-08-27 02:27:20 +00:00
dmdmdm 3a4d7f3a3d
Only enable main window rate button when LastFM is disabled (#6778) 2020-08-26 16:06:13 +01:00
Clementine Buildbot d3e3270227 Automatic merge of translations from Transifex 2020-08-26 02:27:24 +00:00
dmdmdm 44af6f9d5d Replaced the heart icon with a star for local files 2020-08-25 21:51:03 +01:00
dmdmdm c60c523185 Replaced the heart icon with a star for local files 2020-08-25 21:51:03 +01:00
Clementine Buildbot 6a078f93a3 Automatic merge of translations from Transifex 2020-08-21 02:27:21 +00:00
Clementine Buildbot fe33912886 Automatic merge of translations from Transifex 2020-08-19 02:27:16 +00:00
Clementine Buildbot 2a85d2c600 Automatic merge of translations from Transifex 2020-08-18 02:27:43 +00:00
Clementine Buildbot 70c79bd462 Automatic merge of translations from Transifex 2020-08-15 02:27:47 +00:00
Clementine Buildbot 8aa49902bd Automatic merge of translations from Transifex 2020-08-10 02:27:42 +00:00
Clementine Buildbot e932d421f7 Automatic merge of translations from Transifex 2020-08-04 02:27:34 +00:00
Clementine Buildbot 0e7cb988a7 Automatic merge of translations from Transifex 2020-08-03 02:27:25 +00:00
Clementine Buildbot b10222145e Automatic merge of translations from Transifex 2020-08-02 02:28:29 +00:00
Clementine Buildbot 222e142ad7 Automatic merge of translations from Transifex 2020-08-01 02:29:33 +00:00
Clementine Buildbot 2d3e2254f8 Automatic merge of translations from Transifex 2020-07-31 02:28:34 +00:00
dmdmdm d9fa56c179 Share the love: Minor corrections 2020-07-30 18:24:58 +01:00
dmdmdm acb75a5099 Share the love 2020-07-30 18:24:58 +01:00
dmdmdm 75264f314d Share the love 2020-07-30 18:24:58 +01:00
Keshav Kini 68d375c43c Use effective album artist for Repeat Album logic
When there is album artist information available for a track, the user would
probably expect that "Repeat Album" should cycle through all songs with the same
album artist and album title, not only all songs with the same artist and album
title.
2020-07-20 10:45:49 +01:00
Clementine Buildbot ee72793b5f Automatic merge of translations from Transifex 2020-07-17 02:29:12 +00:00
Jim Broadus 987fe047c6 Fix access past end of vector in getPsychedelicColor 2020-07-13 15:07:02 +01:00
Jim Broadus 1f7607b1db Get backend from application in PlaylistContainer::SetApplication
The manager's library backend may not be set when this is called.
2020-07-12 09:44:47 +01:00
Clementine Buildbot dd9ed23345 Automatic merge of translations from Transifex 2020-07-11 02:27:49 +00:00
Jim Broadus c75fa0077e Fix playlist memory leak
When the current playlist is changed, PlaylistContainer::SetViewModel is called
to set the new list. This calls PlaylistView::SetItemDelegates, which allocates
several objects that are never freed. Instead, move the call to SetItemDelegates
to PlaylistContainer::SetApplication, which is only called once.
2020-07-10 10:28:19 +01:00
Clementine Buildbot 3bfaf3ff38 Automatic merge of translations from Transifex 2020-07-09 02:28:42 +00:00
Mattias Andersson ebf9ebf080 Show only a basic tooltip in the system tray
For environments that implements the D-Bus
http://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/StatusNotifierItem
specification HTML is not supported in the tool tip title. (It is
supported in the tool tip subtitle but this field is not set by
QSystemTrayIcon.)

See the discussion in #6733 for more info.
2020-07-08 17:24:42 +01:00
Jim Broadus 7d28e8700b Call SettingsPage::showEvent from child class implementations 2020-07-07 10:35:02 +01:00
Clementine Buildbot 0fcb1df200 Automatic merge of translations from Transifex 2020-06-28 02:29:27 +00:00
Jim Broadus ad882cc999 Add static IsTypeSupported methods to playlist item classes 2020-06-23 11:06:06 +01:00
Jim Broadus 9455a3ef79 Use IsLocalLibraryItem instead of comparing type string 2020-06-23 11:06:06 +01:00
Clementine Buildbot cf279e6f48 Automatic merge of translations from Transifex 2020-06-21 02:27:27 +00:00
Jim Broadus 76a24a0a28 Use DbPlaylistItem base class for Jamendo and Magnatune
Moving these from LibraryPlaylistItem removes local file specific
implementations of IsLocalLibraryItem and Reload. Returning true for
IsLocalLibraryItem caused ratings to be set on unrelated library songs.
2020-06-19 11:18:32 +01:00
Jim Broadus f563b7da40 Add DbPlaylistItem base class to LibraryPlaylistItem
This will be used to move items from non-library databases away from the
LibraryPlaylistItem class.
2020-06-19 11:18:32 +01:00
Jim Broadus 247cc8f715 Add missing playlistitem.h to CMakeLists.txt 2020-06-19 11:18:32 +01:00
Clementine Buildbot 8c25c443cd Automatic merge of translations from Transifex 2020-06-19 02:28:31 +00:00
Jim Broadus 0d25a1b39c Properly delete ignored DeviceInfo object
Since the SimpleTreeItem constructor variant used from LoadAllDevices adds the
object to the parent's children list, use the parent's Delete method to destroy
it.
2020-06-19 00:10:54 +01:00
Clementine Buildbot 1ef5ec2590 Automatic merge of translations from Transifex 2020-06-18 02:27:25 +00:00
Clementine Buildbot 06544054a6 Automatic merge of translations from Transifex 2020-06-15 02:27:43 +00:00