1681 Commits

Author SHA1 Message Date
ByteHamster
c16bbdfc96 Do not block when using Sonic+Sleep timer 2019-05-07 14:58:34 +02:00
ByteHamster
cd5224d01b Charging constraint is related to auto download only 2019-05-06 23:08:45 +02:00
ByteHamster
dbda4a9aa8 Using WorkManager for feed updates 2019-05-06 23:04:19 +02:00
Anderson Mesquita
fb3bfa9f80 Handle iTunes single-number duration format
Apple says this [1] about the `<itunes:duration>` tag:

    If you specify a single number as a value (without colons), Apple
    Podcasts displays the value as seconds.

This commit makes it also handle this single-number format.

Closes: #3024

[1]: https://help.apple.com/itc/podcasts_connect/#/itcb54353390
2019-05-05 00:04:06 -04:00
Anderson Mesquita
9b41139709 Extract DurationParser
This makes it easier to test the logic of parsing duration strings.

References: #3024
2019-05-05 00:04:06 -04:00
Anderson Mesquita
a4c852dac0 Extract methods in NSITunes
References: #3024
2019-05-04 13:59:05 -04:00
ByteHamster
01616dd502 Added names for threads
So it is easier to identify problems in bug reports
2019-05-03 12:17:05 +02:00
ByteHamster
d67aa6386e Updated string
Closes #3145
2019-05-01 11:02:29 +02:00
Cédric Cabessa
cf638a4978 use time converter and pref in MediaPlayer and Widget 2019-04-28 21:03:18 +02:00
Cédric Cabessa
6187945e8f add a time conversion class
convert time depending on current playback speed and preferences
2019-04-28 21:03:18 +02:00
Cédric Cabessa
743ec1927c add preference for "Time respects playback speed" 2019-04-28 21:03:18 +02:00
ByteHamster
5d124c476a Fixed sleep timer ANR (Closes #3139) 2019-04-27 10:50:13 +02:00
ByteHamster
0925078770 Translation updates 2019-04-24 23:19:52 +02:00
H. Lehmann
017a6ab3bc
Merge pull request #2957 from orionlee/bugfix_app_anr_in_auto_feed_update_2956
Prevent app crash during some automatic feed update
2019-04-19 12:02:25 +02:00
Brad Pitcher
a349865af3
use multi-line TextView for "No media playing" 2019-04-18 22:08:49 -07:00
Brad Pitcher
73c39fc3d0
no need to spell out android.view.View 2019-04-18 21:48:33 -07:00
Brad Pitcher
ee6e5ed5d0
space before ( for better style 2019-04-18 21:45:59 -07:00
Brad Pitcher
bf54e0e7c7
avoid "app not responding" errors loading widget image 2019-04-18 21:45:11 -07:00
Brad Pitcher
a60b6efc51
use ic_launcher_foreground for widget when nothing is playing 2019-04-18 21:43:35 -07:00
ByteHamster
2fca491f53 Made sure that there is not an ANR when switching media player 2019-04-17 20:52:13 +02:00
ByteHamster
1fe33fb351 Fixed NetworkOnMainThreadException 2019-04-16 22:50:59 +02:00
ByteHamster
0339ce7bca Do not set player status before player object is created 2019-04-14 13:56:04 +02:00
ByteHamster
28f424e3c1 No locks are needed if everything is executed on main thread 2019-04-14 13:42:32 +02:00
Brad Pitcher
25915453ba
hide widget text when displaying < 3 columns 2019-04-12 17:56:53 -07:00
ByteHamster
09f4ebf08a Let PlaybackController handle listening for service start 2019-04-12 11:39:38 +02:00
ByteHamster
7d20baf4f9 Upgraded EventBus to v3
Also made sure that register/unregister are called in onStart/onStop
instead of onResume/onPause (prevents possible MultiWindow problems
where updates are not received because activity is not fucused).
2019-04-12 11:32:31 +02:00
H. Lehmann
3f1e6b5d50
Merge pull request #3106 from ByteHamster/subscriptions-columns
Set number of subscription columns
2019-04-12 10:56:26 +02:00
ByteHamster
11b085c68b Fixed attr redeclaration 2019-04-12 10:41:49 +02:00
H. Lehmann
b4f04f6d6d
Merge pull request #3105 from ByteHamster/style-repetition
Reduced repetition in styles.xml
2019-04-12 10:36:06 +02:00
Brad Pitcher
64ddf6ec96
use app_icon_size for layout width on widget components 2019-04-11 22:26:01 -07:00
Brad Pitcher
210afaeb3c
fix widget image glider 2019-04-11 22:25:24 -07:00
ByteHamster
cfd0af55c4 Removed nb translation 2019-04-11 21:54:57 +02:00
ByteHamster
777d92d4be Set number of subscription columns 2019-04-11 21:24:51 +02:00
ByteHamster
6595f49f22 Reduced repetition in styles.xml 2019-04-11 21:02:45 +02:00
H. Lehmann
97d08f3b00
Merge pull request #3097 from ByteHamster/exoplayer-main-thread
Executing all ExoPlayer methods on main thread
2019-04-11 20:50:56 +02:00
ByteHamster
5745da75a6 Clarified that it is using caller thread. not main thread 2019-04-11 20:11:40 +02:00
Brad Pitcher
f2af5192e6
Merge branch 'develop' into fix-2359 2019-04-10 08:21:55 -07:00
ByteHamster
0e3cabb86d Do not hold state in fragments 2019-04-10 01:05:36 +02:00
ByteHamster
156a20734a Fix Sonic playback 2019-04-07 12:54:12 +02:00
ByteHamster
2c9cb25eda Merge branch 'develop' into exoplayer-main-thread 2019-04-07 11:52:24 +02:00
ByteHamster
ebe32e795a Executing all ExoPlayer methods on main thread 2019-04-07 00:19:02 +02:00
orionlee
20f1445c06 fix rebase conflicts - remove the incorrect @NonNull from rxjava 2019-04-06 14:19:16 -07:00
orionlee
1655d234af #2966 RxJava2 null - case the underlying method may return null, but
should never happen in the code path, e.g.,
 return the current FeedItem in ItemFragment UI.
Mark underlying method as @Nullable, and let observer's existing
 onError() to handle null case

Rx observer : underlying sources marked as @Nullable
 ItemFragment.load : .loadInBackground
 MediaplayerActivity.checkFavorite : DBReader.getFeedItem
 ItemDescriptionFragment.onViewCreated : DBReader.getFeedItem
 ItemlistFragment.loadItems : .loadData
2019-04-06 13:43:11 -07:00
orionlee
0472bb9237 #2966 RxJava2 null - explicit mark underlying Rx sources as NonNull
to be on the safe side, for cases that the consuming observers checks null
unnecessarily.

Rx observer : underlying sources marked as NonNull
OnlineFeedViewActivity.startFeedDownload : Downloader.getResult
AllEpisodesFragment.loadItems : AllEpisodesFragment.loadData
PlaybackHistoryFragment.loadItems : DBReader.getPlaybackHistory
QueueFragment.loadItems : DBReader.getQueue
SearchFragment.search : .performSearch
2019-04-06 13:43:11 -07:00
orionlee
670fc124eb #2966 RxJava2 null - explicit mark underlying Rx sources as NonNull
to be on the safe side, for cases that the consuming observers
already assumes the result is not null.

Rx observer : underlying sources marked as NonNull
OnlineFeedViewActivity.listener member : DBReader.getFeedList
StatisticsActivity.loadStatistics : DBReader.getStatistics
CustomMRControllerDialog.updateViews : CustomMRControllerDialog.fetchArt
CompletedDownloadsFragment.loadItems : DBReader.getDownloadedItems
DownloadLogFragment.loadItems : DBReader.getDownloadedItems
ItemDescriptionFragment.onViewCreated : .loadData, Timeline.processShownotes
SubscriptionFragment.loadSubscriptions : DBReader.getNavDrawerData
SubscriptionFragment.onContextItemSelected (x2) : DBWriter.markFeedSeen, DBWriter.markFeedRead
PreferenceController.export : ExportWorker.output member
2019-04-06 13:43:11 -07:00
H. Lehmann
5f86af88b1
Merge pull request #3083 from orionlee/bulk_remove_from_queue_1145
Bulk remove from queue
2019-04-06 21:45:55 +02:00
orionlee
cb14fd930f refactor - rename string resource name remove_episode_lable , which was ambiguous with typos, to delete_episode_label
- non-default string resources to be handled by Transifex
2019-04-06 11:27:20 -07:00
orionlee
cc43af110a tweak - bulk edit UI - show a message after an action is applied. 2019-04-06 11:15:14 -07:00
orionlee
b3fbf0b4aa refactor - UI - remove the old (and now used) select all / none /intermediate icons 2019-04-04 14:05:51 -07:00
orionlee
d186309066 bulk edit - UI - new select all / none icons, based on
standard Material icons.
2019-04-04 13:50:55 -07:00