瀏覽代碼

removed specific R/a/dio stuff

yattoz 4 年之前
父節點
當前提交
6db17ee8ad

+ 0 - 1
app/src/main/java/fr/forum_thalie/tsumugi/Actions.kt 查看文件

@@ -23,5 +23,4 @@ enum class ActionOpenParam {
23 23
     SLEEP,
24 24
     ALARM,
25 25
     CUSTOMIZE,
26
-    STREAMER_NOTIFICATION_SERVICE
27 26
 }

+ 1 - 0
app/src/main/java/fr/forum_thalie/tsumugi/Async.kt 查看文件

@@ -23,6 +23,7 @@ class Async(val handler: (Any?) -> Any?, val post: (Any?) -> Unit = {},
23 23
             ActionOnError.RESET -> resetPlayerStateOnNetworkError()
24 24
             ActionOnError.NOTIFY -> return
25 25
         }
26
+        e.printStackTrace()
26 27
     }
27 28
 
28 29
     private fun resetPlayerStateOnNetworkError() {

+ 1 - 1
app/src/main/java/fr/forum_thalie/tsumugi/BaseNotification.kt 查看文件

@@ -23,7 +23,7 @@ abstract class BaseNotification(private val notificationChannelId: String,
23 23
 
24 24
     // Define the notification in android's swipe-down menu
25 25
     lateinit var notification: Notification
26
-    protected lateinit var notificationManager: NotificationManager
26
+    private lateinit var notificationManager: NotificationManager
27 27
     protected lateinit var builder: NotificationCompat.Builder
28 28
 
29 29
     @RequiresApi(api = Build.VERSION_CODES.O)

+ 1 - 2
app/src/main/java/fr/forum_thalie/tsumugi/NowPlayingNotification.kt 查看文件

@@ -7,7 +7,6 @@ import android.support.v4.media.session.MediaSessionCompat
7 7
 import android.support.v4.media.session.PlaybackStateCompat
8 8
 import androidx.core.app.NotificationCompat
9 9
 import fr.forum_thalie.tsumugi.playerstore.PlayerStore
10
-import fr.forum_thalie.tsumugi.BootBroadcastReceiver
11 10
 
12 11
 class NowPlayingNotification(
13 12
     notificationChannelId: String,
@@ -27,7 +26,7 @@ class NowPlayingNotification(
27 26
     // ###### NOW PLAYING NOTIFICATION ########
28 27
     // ########################################
29 28
 
30
-    lateinit var mediaStyle: androidx.media.app.NotificationCompat.DecoratedMediaCustomViewStyle
29
+    private lateinit var mediaStyle: androidx.media.app.NotificationCompat.DecoratedMediaCustomViewStyle
31 30
 
32 31
     fun create(c: Context, m: MediaSessionCompat) {
33 32
         super.create(c)

+ 0 - 2
app/src/main/java/fr/forum_thalie/tsumugi/Tickers.kt 查看文件

@@ -1,7 +1,5 @@
1 1
 package fr.forum_thalie.tsumugi
2 2
 
3
-import android.support.v4.media.session.PlaybackStateCompat
4
-import fr.forum_thalie.tsumugi.alarm.RadioSleeper
5 3
 import fr.forum_thalie.tsumugi.playerstore.PlayerStore
6 4
 import java.util.*
7 5
 

+ 2 - 2
app/src/main/java/fr/forum_thalie/tsumugi/ui/news/NewsFragment.kt 查看文件

@@ -33,12 +33,12 @@ class NewsFragment : Fragment() {
33 33
             if (!newsViewModel.isWebViewLoaded)
34 34
             {
35 35
                 try {
36
-                    newsViewModel.root = inflater.inflate(R.layout.fragment_chat, container, false)
36
+                    newsViewModel.root = inflater.inflate(R.layout.fragment_news, container, false)
37 37
                     newsViewModel.webView = newsViewModel.root.findViewById(R.id.news_webview)
38 38
                     newsViewModel.webViewNews = WebViewNews(newsViewModel.webView as WebView)
39 39
                     newsViewModel.webViewNews!!.start()
40 40
                 } catch (e: Exception) {
41
-                    newsViewModel.root = inflater.inflate(R.layout.fragment_error_chat, container, false)
41
+                    newsViewModel.root = inflater.inflate(R.layout.fragment_error_webview, container, false)
42 42
                 }
43 43
 
44 44
                 newsViewModel.isWebViewLoaded = true

+ 24 - 32
app/src/main/java/fr/forum_thalie/tsumugi/ui/nowplaying/NowPlayingFragment.kt 查看文件

@@ -46,25 +46,44 @@ class NowPlayingFragment : Fragment() {
46 46
         val seekBarVolume: SeekBar = root.findViewById(R.id.seek_bar_volume)
47 47
         val volumeText: TextView = root.findViewById(R.id.volume_text)
48 48
         val progressBar: ProgressBar = root.findViewById(R.id.progressBar)
49
+        val volumeIconImage : ImageView = root.findViewById(R.id.volume_icon)
50
+
51
+        // Note: these values are not used in the generic app
49 52
         val streamerPictureImageView: ImageView = root.findViewById(R.id.streamerPicture)
53
+        /*
50 54
         val streamerNameText : TextView = root.findViewById(R.id.streamerName)
51 55
         val songTitleNextText: TextView = root.findViewById(R.id.text_song_title_next)
52 56
         val songArtistNextText: TextView = root.findViewById(R.id.text_song_artist_next)
53
-        val volumeIconImage : ImageView = root.findViewById(R.id.volume_icon)
54 57
         val listenersText : TextView = root.findViewById(R.id.listenersCount)
58
+         */
55 59
 
56 60
 
61
+        /*
57 62
         TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(
58 63
             streamerNameText,8, 20, 2, TypedValue.COMPLEX_UNIT_SP)
59 64
         TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(
60 65
             listenersText,8, 16, 2, TypedValue.COMPLEX_UNIT_SP)
66
+         */
67
+
61 68
         /*
62
-        TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(
63
-            songTitleText,4, 24, 2, TypedValue.COMPLEX_UNIT_SP)
64
-        TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(
65
-            songArtistText,4, 24, 2, TypedValue.COMPLEX_UNIT_SP)
69
+        // trick : I can't observe the queue because it's an ArrayDeque that doesn't trigger any change...
70
+        // so I observe a dedicated Mutable that gets set when the queue is updated.
71
+        PlayerStore.instance.isQueueUpdated.observe(viewLifecycleOwner, Observer {
72
+            val t = if (PlayerStore.instance.queue.size > 0) PlayerStore.instance.queue[0] else Song("No queue - ") // (it.peekFirst != null ? it.peekFirst : Song() )
73
+            songTitleNextText.text = t.title.value
74
+            songArtistNextText.text = t.artist.value
75
+        })
76
+
77
+        PlayerStore.instance.streamerName.observe(viewLifecycleOwner, Observer {
78
+            streamerNameText.text = it
79
+        })
80
+
81
+        PlayerStore.instance.listenersCount.observe(viewLifecycleOwner, Observer {
82
+            listenersText.text = "${getString(R.string.listeners)}: $it"
83
+        })
66 84
          */
67 85
 
86
+
68 87
         PlayerStore.instance.currentSong.title.observe(viewLifecycleOwner, Observer {
69 88
                 songTitleText.text = it
70 89
         })
@@ -77,13 +96,6 @@ class NowPlayingFragment : Fragment() {
77 96
             syncPlayPauseButtonImage(root)
78 97
         })
79 98
 
80
-        // trick : I can't observe the queue because it's an ArrayDeque that doesn't trigger any change...
81
-        // so I observe a dedicated Mutable that gets set when the queue is updated.
82
-        PlayerStore.instance.isQueueUpdated.observe(viewLifecycleOwner, Observer {
83
-            val t = if (PlayerStore.instance.queue.size > 0) PlayerStore.instance.queue[0] else Song("No queue - ") // (it.peekFirst != null ? it.peekFirst : Song() )
84
-            songTitleNextText.text = t.title.value
85
-            songArtistNextText.text = t.artist.value
86
-        })
87 99
 
88 100
         fun volumeIcon(it: Int)
89 101
         {
@@ -113,14 +125,6 @@ class NowPlayingFragment : Fragment() {
113 125
             streamerPictureImageView.setImageBitmap(pic)
114 126
         })
115 127
 
116
-        PlayerStore.instance.streamerName.observe(viewLifecycleOwner, Observer {
117
-            streamerNameText.text = it
118
-        })
119
-
120
-        PlayerStore.instance.listenersCount.observe(viewLifecycleOwner, Observer {
121
-            listenersText.text = "${getString(R.string.listeners)}: $it"
122
-        })
123
-
124 128
         // fuck it, do it on main thread
125 129
         PlayerStore.instance.currentTime.observe(viewLifecycleOwner, Observer {
126 130
             val dd = (PlayerStore.instance.currentTime.value!! - PlayerStore.instance.currentSong.startTime.value!!).toInt()
@@ -173,18 +177,6 @@ class NowPlayingFragment : Fragment() {
173 177
             PlayerStore.instance.isPlaying.value = PlayerStore.instance.playbackState.value == PlaybackStateCompat.STATE_STOPPED
174 178
         }
175 179
 
176
-        /*
177
-            /* TODO : disabled volumeIconImage click listener, it creates weird behaviors when switching fragments.
178
-                in particular, the mute state isn't retained when switching fragments, and it creates visual error
179
-                (displaying the mute icon when it's not muted).
180
-                So for the moment it's safer to disable it altogether.
181
-             */
182
-        volumeIconImage.setOnClickListener{
183
-            PlayerStore.instance.isMuted.value = !PlayerStore.instance.isMuted.value!!
184
-        }
185
-
186
-         */
187
-
188 180
         val setClipboardListener: View.OnLongClickListener = View.OnLongClickListener {
189 181
             val text = PlayerStore.instance.currentSong.artist.value + " - " + PlayerStore.instance.currentSong.title.value
190 182
             val clipboard = context!!.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager

+ 1 - 1
app/src/main/java/fr/forum_thalie/tsumugi/ui/songs/SongsFragment.kt 查看文件

@@ -29,7 +29,7 @@ class SongsFragment : Fragment() {
29 29
         adapter = SongsPagerAdapter(childFragmentManager, FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT)
30 30
         adapter.addFragment(LastPlayedFragment.newInstance(), "last played")
31 31
 
32
-        //adapter.addFragment(QueueFragment.newInstance(), "queue")
32
+        // You can add more fragments to the adapter, to display more information (for example with R/a/dio, queue, request, faves...)
33 33
 
34 34
         viewPager.adapter = adapter
35 35
 

+ 0 - 21
app/src/main/res/layout/button_load_more.xml 查看文件

@@ -1,21 +0,0 @@
1
-<?xml version="1.0" encoding="utf-8"?>
2
-<androidx.constraintlayout.widget.ConstraintLayout
3
-    xmlns:android="http://schemas.android.com/apk/res/android"
4
-    xmlns:app="http://schemas.android.com/apk/res-auto"
5
-
6
-    android:layout_width="match_parent"
7
-    android:layout_height="wrap_content"
8
-    >
9
-
10
-    <Button
11
-        android:id="@+id/loadMoreButton"
12
-        android:layout_width="wrap_content"
13
-        android:layout_height="wrap_content"
14
-        app:layout_constraintBottom_toBottomOf="parent"
15
-        app:layout_constraintStart_toStartOf="parent"
16
-        app:layout_constraintEnd_toEndOf="parent"
17
-        android:text="@string/load_more_results"
18
-        android:visibility="gone"
19
-        />
20
-
21
-</androidx.constraintlayout.widget.ConstraintLayout>

+ 0 - 42
app/src/main/res/layout/fragment_chat.xml 查看文件

@@ -1,42 +0,0 @@
1
-<?xml version="1.0" encoding="utf-8"?>
2
-<!--
3
-<androidx.constraintlayout.widget.ConstraintLayout
4
-    xmlns:android="http://schemas.android.com/apk/res/android"
5
-    xmlns:app="http://schemas.android.com/apk/res-auto"
6
-    android:layout_width="match_parent"
7
-    android:layout_height="match_parent" >
8
-
9
-    <TextView
10
-        android:id="@+id/text_notifications"
11
-        android:layout_width="match_parent"
12
-        android:layout_height="wrap_content"
13
-        android:layout_marginStart="8dp"
14
-        android:layout_marginTop="8dp"
15
-        android:layout_marginEnd="8dp"
16
-        android:textAlignment="center"
17
-        android:textSize="20sp"
18
-        app:layout_constraintEnd_toEndOf="parent"
19
-        app:layout_constraintStart_toStartOf="parent"
20
-        app:layout_constraintTop_toTopOf="parent"/>
21
-</androidx.constraintlayout.widget.ConstraintLayout>
22
--->
23
-
24
-<androidx.coordinatorlayout.widget.CoordinatorLayout
25
-xmlns:android="http://schemas.android.com/apk/res/android"
26
-xmlns:app="http://schemas.android.com/apk/res-auto"
27
-android:layout_width="match_parent"
28
-android:layout_height="match_parent"
29
->
30
-
31
-<!--
32
-Yattoz - this is a simple embedded WebView to display KiwiIRC in the app.
33
-KiwiIRC is a decent IRC, but the website is clunky and you must scroll a lot.
34
-This WebView is just the size of the screen, to make it practical.
35
--->
36
-
37
-<WebView
38
-    android:id="@+id/news_webview"
39
-    android:layout_width="match_parent"
40
-    android:layout_height="match_parent" />
41
-
42
-</androidx.coordinatorlayout.widget.CoordinatorLayout>

+ 0 - 20
app/src/main/res/layout/fragment_error_chat.xml 查看文件

@@ -1,20 +0,0 @@
1
-<?xml version="1.0" encoding="utf-8"?>
2
-<androidx.constraintlayout.widget.ConstraintLayout
3
-    xmlns:android="http://schemas.android.com/apk/res/android"
4
-    xmlns:app="http://schemas.android.com/apk/res-auto"
5
-    xmlns:tools="http://schemas.android.com/tools"
6
-    android:layout_width="match_parent"
7
-    android:layout_height="match_parent">
8
-
9
-    <TextView
10
-        android:id="@+id/textView"
11
-        android:layout_width="wrap_content"
12
-        android:layout_height="wrap_content"
13
-        android:text="@string/error_webView"
14
-        android:textSize="40sp"
15
-        android:gravity="center"
16
-        app:layout_constraintBottom_toBottomOf="parent"
17
-        app:layout_constraintEnd_toEndOf="parent"
18
-        app:layout_constraintStart_toStartOf="parent"
19
-        app:layout_constraintTop_toTopOf="parent" />
20
-</androidx.constraintlayout.widget.ConstraintLayout>

+ 0 - 72
app/src/main/res/layout/fragment_request.xml 查看文件

@@ -1,72 +0,0 @@
1
-<?xml version="1.0" encoding="utf-8"?>
2
-
3
-    <androidx.constraintlayout.widget.ConstraintLayout
4
-        android:orientation="vertical"
5
-        android:layout_width="match_parent"
6
-        android:layout_height="match_parent"
7
-        android:id="@+id/searchConstraint"
8
-        xmlns:android="http://schemas.android.com/apk/res/android"
9
-        xmlns:app="http://schemas.android.com/apk/res-auto"
10
-        >
11
-
12
-        <androidx.constraintlayout.widget.ConstraintLayout
13
-            android:layout_width="match_parent"
14
-            android:layout_height="wrap_content"
15
-            app:layout_constraintTop_toTopOf="parent"
16
-            android:background="@color/dark"
17
-            android:id="@+id/search"
18
-            android:padding="4dp">
19
-            <SearchView
20
-                android:id="@+id/searchBox"
21
-                android:layout_width="0dp"
22
-                android:layout_height="wrap_content"
23
-                app:layout_constraintTop_toTopOf="parent"
24
-                app:layout_constraintStart_toStartOf="parent"
25
-                app:layout_constraintEnd_toStartOf="@id/ra_f_button"
26
-                android:iconifiedByDefault="false"
27
-                android:queryHint="Search for a song..."
28
-                />
29
-
30
-            <androidx.appcompat.widget.AppCompatButton
31
-                android:id="@+id/ra_f_button"
32
-                android:layout_width="wrap_content"
33
-                android:layout_height="wrap_content"
34
-                app:layout_constraintTop_toTopOf="parent"
35
-                app:layout_constraintEnd_toEndOf="parent"
36
-                android:text="@string/ra_f"
37
-                android:visibility="gone"
38
-                />
39
-        </androidx.constraintlayout.widget.ConstraintLayout>
40
-
41
-        <TextView
42
-            android:id="@+id/noUserNameText"
43
-            android:layout_width="match_parent"
44
-            android:layout_height="wrap_content"
45
-            android:text="@string/no_user_name"
46
-            android:gravity="center"
47
-            android:textSize="16sp"
48
-            android:visibility="gone"
49
-            android:layout_margin="16dp"
50
-            app:layout_constraintTop_toBottomOf="@id/search"
51
-            />
52
-    <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
53
-        android:id="@+id/recyclerSwipe"
54
-        android:layout_width="match_parent"
55
-        android:layout_height="0dp"
56
-        app:layout_constraintTop_toBottomOf="@id/search"
57
-        app:layout_constraintBottom_toBottomOf="parent"
58
-        android:layout_margin="8dp"
59
-        >
60
-        <androidx.recyclerview.widget.RecyclerView
61
-            android:layout_width="match_parent"
62
-            android:layout_height="match_parent"
63
-            android:id="@+id/request_recycler"
64
-            android:scrollbars="vertical"
65
-            >
66
-
67
-        </androidx.recyclerview.widget.RecyclerView>
68
-    </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
69
-
70
-
71
-</androidx.constraintlayout.widget.ConstraintLayout>
72
-

+ 0 - 72
app/src/main/res/layout/request_song_view.xml 查看文件

@@ -1,72 +0,0 @@
1
-<?xml version="1.0" encoding="utf-8"?>
2
-<androidx.constraintlayout.widget.ConstraintLayout
3
-    xmlns:android="http://schemas.android.com/apk/res/android"
4
-    android:layout_width="match_parent"
5
-    android:layout_height="wrap_content"
6
-    xmlns:app="http://schemas.android.com/apk/res-auto"
7
-    android:id="@+id/itemLayout">
8
-
9
-    <androidx.constraintlayout.widget.ConstraintLayout
10
-        android:layout_width="match_parent"
11
-        android:layout_height="wrap_content"
12
-        app:layout_constraintTop_toTopOf="parent"
13
-        android:layout_marginLeft="0dp"
14
-        android:layout_marginRight="0dp"
15
-        android:id="@+id/item"
16
-        >
17
-        <TextView
18
-            android:id="@+id/request_song_artist"
19
-            android:layout_width="0dp"
20
-            android:layout_height="wrap_content"
21
-            android:layout_marginEnd="8dp"
22
-            android:layout_marginRight="8dp"
23
-            app:layout_constraintTop_toTopOf="parent"
24
-            app:layout_constraintEnd_toStartOf="@+id/request_button"
25
-            app:layout_constraintStart_toStartOf="parent"
26
-            app:layout_constraintBottom_toTopOf="@id/request_song_title"
27
-            android:textSize="16sp"
28
-            android:textColor="@color/whited3"
29
-            />
30
-
31
-        <TextView
32
-            android:id="@+id/request_song_title"
33
-            android:layout_width="0dp"
34
-            android:layout_height="wrap_content"
35
-            android:textColor="@color/whited"
36
-            android:textSize="16sp"
37
-            android:layout_marginEnd="8dp"
38
-            android:layout_marginRight="8dp"
39
-            app:layout_constraintBottom_toBottomOf="parent"
40
-            app:layout_constraintEnd_toStartOf="@+id/request_button"
41
-            app:layout_constraintStart_toStartOf="parent"
42
-            app:layout_constraintTop_toBottomOf="@id/request_song_artist" />
43
-        <androidx.appcompat.widget.AppCompatButton
44
-            android:id="@+id/request_button"
45
-            android:layout_width="wrap_content"
46
-            android:layout_height="56dp"
47
-            app:layout_constraintTop_toTopOf="parent"
48
-            app:layout_constraintBottom_toBottomOf="parent"
49
-            app:layout_constraintEnd_toEndOf="parent"
50
-            android:text="@string/request"
51
-            android:textSize="12sp"
52
-            />
53
-
54
-    </androidx.constraintlayout.widget.ConstraintLayout>
55
-
56
-    <View
57
-        android:id="@+id/divider"
58
-        android:layout_width="match_parent"
59
-        android:layout_height="1dp"
60
-        android:background="?android:attr/listDivider"
61
-        app:layout_constraintTop_toBottomOf="@id/item"
62
-        app:layout_constraintStart_toStartOf="parent"
63
-        app:layout_constraintBottom_toBottomOf="parent"
64
-        app:layout_constraintEnd_toEndOf="parent"
65
-        android:layout_marginTop="8dp"
66
-        />
67
-
68
-
69
-
70
-
71
-
72
-</androidx.constraintlayout.widget.ConstraintLayout>

+ 0 - 30
app/src/main/res/values/arrays.xml 查看文件

@@ -1,21 +1,5 @@
1 1
 <?xml version="1.0" encoding="utf-8"?>
2 2
 <resources>
3
-    <string-array name="streamerFetchPeriodString">
4
-        <item name="5">"Every 5 minutes"</item>
5
-        <item name="10">"Every 10 minutes"</item>
6
-        <item name="15">"Every 15 minutes"</item>
7
-        <item name="20">"Every 20 minutes"</item>
8
-        <item name="25">"Every 25 minutes"</item>
9
-        <item name="30">"Every 30 minutes"</item>
10
-    </string-array>
11
-    <string-array name="streamerFetchPeriod">
12
-        <item name="5">5</item>
13
-        <item name="10">10</item>
14
-        <item name="15">15</item>
15
-        <item name="20">20</item>
16
-        <item name="25">25</item>
17
-        <item name="30">30</item>
18
-    </string-array>
19 3
 
20 4
     <string-array name="weekdays">
21 5
         <item name="monday">Monday</item>
@@ -37,19 +21,5 @@
37 21
         <item name="25">25</item>
38 22
         <item name="30">30</item>
39 23
     </string-array>
40
-    <string-array name="fetchPeriodString">
41
-        <item name="5">Every 5 seconds (faster update)</item>
42
-        <item name="10">Every 10 seconds</item>
43
-        <item name="15">Every 15 seconds</item>
44
-        <item name="20">Every 20 seconds</item>
45
-        <item name="30">Every 30 seconds (less battery-intensive)</item>
46
-    </string-array>
47
-    <string-array name="fetchPeriodValues">
48
-        <item name="5">5</item>
49
-        <item name="10">10</item>
50
-        <item name="15">15</item>
51
-        <item name="20">20</item>
52
-        <item name="30">30</item>
53
-    </string-array>
54 24
 
55 25
 </resources>

+ 1 - 28
app/src/main/res/values/strings.xml 查看文件

@@ -7,12 +7,6 @@
7 7
 
8 8
     <string name="now_playing_notification_title_template">Now playing: %1$s</string>
9 9
 
10
-
11
-    <string name="action_share">Share</string>
12
-    <string name="action_reply">Reply</string>
13
-
14
-    <string name="new_message_notification_title_template">New message: %1$s</string>
15
-
16 10
     <string name="MEDIA_ROOT_ID">radio_root_id</string>
17 11
     <string name="STREAM_URL_RADIO">https://relay0.r-a-d.io/main.mp3</string>
18 12
     <string name="STREAM_URL_TSUMUGI">http://shelter.mahoro-net.org:8000/tsumugi</string>
@@ -24,29 +18,13 @@
24 18
     <string name="up_next">Up next:</string>
25 19
     <string name="now_streaming">Now streaming</string>
26 20
     <string name="error_webView">Error loading WebView. Try downloading Google Chrome on Google Play, or enabling it if you disabled it.</string>
27
-    <string name="load_more_results">Load more results</string>
28
-    <string name="request">request</string>
29 21
     <string name="action_settings">Settings</string>
30
-    <string name="action_refresh">Force data refresh</string>
31 22
     <string name="action_bug_submit">Submit a bug (GitHub)</string>
32 23
     <string name="github_url_new_issue">https://github.com/yattoz/Tsumugi-app/issues/</string>
33
-    <string name="no_user_name">To display your favorite, set you IRC user name in Settings → Customize app behavior.</string>
34
-    <string name="ra_f">.ra f</string>
35 24
 
36 25
     <string name="nowPlayingNotificationChannel">R/a/dio Stream Service</string>
37 26
     <string name="nowPlayingChannelId">fr.forum_thalie.tsumugi.PLAYER_SERVICE</string>
38 27
 
39
-    <string name="streamerServiceChannel">Streamer Monitor Service</string>
40
-    <string name="streamerServiceChannelId">fr.forum_thalie.tsumugi.STREAMER_NOTIFICATION_SERVICE</string>
41
-
42
-    <string name="streamerNotificationChannel">New Streamer Notification</string>
43
-    <string name="streamerNotificationChannelId">fr.forum_thalie.tsumugi.STREAMER_NOTIFICATION_NEW</string>
44
-    <string name="warningStreamerNotif">
45
-        This feature is EXPERIMENTAL.
46
-        \nIt WILL consume your battery by polling the server regularly.
47
-        \nUsing Twitter Push Notifications instead is largely recommended.
48
-        \nThis polling should only be considered as the last resort for people not wanting to register on Twitter or phones without Google Play services.\n
49
-        \n\nAre you sure you want to enable this?</string>
50 28
     <string name="snackbarPersistent">Stay visible, can be closed with \"OK\" button</string>
51 29
     <string name="snackbarNonPersistent">Disappear after some time</string>
52 30
     <string name="every_day">Every day</string>
@@ -57,16 +35,11 @@
57 35
     <string name="split_layout">Split Now Playing screen in 2 blocks when device is horizontal</string>
58 36
     <string name="not_split_layout">Keep the same layout when horizontal as in vertical</string>
59 37
     <string name="action_sleep">Sleep timer</string>
60
-    <string name="github_url_wiki_irc_for_favorites">https://github.com/yattoz/Radio2/wiki/Help:-using-favorites-with-IRC</string>
61 38
     <string name="dont_fetch_on_background">Disable</string>
62 39
     <string name="restart_the_app">You need to restart the app to apply the changes for this setting.</string>
63
-    <string name="fetch_disabled_restart_the_app">
64
-        By disabling this, you won\'t see the song get updated in the app nor in the notification when the playback is stopped, but you may save some battery.
65
-        \n\nYou need to restart the app to apply the changes for this setting.
66
-    </string>
40
+
67 41
     <string name="action_alarm">Alarm</string>
68 42
     <string name="sleep_fade_out_text">One minute before the end of the timer, the volume will gradually decrease.</string>
69 43
     <string name="disable">Disable</string>
70
-    <string name="ed">ed</string>
71 44
 
72 45
 </resources>