1901 Commits

Author SHA1 Message Date
Adrian Ulrich
02e3d0d63d Fix MirrorLinkMediaService's onMediaChange() use.
onMediaChanged was implemented, but nobody calls that, so let the correct function implement the logic.
2017-12-17 12:08:02 +01:00
Adrian Ulrich
3eadcaf39c force album shuffle mode if we play audio from a search result. 2017-12-17 11:43:58 +01:00
Adrian Ulrich
ef1de17b23 Add search functionality to AudioSearchActivity. 2017-12-16 18:35:48 +01:00
Adrian Ulrich
b82dc3cab1 Add bare bones non functional audio search 2017-12-14 22:26:40 +01:00
Adrian Ulrich
07a21c5d99 Only advertise play if we are paused 2017-12-14 22:17:50 +01:00
Adrian Ulrich
eb001ad7be Add TYPE_USB_DEVICE to list of external output devices.
Also adds some logging.
2017-12-13 18:44:32 +01:00
Stephen J Sweeney
3c62628a42 Add entire album to queue when in album shuffle mode. (#704)
* When in Album Shuffle mode, enqueue all tracks from the same album at once.

* Replaced getRandomSong() with getRandomSongs(). Queue shrink can always be 20, without issue.

* Updated comment text.

* Grab the first song, not the last.

* Use a do-while loop for adding all the album songs.
2017-12-12 20:14:08 +01:00
Adrian Ulrich
9c6c18912f Use AudioDeviceInfo on newer android devices to detect if headphones or headsets are connected. 2017-12-11 19:38:41 +01:00
Adrian Ulrich
7f1e079139 shuffle by album if shuffle mode is set to album and random is active at the same time. 2017-12-10 12:10:49 +01:00
Adrian Ulrich
2b27e209a0 target 1.0.58 2017-12-06 21:29:57 +01:00
Adrian Ulrich
b90cc98377 fix possible endless loop
We were hanging there if a user selected the previous album if:

* He already was at the first album
* And FINISH_RANDOM was enabled

The new code is somewhat simpler to read and handles the case where we hit song 0
in random mode.
2017-12-04 19:53:16 +01:00
Adrian Ulrich
2df538ccc5 change songs compareTo to take the disc number into account 2017-11-29 21:37:45 +01:00
Adrian Ulrich
38fb581ee1 Add discNumber to Song and populate it 2017-11-29 21:10:03 +01:00
Adrian Ulrich
e788e11e5c fix bad copy-n-paste fail :-/ 2017-11-29 20:21:25 +01:00
Adrian Ulrich
953a30d7b5 performLongClick() should only be called from the UI thread.
So we dispatch all long click messages in the UI handler.
2017-11-29 20:19:45 +01:00
Adrian Ulrich
9fa3b1b98c Fiddle with bug #677 by using a different context. 2017-11-29 19:31:31 +01:00
Adrian Ulrich
39482a8a06 fix NPE if onSharedPreferenceChanged() fires while we don't have a media player object. 2017-11-29 19:19:17 +01:00
Adrian Ulrich
8f095e62ed Fix NPE where mLastRequestedCtx may be null 2017-11-29 19:10:30 +01:00
Adrian Ulrich
7ad4b59cf6 Enable Bastp tag reader by default for new installations 2017-11-18 10:25:23 +01:00
Adrian Ulrich
e2ada7afc9 update translations 2017-11-18 10:10:20 +01:00
Adrian Ulrich
cc9b738cc4 Fix NPE in applyReplayGain
refreshReplayGainValues may get called from onSharedPreferenceChanged where we didn't yet prepare a media player.
Ensure that refreshReplayGainValues() does not trigger an update in such situations, as there is nothing to refresh.
2017-11-14 22:02:32 +01:00
steelman
f631fb873d Explicitly accept album art as saved by Windows Media Player (#692)
Windows Media Player saves album covers in AlbumArt* files. Since 2011
Android has considered them as non-media files[1] and hasn't shown in
the Gallery application.

[1] ade06df0fe
2017-11-12 09:15:31 +01:00
Adrian Ulrich
4e7e53e2a7 bump version 2017-11-01 19:46:56 +01:00
Adrian Ulrich
5006744dbc fix crash on API < 21
ScheduledLibraryUpdate extends JobService which requires API >= 21.
This causes older versions to crash at startup as the whole ScheduledLibraryUpdate class does not 'exist' on older devices.
2017-11-01 19:45:49 +01:00
Adrian Ulrich
c0586a846f target 1.0.57 2017-11-01 10:09:09 +01:00
Adrian Ulrich
b90724e834 update translations 2017-11-01 10:07:46 +01:00
Adrian Ulrich
25292b1cc1 Remove logging of ScheduledLibraryUpdate 2017-11-01 10:06:35 +01:00
Adrian Ulrich
b6ba98dcd0 Do not use getPendingJob()
Also make the duplicate detection better and add some more debug logging for now.
2017-10-25 12:21:35 +02:00
Adrian Ulrich
feed3100be Make folder picker text view editable
This gives users the ability to input any path directly without having to walk the whole directory tree (which may include non-readable files)
2017-10-21 19:45:17 +02:00
Adrian Ulrich
6af743d4dd Remove debugging from background scanner 2017-10-21 18:18:19 +02:00
Adrian Ulrich
2be61060ee Change scan interval to 32 hours 2017-10-16 20:25:31 +02:00
Adrian Ulrich
02784b53fb .setRequiresBatteryNotLow is API26, drop it as we don't really need it 2017-10-15 16:21:35 +02:00
Adrian Ulrich
760d321887 Initial commit of ScheduledLibraryUpdate 2017-10-15 14:12:12 +02:00
Adrian Ulrich
0c65294f7d Allow registration of multiple content observers.
Also send a hint if this was an update due to a scan or not.
2017-10-14 11:55:58 +02:00
Adrian Ulrich
b22a0424b8 update translations 2017-10-01 12:25:00 +02:00
Adrian Ulrich
42eaf80949 target 1.0.56 2017-10-01 12:24:25 +02:00
Adrian Ulrich
7dbd3bdff4 Change translation section in README.md 2017-10-01 12:21:52 +02:00
Adrian Ulrich
4a3d0520d5 Allow sort-by-path in Tracks tab, fixes #672 2017-09-30 19:23:54 +02:00
Adrian Ulrich
4d39a912f7 Add hires version of fallback cover 2017-09-30 10:43:11 +02:00
Adrian Ulrich
5a15f52a29 Tighten lock in writeState 2017-09-24 20:27:15 +02:00
Adrian Ulrich
3369774158 use root-path for fileprovider configuration 2017-09-18 21:39:21 +02:00
Adrian Ulrich
b62cc51689 Create notification early for headset events
Headset events are the only place where we are forced to use the startForegroundService call which requires us to call startForeground() within 5 sec.

This will *usually* work fine, but fails if the device somehow failes to be fast enough OR if there is no song available.
Having an option to create a notification in onStart() in any case avoids the ANR crash in such strange cases.
2017-09-17 13:57:31 +02:00
Adrian Ulrich
2f80739804 update french translation 2017-09-09 15:02:22 +02:00
Adrian Ulrich
f2272bfc63 update translation 2017-09-09 11:55:24 +02:00
Adrian Ulrich
d6c7eaf46e target 1.0.55 2017-09-09 11:53:39 +02:00
Adrian Ulrich
0140627c46 Update translations 2017-09-07 21:36:08 +02:00
Adrian Ulrich
073896639a Revert cab1dc8fdd6235d1ade4733a627b870187190806 (while fixing conflicts).
The majority of people do not seem to like this feature, so lets go back to our old behaviour.
2017-09-07 21:31:20 +02:00
Adrian Ulrich
65fc2929b6 Fix ghost-seeks.
The pending seek info loaded from the state may not be used if the user hits < or > to restore the playback service.
If we keep the seek around, we would do an unexpected seek if we ever reach the saved song, which is not what we want.
2017-09-07 21:23:59 +02:00
Adrian Ulrich
674a34d6c2 Use startForegroundService on O for headset events.
The activity hack doesn't really work as it closes vanilla music if we receive an event while one of our activities is visible.
2017-09-07 21:13:02 +02:00
Adrian Ulrich
a3847edd70 Use ShortcutPseudoActivity.getIntent() in widgets. 2017-09-06 22:04:18 +02:00