changed package name and some images

remotes/origin/devel
yattoz 2019-12-07 12:58:04 +01:00
parent 77d630896f
commit d1fb81f615
73 changed files with 169 additions and 172 deletions

View File

@ -1 +0,0 @@
R-a-dio2

View File

@ -1,9 +0,0 @@
<component name="ProjectDictionaryState">
<dictionary name="dict">
<words>
<w>debouncing</w>
<w>requestable</w>
<w>requestor</w>
</words>
</dictionary>
</component>

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

View File

@ -26,7 +26,7 @@ android {
jvmTarget = "1.8" jvmTarget = "1.8"
} }
defaultConfig { defaultConfig {
applicationId "io.r_a_d.radio2" applicationId "fr.forum_thalie.tsumugi"
minSdkVersion 16 minSdkVersion 16
targetSdkVersion 29 targetSdkVersion 29
versionCode 2 versionCode 2

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import androidx.test.platform.app.InstrumentationRegistry import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.ext.junit.runners.AndroidJUnit4
@ -19,6 +19,6 @@ class ExampleInstrumentedTest {
fun useAppContext() { fun useAppContext() {
// Context of the app under test. // Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext val appContext = InstrumentationRegistry.getInstrumentation().targetContext
assertEquals("io.r_a_d.radio2", appContext.packageName) assertEquals("fr.forum_thalie.tsumugi", appContext.packageName)
} }
} }

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
package="io.r_a_d.radio2"> package="fr.forum_thalie.tsumugi">
<uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.INTERNET" />
@ -40,8 +40,8 @@
tools:targetApi="n"> tools:targetApi="n">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" /> <action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="io.r_a_d.radio2.PLAY_OR_FALLBACK" /> <action android:name="fr.forum_thalie.tsumugi.PLAY_OR_FALLBACK" />
<action android:name="io.r_a_d.radio2.NOTIFY" /> <!-- this is for Snooze --> <action android:name="fr.forum_thalie.tsumugi.NOTIFY" /> <!-- this is for Snooze -->
<category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.DEFAULT"/>
</intent-filter> </intent-filter>
</receiver> </receiver>

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
enum class Actions enum class Actions
{ {

View File

@ -1,8 +1,8 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.os.AsyncTask import android.os.AsyncTask
import android.util.Log import android.util.Log
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
class Async(val handler: (Any?) -> Any?, val post: (Any?) -> Unit = {}, class Async(val handler: (Any?) -> Any?, val post: (Any?) -> Unit = {},
private val actionOnError: ActionOnError = ActionOnError.RESET, private val parameters: Any? = null) : private val actionOnError: ActionOnError = ActionOnError.RESET, private val parameters: Any? = null) :

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.app.Notification import android.app.Notification
import android.app.NotificationChannel import android.app.NotificationChannel
@ -69,7 +69,7 @@ abstract class BaseNotification(private val notificationChannelId: String,
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
builder.setSmallIcon(R.drawable.lollipop_logo) builder.setSmallIcon(R.drawable.lollipop_logo)
builder.color = -0x20b3c6 builder.color = -0xf58b01 // same color as Accent. Can't use c.getColor since it's API23+
} else { } else {
builder.setSmallIcon(R.drawable.normal_logo) builder.setSmallIcon(R.drawable.normal_logo)
} }

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.content.BroadcastReceiver import android.content.BroadcastReceiver
import android.content.Context import android.content.Context
@ -6,10 +6,10 @@ import android.content.Intent
import android.os.Build import android.os.Build
import android.util.Log import android.util.Log
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.alarm.RadioAlarm import fr.forum_thalie.tsumugi.alarm.RadioAlarm
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import io.r_a_d.radio2.streamerNotificationService.WorkerStore import fr.forum_thalie.tsumugi.streamerNotificationService.WorkerStore
import io.r_a_d.radio2.streamerNotificationService.startStreamerMonitor import fr.forum_thalie.tsumugi.streamerNotificationService.startStreamerMonitor
class BootBroadcastReceiver : BroadcastReceiver(){ class BootBroadcastReceiver : BroadcastReceiver(){
@ -24,7 +24,7 @@ class BootBroadcastReceiver : BroadcastReceiver(){
RadioAlarm.instance.setNextAlarm(context) // schedule next alarm RadioAlarm.instance.setNextAlarm(context) // schedule next alarm
} }
if (arg1.getStringExtra("action") == "io.r_a_d.radio2.${Actions.PLAY_OR_FALLBACK.name}" ) if (arg1.getStringExtra("action") == "fr.forum_thalie.tsumugi.${Actions.PLAY_OR_FALLBACK.name}" )
{ {
RadioAlarm.instance.setNextAlarm(context) // schedule next alarm RadioAlarm.instance.setNextAlarm(context) // schedule next alarm
if (PlayerStore.instance.streamerName.value.isNullOrBlank()) if (PlayerStore.instance.streamerName.value.isNullOrBlank())

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.os.Bundle import android.os.Bundle
import com.google.android.material.bottomnavigation.BottomNavigationView import com.google.android.material.bottomnavigation.BottomNavigationView
@ -11,16 +11,16 @@ import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.LiveData import androidx.lifecycle.LiveData
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.navigation.NavController import androidx.navigation.NavController
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import java.util.Timer import java.util.Timer
import android.view.MenuItem import android.view.MenuItem
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import com.google.android.material.snackbar.Snackbar import com.google.android.material.snackbar.Snackbar
import io.r_a_d.radio2.alarm.RadioAlarm import fr.forum_thalie.tsumugi.alarm.RadioAlarm
import io.r_a_d.radio2.streamerNotificationService.WorkerStore import fr.forum_thalie.tsumugi.streamerNotificationService.WorkerStore
import io.r_a_d.radio2.streamerNotificationService.startStreamerMonitor import fr.forum_thalie.tsumugi.streamerNotificationService.startStreamerMonitor
import io.r_a_d.radio2.ui.songs.request.Requestor import fr.forum_thalie.tsumugi.ui.songs.request.Requestor
/* Log to file import /* Log to file import

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.content.Intent import android.content.Intent

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.app.PendingIntent import android.app.PendingIntent
import android.content.Context import android.content.Context
@ -6,8 +6,8 @@ import android.content.Intent
import android.support.v4.media.session.MediaSessionCompat import android.support.v4.media.session.MediaSessionCompat
import android.support.v4.media.session.PlaybackStateCompat import android.support.v4.media.session.PlaybackStateCompat
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import io.r_a_d.radio2.BootBroadcastReceiver import fr.forum_thalie.tsumugi.BootBroadcastReceiver
class NowPlayingNotification( class NowPlayingNotification(
notificationChannelId: String, notificationChannelId: String,

View File

@ -1,7 +1,7 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.os.Bundle import android.os.Bundle
import io.r_a_d.radio2.preferences.* import fr.forum_thalie.tsumugi.preferences.*
class ParametersActivity : BaseActivity() { class ParametersActivity : BaseActivity() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.app.Service import android.app.Service
import android.content.BroadcastReceiver import android.content.BroadcastReceiver
@ -33,9 +33,9 @@ import androidx.preference.PreferenceManager
import com.google.android.exoplayer2.* import com.google.android.exoplayer2.*
import com.google.android.exoplayer2.metadata.icy.* import com.google.android.exoplayer2.metadata.icy.*
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector import com.google.android.exoplayer2.trackselection.DefaultTrackSelector
import io.r_a_d.radio2.alarm.RadioAlarm import fr.forum_thalie.tsumugi.alarm.RadioAlarm
import io.r_a_d.radio2.alarm.RadioSleeper import fr.forum_thalie.tsumugi.alarm.RadioSleeper
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import java.util.* import java.util.*
import kotlin.math.exp import kotlin.math.exp
import kotlin.math.ln import kotlin.math.ln
@ -429,7 +429,7 @@ class RadioService : MediaBrowserServiceCompat() {
) )
// This is the MediaSource representing the media to be played. // This is the MediaSource representing the media to be played.
radioMediaSource = ProgressiveMediaSource.Factory(dataSourceFactory) radioMediaSource = ProgressiveMediaSource.Factory(dataSourceFactory)
.createMediaSource(Uri.parse(getString(R.string.STREAM_URL_RADIO))) .createMediaSource(Uri.parse(getString(R.string.STREAM_URL_TSUMUGI)))
fallbackMediaSource = ProgressiveMediaSource.Factory(dataSourceFactory) fallbackMediaSource = ProgressiveMediaSource.Factory(dataSourceFactory)
.createMediaSource(Uri.parse("file:///android_asset/the_stream_is_down.mp3")) .createMediaSource(Uri.parse("file:///android_asset/the_stream_is_down.mp3"))

View File

@ -1,8 +1,8 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.support.v4.media.session.PlaybackStateCompat import android.support.v4.media.session.PlaybackStateCompat
import io.r_a_d.radio2.alarm.RadioSleeper import fr.forum_thalie.tsumugi.alarm.RadioSleeper
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import java.util.* import java.util.*
class Tick : TimerTask() { class Tick : TimerTask() {

View File

@ -1,9 +1,9 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import android.content.SharedPreferences import android.content.SharedPreferences
import android.content.res.ColorStateList import android.content.res.ColorStateList
const val tag = "io.r_a_d.radio2" const val tag = "fr.forum_thalie.tsumugi"
const val noConnectionValue = "No connection" const val noConnectionValue = "No connection"
var colorBlue: Int = 0 var colorBlue: Int = 0
var colorWhited: Int = 0 var colorWhited: Int = 0

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.alarm package fr.forum_thalie.tsumugi.alarm
import android.app.AlarmManager import android.app.AlarmManager
import android.app.PendingIntent import android.app.PendingIntent
@ -6,9 +6,9 @@ import android.content.Context
import android.content.Intent import android.content.Intent
import android.util.Log import android.util.Log
import androidx.core.app.AlarmManagerCompat import androidx.core.app.AlarmManagerCompat
import io.r_a_d.radio2.BootBroadcastReceiver import fr.forum_thalie.tsumugi.BootBroadcastReceiver
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
import java.util.* import java.util.*
class RadioAlarm { class RadioAlarm {
@ -38,7 +38,7 @@ class RadioAlarm {
val alarmManager = c.getSystemService(Context.ALARM_SERVICE) as AlarmManager val alarmManager = c.getSystemService(Context.ALARM_SERVICE) as AlarmManager
alarmIntent = Intent(c, BootBroadcastReceiver::class.java).let { intent -> alarmIntent = Intent(c, BootBroadcastReceiver::class.java).let { intent ->
intent.putExtra("action", "io.r_a_d.radio2.${Actions.PLAY_OR_FALLBACK.name}") intent.putExtra("action", "fr.forum_thalie.tsumugi.${Actions.PLAY_OR_FALLBACK.name}")
PendingIntent.getBroadcast(c, 0, intent, 0) PendingIntent.getBroadcast(c, 0, intent, 0)
} }
val showIntent = Intent(c, ParametersActivity::class.java).let { intent -> val showIntent = Intent(c, ParametersActivity::class.java).let { intent ->
@ -100,7 +100,7 @@ class RadioAlarm {
{ {
val alarmManager = c.getSystemService(Context.ALARM_SERVICE) as AlarmManager val alarmManager = c.getSystemService(Context.ALARM_SERVICE) as AlarmManager
alarmIntent = Intent(c, BootBroadcastReceiver::class.java).let { intent -> alarmIntent = Intent(c, BootBroadcastReceiver::class.java).let { intent ->
intent.putExtra("action", "io.r_a_d.radio2.${Actions.PLAY_OR_FALLBACK.name}") intent.putExtra("action", "fr.forum_thalie.tsumugi.${Actions.PLAY_OR_FALLBACK.name}")
PendingIntent.getBroadcast(c, 0, intent, 0) PendingIntent.getBroadcast(c, 0, intent, 0)
} }
val showIntent = Intent(c, ParametersActivity::class.java).let { intent -> val showIntent = Intent(c, ParametersActivity::class.java).let { intent ->

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.alarm package fr.forum_thalie.tsumugi.alarm
import android.app.AlarmManager import android.app.AlarmManager
import android.app.PendingIntent import android.app.PendingIntent
@ -8,7 +8,7 @@ import android.util.Log
import androidx.core.app.AlarmManagerCompat import androidx.core.app.AlarmManagerCompat
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
class RadioSleeper { class RadioSleeper {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.playerstore package fr.forum_thalie.tsumugi.playerstore
import android.content.Context import android.content.Context
import android.graphics.Bitmap import android.graphics.Bitmap
@ -7,7 +7,7 @@ import android.support.v4.media.session.PlaybackStateCompat
import android.util.Log import android.util.Log
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
import org.json.JSONObject import org.json.JSONObject
import java.io.IOException import java.io.IOException
import java.io.InputStream import java.io.InputStream

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.playerstore package fr.forum_thalie.tsumugi.playerstore
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData

View File

@ -1,12 +1,12 @@
package io.r_a_d.radio2.preferences package fr.forum_thalie.tsumugi.preferences
import android.app.TimePickerDialog import android.app.TimePickerDialog
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
import androidx.core.content.edit import androidx.core.content.edit
import androidx.preference.* import androidx.preference.*
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.alarm.RadioAlarm import fr.forum_thalie.tsumugi.alarm.RadioAlarm
import java.util.* import java.util.*
class AlarmFragment : PreferenceFragmentCompat() { class AlarmFragment : PreferenceFragmentCompat() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.preferences package fr.forum_thalie.tsumugi.preferences
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
@ -6,9 +6,9 @@ import android.os.Bundle
import android.util.Log import android.util.Log
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.preference.* import androidx.preference.*
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.preferenceStore import fr.forum_thalie.tsumugi.preferenceStore
import io.r_a_d.radio2.ui.songs.request.Requestor import fr.forum_thalie.tsumugi.ui.songs.request.Requestor
class CustomizeFragment : PreferenceFragmentCompat() { class CustomizeFragment : PreferenceFragmentCompat() {
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {

View File

@ -1,9 +1,9 @@
package io.r_a_d.radio2.preferences package fr.forum_thalie.tsumugi.preferences
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
import android.os.Bundle import android.os.Bundle
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import android.annotation.SuppressLint import android.annotation.SuppressLint
import androidx.preference.* import androidx.preference.*

View File

@ -1,10 +1,10 @@
package io.r_a_d.radio2.preferences package fr.forum_thalie.tsumugi.preferences
import android.os.Bundle import android.os.Bundle
import androidx.preference.* import androidx.preference.*
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import android.text.InputType import android.text.InputType
import io.r_a_d.radio2.alarm.RadioSleeper import fr.forum_thalie.tsumugi.alarm.RadioSleeper
class SleepFragment : PreferenceFragmentCompat() { class SleepFragment : PreferenceFragmentCompat() {

View File

@ -1,13 +1,13 @@
package io.r_a_d.radio2.preferences package fr.forum_thalie.tsumugi.preferences
import android.os.Bundle import android.os.Bundle
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.preference.* import androidx.preference.*
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.preferenceStore import fr.forum_thalie.tsumugi.preferenceStore
import io.r_a_d.radio2.streamerNotificationService.WorkerStore import fr.forum_thalie.tsumugi.streamerNotificationService.WorkerStore
import io.r_a_d.radio2.streamerNotificationService.startStreamerMonitor import fr.forum_thalie.tsumugi.streamerNotificationService.startStreamerMonitor
import io.r_a_d.radio2.streamerNotificationService.stopStreamerMonitor import fr.forum_thalie.tsumugi.streamerNotificationService.stopStreamerMonitor
class StreamerNotifServiceFragment : PreferenceFragmentCompat() { class StreamerNotifServiceFragment : PreferenceFragmentCompat() {
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {

View File

@ -1,7 +1,7 @@
package io.r_a_d.radio2.streamerNotificationService package fr.forum_thalie.tsumugi.streamerNotificationService
import android.content.Context import android.content.Context
import io.r_a_d.radio2.BaseNotification import fr.forum_thalie.tsumugi.BaseNotification
import java.util.* import java.util.*
class ServiceNotification( class ServiceNotification(

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.streamerNotificationService package fr.forum_thalie.tsumugi.streamerNotificationService
import android.app.AlarmManager import android.app.AlarmManager
import android.app.PendingIntent import android.app.PendingIntent
@ -10,9 +10,9 @@ import android.os.SystemClock
import android.util.Log import android.util.Log
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
import io.r_a_d.radio2.alarm.RadioAlarm import fr.forum_thalie.tsumugi.alarm.RadioAlarm
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import org.json.JSONObject import org.json.JSONObject
import java.net.URL import java.net.URL

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.streamerNotificationService package fr.forum_thalie.tsumugi.streamerNotificationService
import android.app.Service import android.app.Service
@ -9,9 +9,9 @@ import android.util.Log
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.Actions import fr.forum_thalie.tsumugi.Actions
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.tag import fr.forum_thalie.tsumugi.tag
import java.util.* import java.util.*
class StreamerMonitorService : Service() { class StreamerMonitorService : Service() {

View File

@ -1,7 +1,7 @@
package io.r_a_d.radio2.streamerNotificationService package fr.forum_thalie.tsumugi.streamerNotificationService
import android.content.Context import android.content.Context
import io.r_a_d.radio2.BaseNotification import fr.forum_thalie.tsumugi.BaseNotification
import java.util.* import java.util.*
class StreamerNotification( class StreamerNotification(

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.streamerNotificationService package fr.forum_thalie.tsumugi.streamerNotificationService
import android.content.Context import android.content.Context
import android.util.Log import android.util.Log
@ -6,8 +6,8 @@ import androidx.core.app.NotificationCompat
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.tag import fr.forum_thalie.tsumugi.tag
class WorkerStore { class WorkerStore {
companion object { companion object {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.chat package fr.forum_thalie.tsumugi.ui.chat
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -9,7 +9,7 @@ import android.view.WindowManager
import android.webkit.WebView import android.webkit.WebView
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProviders import androidx.lifecycle.ViewModelProviders
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
class ChatFragment : Fragment() { class ChatFragment : Fragment() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.chat package fr.forum_thalie.tsumugi.ui.chat
import android.view.View import android.view.View
import android.webkit.WebView import android.webkit.WebView

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.chat package fr.forum_thalie.tsumugi.ui.chat
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Intent import android.content.Intent

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.news package fr.forum_thalie.tsumugi.ui.news
import java.util.* import java.util.*

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.news package fr.forum_thalie.tsumugi.ui.news
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.widget.TextView import android.widget.TextView
@ -8,7 +8,7 @@ import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.text.HtmlCompat import androidx.core.text.HtmlCompat
import androidx.core.widget.TextViewCompat import androidx.core.widget.TextViewCompat
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import kotlin.collections.ArrayList import kotlin.collections.ArrayList
class NewsAdapter(private val dataSet: ArrayList<News> class NewsAdapter(private val dataSet: ArrayList<News>

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.news package fr.forum_thalie.tsumugi.ui.news
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -9,7 +9,7 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProviders import androidx.lifecycle.ViewModelProviders
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
class NewsFragment : Fragment() { class NewsFragment : Fragment() {

View File

@ -1,10 +1,10 @@
package io.r_a_d.radio2.ui.news package fr.forum_thalie.tsumugi.ui.news
import android.util.Log import android.util.Log
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.Async import fr.forum_thalie.tsumugi.Async
import io.r_a_d.radio2.tag import fr.forum_thalie.tsumugi.tag
import org.json.JSONArray import org.json.JSONArray
import org.json.JSONObject import org.json.JSONObject
import java.net.URL import java.net.URL

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.nowplaying package fr.forum_thalie.tsumugi.ui.nowplaying
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.ClipboardManager import android.content.ClipboardManager
@ -19,10 +19,10 @@ import androidx.core.widget.TextViewCompat
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import com.google.android.material.snackbar.BaseTransientBottomBar import com.google.android.material.snackbar.BaseTransientBottomBar
import com.google.android.material.snackbar.Snackbar import com.google.android.material.snackbar.Snackbar
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
import io.r_a_d.radio2.alarm.RadioSleeper import fr.forum_thalie.tsumugi.alarm.RadioSleeper
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
class NowPlayingFragment : Fragment() { class NowPlayingFragment : Fragment() {

View File

@ -1,9 +1,9 @@
package io.r_a_d.radio2.ui.nowplaying package fr.forum_thalie.tsumugi.ui.nowplaying
import android.widget.SeekBar import android.widget.SeekBar
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
class NowPlayingViewModel: ViewModel() { class NowPlayingViewModel: ViewModel() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs package fr.forum_thalie.tsumugi.ui.songs
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -14,13 +14,13 @@ import androidx.viewpager.widget.ViewPager
import com.google.android.material.snackbar.BaseTransientBottomBar import com.google.android.material.snackbar.BaseTransientBottomBar
import com.google.android.material.snackbar.Snackbar import com.google.android.material.snackbar.Snackbar
import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayout
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.preferenceStore import fr.forum_thalie.tsumugi.preferenceStore
import io.r_a_d.radio2.ui.songs.queuelp.LastPlayedFragment import fr.forum_thalie.tsumugi.ui.songs.queuelp.LastPlayedFragment
import io.r_a_d.radio2.ui.songs.queuelp.QueueFragment import fr.forum_thalie.tsumugi.ui.songs.queuelp.QueueFragment
import io.r_a_d.radio2.ui.songs.request.FavoritesFragment import fr.forum_thalie.tsumugi.ui.songs.request.FavoritesFragment
import io.r_a_d.radio2.ui.songs.request.RequestFragment import fr.forum_thalie.tsumugi.ui.songs.request.RequestFragment
import io.r_a_d.radio2.ui.songs.request.Requestor import fr.forum_thalie.tsumugi.ui.songs.request.Requestor
class SongsFragment : Fragment() { class SongsFragment : Fragment() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs package fr.forum_thalie.tsumugi.ui.songs
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentPagerAdapter import androidx.fragment.app.FragmentPagerAdapter

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.queuelp package fr.forum_thalie.tsumugi.ui.songs.queuelp
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -9,8 +9,8 @@ import android.view.ViewGroup
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
/** /**
* A simple [Fragment] subclass. * A simple [Fragment] subclass.

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.queuelp package fr.forum_thalie.tsumugi.ui.songs.queuelp
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -9,9 +9,9 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.playerstore.PlayerStore import fr.forum_thalie.tsumugi.playerstore.PlayerStore
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
class QueueFragment : Fragment(){ class QueueFragment : Fragment(){
private val lastPlayedFragmentTag = this::class.java.name private val lastPlayedFragmentTag = this::class.java.name

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.queuelp package fr.forum_thalie.tsumugi.ui.songs.queuelp
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.graphics.Color import android.graphics.Color
@ -7,10 +7,10 @@ import android.view.ViewGroup
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.content.res.ResourcesCompat import androidx.core.content.res.ResourcesCompat
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
import io.r_a_d.radio2.colorBlue import fr.forum_thalie.tsumugi.colorBlue
import io.r_a_d.radio2.colorWhited import fr.forum_thalie.tsumugi.colorWhited
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
import kotlinx.android.synthetic.main.song_view.view.* import kotlinx.android.synthetic.main.song_view.view.*
import kotlin.collections.ArrayList import kotlin.collections.ArrayList

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import kotlin.math.exp import kotlin.math.exp
import kotlin.math.max import kotlin.math.max

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import android.os.Build import android.os.Build
import android.os.Bundle import android.os.Bundle
@ -14,7 +14,7 @@ import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
class FavoritesFragment : Fragment() { class FavoritesFragment : Fragment() {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
@ -11,7 +11,7 @@ import androidx.lifecycle.Observer
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import io.r_a_d.radio2.R import fr.forum_thalie.tsumugi.R
class RequestFragment : Fragment() { class RequestFragment : Fragment() {

View File

@ -1,6 +1,6 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
import org.json.JSONObject import org.json.JSONObject
class RequestResponse(jsonResponse: JSONObject) { class RequestResponse(jsonResponse: JSONObject) {

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.os.Build import android.os.Build
@ -9,8 +9,8 @@ import android.widget.TextView
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.widget.TextViewCompat import androidx.core.widget.TextViewCompat
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.r_a_d.radio2.* import fr.forum_thalie.tsumugi.*
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
import kotlinx.android.synthetic.main.request_song_view.view.* import kotlinx.android.synthetic.main.request_song_view.view.*
import android.view.View import android.view.View
import kotlinx.android.synthetic.main.button_load_more.view.* import kotlinx.android.synthetic.main.button_load_more.view.*

View File

@ -1,12 +1,12 @@
package io.r_a_d.radio2.ui.songs.request package fr.forum_thalie.tsumugi.ui.songs.request
import android.util.Log import android.util.Log
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import io.r_a_d.radio2.ActionOnError import fr.forum_thalie.tsumugi.ActionOnError
import io.r_a_d.radio2.Async import fr.forum_thalie.tsumugi.Async
import io.r_a_d.radio2.playerstore.Song import fr.forum_thalie.tsumugi.playerstore.Song
import io.r_a_d.radio2.preferenceStore import fr.forum_thalie.tsumugi.preferenceStore
import io.r_a_d.radio2.tag import fr.forum_thalie.tsumugi.tag
import org.json.JSONArray import org.json.JSONArray
import org.json.JSONException import org.json.JSONException
import org.json.JSONObject import org.json.JSONObject

View File

@ -0,0 +1,13 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="26.086956"
android:viewportHeight="26.086956"
android:tint="#FFFFFF">
<group android:translateX="1.0434783"
android:translateY="1.0434783">
<path
android:fillColor="#FF000000"
android:pathData="M3.24,6.15C2.51,6.43 2,7.17 2,8v12c0,1.1 0.89,2 2,2h16c1.11,0 2,-0.9 2,-2L22,8c0,-1.11 -0.89,-2 -2,-2L8.3,6l8.26,-3.34L15.88,1 3.24,6.15zM7,20c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM20,12h-2v-2h-2v2L4,12L4,8h16v4z"/>
</group>
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 698 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -6,6 +6,6 @@
android:viewportHeight="108" android:viewportHeight="108"
> >
<path <path
android:fillColor="@color/orange" android:fillColor="@color/colorAccent"
android:pathData="M0,0h108v108h-108z" /> android:pathData="M0,0h108v108h-108z" />
</vector> </vector>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -7,7 +7,7 @@
tools:ignore="UnusedNavigation"> tools:ignore="UnusedNavigation">
<fragment <fragment
android:id="@+id/fragment_chat" android:id="@+id/fragment_chat"
android:name="io.r_a_d.radio2.ui.chat.ChatFragment" android:name="fr.forum_thalie.tsumugi.ui.chat.ChatFragment"
android:label="@string/title_chat" android:label="@string/title_chat"
tools:layout="@layout/fragment_chat" /> tools:layout="@layout/fragment_chat" />
</navigation> </navigation>

View File

@ -7,7 +7,7 @@
tools:ignore="UnusedNavigation"> tools:ignore="UnusedNavigation">
<fragment <fragment
android:id="@+id/fragment_news" android:id="@+id/fragment_news"
android:name="io.r_a_d.radio2.ui.news.NewsFragment" android:name="fr.forum_thalie.tsumugi.ui.news.NewsFragment"
android:label="@string/title_news" android:label="@string/title_news"
tools:layout="@layout/fragment_songs" /> tools:layout="@layout/fragment_songs" />
</navigation> </navigation>

View File

@ -8,7 +8,7 @@
<fragment <fragment
android:id="@+id/fragment_nowplaying" android:id="@+id/fragment_nowplaying"
android:name="io.r_a_d.radio2.ui.nowplaying.NowPlayingFragment" android:name="fr.forum_thalie.tsumugi.ui.nowplaying.NowPlayingFragment"
android:label="@string/title_nowplaying" /> android:label="@string/title_nowplaying" />
</navigation> </navigation>

View File

@ -7,7 +7,7 @@
tools:ignore="UnusedNavigation"> tools:ignore="UnusedNavigation">
<fragment <fragment
android:id="@+id/fragment_songs" android:id="@+id/fragment_songs"
android:name="io.r_a_d.radio2.ui.songs.SongsFragment" android:name="fr.forum_thalie.tsumugi.ui.songs.SongsFragment"
android:label="@string/title_queue_lp" android:label="@string/title_queue_lp"
tools:layout="@layout/fragment_songs" /> tools:layout="@layout/fragment_songs" />
</navigation> </navigation>

View File

@ -2,7 +2,7 @@
<resources> <resources>
<color name="colorPrimary">#333333</color> <color name="colorPrimary">#333333</color>
<color name="colorPrimaryDark">#222222</color> <color name="colorPrimaryDark">#222222</color>
<color name="colorAccent">#DF4C3A</color> <color name="colorAccent">#f58b01</color>
<color name="dark">#454545</color> <color name="dark">#454545</color>
<color name="orange">#DF4C3A</color> <color name="orange">#DF4C3A</color>
<color name="whited">#DDDDDD</color> <color name="whited">#DDDDDD</color>

View File

@ -1,6 +1,6 @@
<resources> <resources>
<string name="app_name">R/a/dio2</string> <string name="app_name">Tsumugi</string>
<string name="title_nowplaying">R/a/dio</string> <string name="title_nowplaying">Tsumugi</string>
<string name="title_queue_lp">Songs</string> <string name="title_queue_lp">Songs</string>
<string name="title_chat">Chat</string> <string name="title_chat">Chat</string>
<string name="title_news">News</string> <string name="title_news">News</string>
@ -34,13 +34,13 @@
<string name="ra_f">.ra f</string> <string name="ra_f">.ra f</string>
<string name="nowPlayingNotificationChannel">R/a/dio Stream Service</string> <string name="nowPlayingNotificationChannel">R/a/dio Stream Service</string>
<string name="nowPlayingChannelId">io.r_a_d.radio2.PLAYER_SERVICE</string> <string name="nowPlayingChannelId">fr.forum_thalie.tsumugi.PLAYER_SERVICE</string>
<string name="streamerServiceChannel">Streamer Monitor Service</string> <string name="streamerServiceChannel">Streamer Monitor Service</string>
<string name="streamerServiceChannelId">io.r_a_d.radio2.STREAMER_NOTIFICATION_SERVICE</string> <string name="streamerServiceChannelId">fr.forum_thalie.tsumugi.STREAMER_NOTIFICATION_SERVICE</string>
<string name="streamerNotificationChannel">New Streamer Notification</string> <string name="streamerNotificationChannel">New Streamer Notification</string>
<string name="streamerNotificationChannelId">io.r_a_d.radio2.STREAMER_NOTIFICATION_NEW</string> <string name="streamerNotificationChannelId">fr.forum_thalie.tsumugi.STREAMER_NOTIFICATION_NEW</string>
<string name="warningStreamerNotif"> <string name="warningStreamerNotif">
This feature is EXPERIMENTAL. This feature is EXPERIMENTAL.
\nIt WILL consume your battery by polling the server regularly. \nIt WILL consume your battery by polling the server regularly.

View File

@ -8,28 +8,28 @@
app:icon="@drawable/ic_alarm" app:icon="@drawable/ic_alarm"
app:key="alarmScreen" app:key="alarmScreen"
app:title="Set up alarm clock" app:title="Set up alarm clock"
app:fragment="io.r_a_d.radio2.preferences.AlarmFragment" app:fragment="fr.forum_thalie.tsumugi.preferences.AlarmFragment"
/> />
<Preference <Preference
app:icon="@drawable/ic_av_timer" app:icon="@drawable/ic_av_timer"
app:key="sleepScreen" app:key="sleepScreen"
app:title="Set sleep timer" app:title="Set sleep timer"
app:fragment="io.r_a_d.radio2.preferences.SleepFragment" app:fragment="fr.forum_thalie.tsumugi.preferences.SleepFragment"
/> />
<Preference <Preference
app:icon="@drawable/ic_customize" app:icon="@drawable/ic_customize"
app:key="CustomizeFragment" app:key="CustomizeFragment"
app:title="Customize app behavior" app:title="Customize app behavior"
app:fragment="io.r_a_d.radio2.preferences.CustomizeFragment" app:fragment="fr.forum_thalie.tsumugi.preferences.CustomizeFragment"
/> />
<Preference <Preference
app:icon="@drawable/ic_notification" app:icon="@drawable/ic_notification"
app:key="streamerNotifServiceFragment" app:key="streamerNotifServiceFragment"
app:title="Streamer Notification Service" app:title="Streamer Notification Service"
app:fragment="io.r_a_d.radio2.preferences.StreamerNotifServiceFragment" app:fragment="fr.forum_thalie.tsumugi.preferences.StreamerNotifServiceFragment"
/> />
<Preference <Preference

View File

@ -1,4 +1,4 @@
package io.r_a_d.radio2 package fr.forum_thalie.tsumugi
import org.junit.Test import org.junit.Test

View File

@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules. // Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript { buildscript {
ext.kotlin_version = '1.3.60' ext.kotlin_version = '1.3.61'
repositories { repositories {
google() google()
jcenter() jcenter()