Commit Graph

1081 Commits

Author SHA1 Message Date
Mark Furneaux a789ce82ca Allow playing of tracks already in queue 2018-03-18 22:03:04 -04:00
Mark Furneaux 6e387c2578 Initial playlist implementation 2018-03-18 14:43:44 -04:00
Andreas Sturmlechner 55a39a9609 Fix build with Qt 5.11 (#6029) 2018-03-17 02:16:49 -04:00
Valeriy Malov 2d7894915d Accept closeEvent() for mainwindow when closing to tray
There's no difference between close() and hide() if WA_DeleteOnClose is not set, so if we're going to hide the window we might as well accept the event.
Ignoring the event may interrupt shutdowns since it signals that the application doesn't want to close the window, at least this happens on Plasma 5.11 when Clementine is not minimized to tray.
2018-03-13 15:04:12 -04:00
Jonas Kvinge de23c3181f Fix resume playback on start not working. 2018-03-12 07:55:59 -04:00
Jonas Kvinge c9d954f8a3 Fix bug in covermanager not saving album cover to DB. (#6011)
* Fix bug in covermanager not saving album cover to DB.
2018-03-04 14:13:34 +00:00
Chocobozzz 70f68b1926
Merge remote-tracking branch 'upstream/master' into qt5 2018-02-01 09:50:42 +01:00
Vikram Ambrose 790fc2ff28 Replace Nokia based FancyTabWidget with standard QTabWidget (#5956)
* Replace Nokia sidebar widget with QTabWidget

The old sidebar widget was written by Nokia 10 years ago
and was a hand made hardcoded mess of widgets trying to
emulate a QTabWidget.

This commit completely replaces it with a widget of the
same name (FancyTabWidget) but is a much simpler subclass
of the standard QTabWidget allowing for a 50% code reduction.

There is still some manual draw code copied over to get the
exact same look of the previous widget but this is not strictly
necessary and can be later refactored with simpler drawControl
code based on styling preferences.

Benefits:
 - 50% code reduction
 - Easier to understand standard QTabWidget mechanics
 - Built-in support for re-arranging and closing tabs

* Save and restore sidebar tab order

Allow the user to rearrange the tab order by dragging
tabs to a new location. Tab order is saved on exit and restored
on start

* Fix some code formatting issues
2018-01-10 09:22:05 +00:00
vikramambrose 2e4a67b8da Add appearance option to hide playlist filter toolbar (#5942)
Gives the user the option of a cleaner looking interface if the
filter toolbar isn't used.
2018-01-03 15:24:56 +00:00
Mattias Andersson b724291ef9 Ensure that the correct playlist is played (#5929)
When the playlist doubleclick behavior is set to add songs to the queue,
the playback of the queue also starts if no song is currently
playing. To play the queue from the current playlist, we must set the
active playlist to the current one before starting the playback.

Fixes #5714.
2017-12-14 21:48:03 +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 b581f2454a Spelling: Hip Hop (#5843)
https://en.wikipedia.org/wiki/Hip_hop Though inconsistent, this never uses "HipHop". While that could be perceived as the name of the equalizer, "Hip Hop" is at least consistent with the other EQs.
2017-08-29 02:09:05 +02:00
Krzysztof Sobiecki dad0c8f314 [win32] Fix build in src/ui/ (#5784)
It looks like there is a problem with build of src/ui/appearancesettingspage.cpp
It might fix it.
2017-08-16 15:09:55 +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
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
Yan Pashkovsky 583eb25cfc Gtkicons (#5742)
* sys icons tick in settings

* system icons loading support

* system icons loading, style fixes
2017-05-30 21:25:24 +01:00
Elias Lattash f854bc5deb Simpler iconloader::Load() logic (#5706)
This fixes a bug when clementine uses an icon from the system, even though it exists in it the *data* folder.

For example: the icons at the top of *playlistlistview.ui*, and at the top of *fileview.ui*
2017-05-08 12:07:59 +01:00
Grace Dolphy 52f1982353 Delete Undo Fix Attempt - Should Solve Issue #5701 Using Clementine to delete a song from disk should not be added to the undo stack (#5702)
* Fix delete functionality. Skips to next song if deleted song is also currently playing.

* Added in a bool to determine if the song being deleted is meant to be deleted from the disk or just from the playlist. Took advantage of the unused variable located in removeRows to distinguish between the two options. No longer adds delete from disk to the undo stack, and deleting from the playlist goes to undo stack as it should.

* Added in a bool to determine if the song being deleted is meant to be deleted from the disk or just from the playlist. Took advantage of the unused variable located in removeRows to distinguish between the two options. No longer adds delete from disk to the undo stack, and deleting from the playlist goes to undo stack as it should.

* Update mainwindow.cpp

* Formatting Changes

* Update playlist.cpp

Simplified condition statement.

* Added in a missed boolean for RemoveSelected

* Update playlistview.cpp
2017-04-18 14:29:25 +01:00
Grace Dolphy 672d00be05 Fixes the issue "Seek instead of navigation with arrow keys #5550". Now allows the leaf to be closed by arrow left at any point of the leaf, not only the parent, and if the library is focused and arrow keys are pressed and there is nothing to open or close, the request is ignored (no seek) (#5684) 2017-03-30 18:02:49 +01:00
Santiago Gil 0b34586e52 Fix some warnings shown on start-up (#5679)
* Fix 'RGB parameters out of range' with psychedelic colors

* Fix 'edit-find' icon name

* BlockAnalyzer::drawBackground(): do not attempt to paint on a null background

* Use qBound()
2017-03-27 12:57:24 +01:00
Santiago Gil 62bc647cbc Roll back to the cache naming conventions for covers (#5651) 2017-03-07 11:46:54 +00:00
santigl 99ad5dcd2d Refactor EffectiveAlbumArtistName() 2017-03-06 18:47:34 +00:00
santigl f5bd7ef5c0 ItemHasCover(): Replace pointer with reference 2017-03-06 18:21:27 +00:00
santigl 82f0d261fa Use the 'effective_album' title when searching for a track's cover 2017-03-06 18:21:27 +00:00
santigl 2c643513e2 Refactor icon handling. Make empty-cover filtering work again. 2017-03-06 18:21:27 +00:00
santigl deb7c33c64 Add support for 'album artist' field in the LibraryBackendInterface 2017-03-06 18:21:27 +00:00
santigl 58b7c62f25 Make Cover Manager aware of 'album artist' field 2017-03-06 18:21:27 +00:00
santigl 62cec8cf28 Prioritize album artist in cover search and manager 2017-03-06 18:21:27 +00:00
Domenico Iezzi 3b51f80fa3 Small improvements to Cover Manager (#5645)
* nocover icon was previously loaded and used with the default size
(24x24), causing the list item without a cover in the QListWidget to be
shorter in height with respect to the others. Now the icon is
initialized to 120x120, which is the default size of the list elements.
* Added some padding between "Fetch Missing Cover" and "Export
Covers" buttons.
2017-03-03 11:49:47 +00:00
Florian Bigard 69b2a832db Merge branch 'master' into qt5 2017-01-18 15:57:07 +01:00
John Maguire becb0b3d7f Remove some stray vkontakte code 2017-01-11 18:51:12 +00:00
John Maguire c7b8aacad8 Remove support for VK
Fixes #5591
2017-01-11 18:08:43 +00:00
Pavel Vatagin b52c99755d Fix windows7thumbbar.cpp and osdpretty.cpp (#5588)
* fix problem with toWinHICON() in Qt5

* fix Windows (Qt5) build (conversion to HWND)
2017-01-09 20:11:27 +00:00
Marko Hauptvogel 57d00394ee Bugfix for resume playback on start
This fixes issue #5365.

Because of the asynchronous loading of playlists introduced by
09e83935, the resume playback on startup logic finds the active
playlist as empty, because it is not restored yet. By attaching
the playback resume to the RestoreFinish signal, the playback
will be triggered as soon as the playlist is restored. It may be
possible (but unlikely) that the playlist will already be restored
before we wait for the signal, and playback won't be resumed.

Signed-off-by: Marko Hauptvogel <marko.hauptvogel@googlemail.com>
2017-01-05 17:09:57 +00:00
Santiago Gil d3898d2f47 Add dialog to display streams' audio details (#5547)
* Add Stream Details window

* Fix capitalization in StreamDiscoverer::Discover()

* StreamDiscoverer::Discover(): get URL by const reference

* Refactor StreamDiscoverer::Discover

* Rename StreamDiscoverer callbacks

* StreamDiscoverer::OnDiscovered: fix nullptr comparison

* StreamDiscoverer: rename DiscoverFinished signal

* StreamDiscoverer::DataReady: receive const reference

* StreamDiscoverer: Remove unsigned types

* StreamDetailsDialog: rename Close slot

* StreamDetailsDialog: rename ui pointer to ui_

* MainWindow::ShowStreamDetails: receive a const reference

* StreamDetailsDialog: use unique_ptr, remove unsigned types
2016-12-21 16:57:04 +00:00
Chocobozzz 18a89f78a9 Merge remote-tracking branch 'upstream/master' into qt5 2016-10-07 14:30:09 +02:00
Santiago Gil 8da53abcfa Add option to show/hide sidebar (#5459) 2016-09-06 07:28:25 -05: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
Santiago Gil 3d399cec8c Restructure edittagdialog layout (corrects #5437) (#5450) 2016-07-25 11:45:57 +01:00
Mattias Andersson 0b6d531bd3 Focus the library tab when using the 'Show in library' feature 2016-07-01 11:37:04 +02:00
Yan Pashkovsky a879b8c7fd make format 2016-06-01 21:58:35 +03:00
Yan Pashkovsky a9a616863d Scrolling over tray icon support 2016-05-30 02:12:03 +03:00
John Maguire 0beb6d3c59 Remove support for Amazon Cloud Drive. 2016-05-16 18:00:10 +01:00
Chocobozzz 0aa3405274 Merge remote-tracking branch 'upstream/master' into qt5 2016-05-09 12:46:08 +02: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
Ivan Leontiev 75d4731534 Move global search settings loading later in "MainWindow" initialisation
Fixes #5312.
2016-03-30 04:58:47 +03:00
Chocobozzz 4898d20ce2 Merge remote-tracking branch 'upstream/master' into qt5 2016-03-28 11:38:22 +02:00
René Tronsgaard Rasmussen 8e70046e4b Add -q,--stop-after-current commandline flag 2016-03-18 20:21:34 +01:00
Chocobozzz e6e189967d Merge remote-tracking branch 'upstream/master' into qt5 2016-02-29 18:03:02 +01:00
John Maguire dcdd81d69f Moar Lazy migrations 2016-02-12 16:10:56 +00:00
John Maguire b99b090adc Refactor simple dialogs to use Lazy 2016-02-12 16:01:35 +00:00
John Maguire 74e6a1744f Convert edit tag & settings dialog to Lazy. 2016-02-12 15:56:08 +00:00
John Maguire 589f2ff62e Lazy initialise organise dialog 2016-02-12 12:25:35 +00:00
John Maguire 729dc8e281 Merge pull request #5182 from abika/fix-fetch_edit_dialog
Fix bug in edit tag dialog when fetching (2)
2016-02-11 15:30:51 +00:00
John Maguire f2daa772c1 Lazy initialise everything in Application. 2016-02-11 15:15:38 +00:00
Alexander Bikadorov 56e95839f0 Revert to iterator usage in edit tag dialog 2016-02-11 16:09:38 +01:00
John Maguire 6844dcc140 Remove unused variable 2016-02-11 14:19:01 +00:00
narunlifescience b6bf54be6c remove magic numbers 2016-02-11 04:41:37 -06:00
Alexander Bikadorov 9d413ad01d Edit tag dialog: merged duplicate code 2016-02-09 21:56:22 +01:00
Arun Narayanankutty 29b8d308b3 Use icon loader for remaining icons 2016-01-14 06:10:54 -06:00
John Maguire c9b0bb2044 Revert "Add an option to inhibit suspend while playing" 2016-01-08 15:09:07 +00:00
John Maguire a9b5947fb0 Merge pull request #5150 from narunlifescience/master
Add an option to inhibit suspend while playing
2016-01-07 18:32:29 +00:00
Alexander Bikadorov ff86ecddc5 Update modified fields boldness when fetching tags 2016-01-04 18:56:28 +01:00
Alexander Bikadorov bad9e4af5e Fix for erasing old tag values when using tag fetcher, replacement for #51311 2016-01-04 17:13:37 +01:00
Santi 98b042d29c Disable translation of shortcuts 2015-12-22 18:33:07 -03:00
narunlifescience 16707f0934 move member variables only used by dbusidlehandler.cpp to anonymous namespace 2015-12-22 10:03:57 -06:00
Chocobozzz 5675091816 Add error message if editing tag from playlist fails 2015-12-20 19:07:15 +01:00
Chocobozzz ff7026c9fe Merge remote-tracking branch 'upstream/master' into qt5 2015-12-13 20:05:12 +01:00
narunlifescience 9f121f4a9d move dbus names to unique namespace -> dbusidlehandler.cc & other minor updates
fix InhibitwhilePlaying signals
2015-12-11 08:49:12 -06:00
narunlifescience b13f0690c8 Add an option to inhibit suspend while playing
minor modifications
2015-12-10 03:20:29 -06:00
narunlifescience 2603cf2088 use iconloader & cleanup previous remnants
update
2015-12-01 00:32:20 -06:00
John Maguire f300946c81 Remove most usages of QFutureWatcher 2015-11-27 14:28:12 +00:00
John Maguire 3cc9c1e446 Remove ModelFutureWatcher 2015-11-26 19:02:08 +00:00
Mark Furneaux fa0a9d315c Respawn mainwindow on correct monitor
PR #5081 created a regression where the mainwindow will always start on the primary monitor regardless of which one it was closed on when maximized. This restores previous functionality.
2015-11-22 00:35:27 -05:00
narunlifescience 5f580f1dd9 add volume icon label to background stream settings page 2015-11-12 03:16:00 -06:00
narunlifescience e2c4b1567c seek time step label
height
2015-11-09 19:51:58 -06:00
John Maguire a7ae275153 Merge pull request #5094 from terrorfisch/issue-3355
Fix 3355: Tag fetcher now ignores songs without any results
2015-11-02 13:02:46 +00:00
John Maguire f92e88e321 Add support for inhibiting the screensaver on windows. 2015-10-30 16:45:51 +00:00
terrorfisch f49ae2f792 Add new line at the end. 2015-10-30 15:17:23 +01:00
terrorfisch a51baefde6 Resolve formatting issues. 2015-10-30 15:13:26 +01:00
terrorfisch c75f046c10 FIX: Tag fetcher applies incorrect tags for songs without any results
Before this fix the fetched data of the first title was applied to all selected titles. If the other titles hat correctly fetched tags, this information was overridden by the correct data. So the error only occured in case of failure during fetching.
2015-10-30 12:44:12 +01:00
narunlifescience 6a11ac6162 remember normal window state when user closes clementine in maximized state 2015-10-20 04:44:42 -05:00
John Maguire 5984c881c6 C++11 initialization list doesn't compile on mac 2015-10-14 14:09:41 +01:00
narunlifescience dd953fd86c check custom icon location, then system theme & then fallback theme
icons added & replaced
2015-10-13 22:35:49 -05:00
Chocobozzz f5cd85c6de Fix the command line options when another instance is running 2015-10-12 14:07:10 +02:00
Ethan Warth 262ea27ec0 consolidated the options for double clicking a playlist
see https://github.com/clementine-player/Clementine/pull/4991#issuecomment-140082879
2015-09-25 22:39:21 -05:00
Chocobozzz 631a6cdabd Merge branch 'master' into qt5 2015-09-16 17:40:54 +02:00
Ethan Warth 1df1260c6a fixing default settings for double clicking a playlist (oops) 2015-09-01 22:41:17 -05:00
Ethan Warth 40d985c7f9 performed a make format 2015-08-14 15:48:01 -05:00
Ethan Warth 2356a9b591 Merge branch 'master' into double_click_playlist
this will allow the make format to happen without causing a merge conflict
2015-08-14 15:45:01 -05:00
Ivan Leontiev e85424cdd7 Fix time labels blinking when playing streams without known duration 2015-08-10 12:01:42 +00:00
Ethan Warth a85f2e3076 fixed the miscellaneous bugs; time for a pull request! 2015-08-10 02:43:45 -05:00
Ethan Warth a7a83b3953 double clicking playlist options should now be implmented
the code compiles; runtime testing will follow
2015-08-09 22:43:16 -05:00
Ethan Warth 89e0e283a2 did more double click playlist work, prettified variable names 2015-07-22 02:10:04 -05:00
Arnaud Bienner a56825048c Use lower case, like everywhere else on this page: this is more coherent, and also, we then have only one string to translate 2015-07-21 20:21:01 +02:00
Ethan Warth 20d25090fb work on adding UI options for double clicking songs in playlist 2015-07-21 02:41:49 -05:00
Eduardo Sánchez Muñoz c051506fdd Fix "menu_previousmode" setting not loading when opening the settings window. 2015-07-15 18:46:18 +02:00