Browse Source

Andr0id app: Added Samsung TV rem0te, changed some button texts to icons, consistent/betturd background c0l0ur for groups

Wazakindjes 1 year ago
parent
commit
33eeba80d3
80 changed files with 1093 additions and 46 deletions
  1. BIN
      app/rem0t0.apk
  2. 16 1
      app/src/app_rem0t0/src/main/java/com/jemoeder/lief/rem0t0/MainActivity.java
  3. 1 1
      app/src/app_rem0t0/src/main/res/anim/down_in.xml
  4. 1 1
      app/src/app_rem0t0/src/main/res/anim/down_out.xml
  5. 1 1
      app/src/app_rem0t0/src/main/res/anim/left_in.xml
  6. 1 1
      app/src/app_rem0t0/src/main/res/anim/left_out.xml
  7. 1 1
      app/src/app_rem0t0/src/main/res/anim/right_in.xml
  8. 1 1
      app/src/app_rem0t0/src/main/res/anim/right_out.xml
  9. 1 1
      app/src/app_rem0t0/src/main/res/anim/up_in.xml
  10. 1 1
      app/src/app_rem0t0/src/main/res/anim/up_out.xml
  11. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_arrowleft.png
  12. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_arrowright.png
  13. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_enter.png
  14. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_mute.png
  15. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_pause.png
  16. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_play.png
  17. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_playpause.png
  18. BIN
      app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_power.png
  19. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_arrowleft.png
  20. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_arrowright.png
  21. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_enter.png
  22. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_mute.png
  23. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_pause.png
  24. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_play.png
  25. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_playpause.png
  26. BIN
      app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_power.png
  27. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_arrowleft.png
  28. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_arrowright.png
  29. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_enter.png
  30. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_mute.png
  31. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_pause.png
  32. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_play.png
  33. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_playpause.png
  34. BIN
      app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_power.png
  35. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_arrowleft.png
  36. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_arrowright.png
  37. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_enter.png
  38. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_mute.png
  39. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_pause.png
  40. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_play.png
  41. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_playpause.png
  42. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_power.png
  43. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_arrowleft.png
  44. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_arrowright.png
  45. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_enter.png
  46. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_mute.png
  47. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_pause.png
  48. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_play.png
  49. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_playpause.png
  50. BIN
      app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_power.png
  51. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_arrowleft.xml
  52. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_arrowright.xml
  53. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_enter.xml
  54. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_mute.xml
  55. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_pause.xml
  56. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_play.xml
  57. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_playpause.xml
  58. 7 0
      app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_power.xml
  59. 2 2
      app/src/app_rem0t0/src/main/res/drawable/roundcorners.xml
  60. 1 1
      app/src/app_rem0t0/src/main/res/layout/muhactionbar.xml
  61. 2 0
      app/src/app_rem0t0/src/main/res/layout/rem0t0_ledstrip.xml
  62. 71 25
      app/src/app_rem0t0/src/main/res/layout/rem0t0_stereo.xml
  63. 865 0
      app/src/app_rem0t0/src/main/res/layout/rem0t0_tv.xml
  64. 19 2
      app/src/app_rem0t0/src/main/res/values/colors.xml
  65. 8 2
      app/src/app_rem0t0/src/main/res/values/dimens.xml
  66. 38 3
      app/src/app_rem0t0/src/main/res/values/strings.xml
  67. 5 0
      app/src/app_rem0t0/src/main/res/xml/preferences.xml
  68. 2 2
      app/src/app_rem0t0/version.properties
  69. BIN
      ass/icinz/ic_rem0t0_arrowleft.png
  70. BIN
      ass/icinz/ic_rem0t0_arrowright.png
  71. BIN
      ass/icinz/ic_rem0t0_enter.png
  72. BIN
      ass/icinz/ic_rem0t0_mute.png
  73. BIN
      ass/icinz/ic_rem0t0_pause.png
  74. BIN
      ass/icinz/ic_rem0t0_play.png
  75. BIN
      ass/icinz/ic_rem0t0_playpause.png
  76. BIN
      ass/icinz/ic_rem0t0_power.png
  77. BIN
      ass/scr0t_hdmi.png
  78. BIN
      ass/scr0t_led.png
  79. BIN
      ass/scr0t_stereo.png
  80. BIN
      ass/scr0t_tv.png

BIN
app/rem0t0.apk


+ 16 - 1
app/src/app_rem0t0/src/main/java/com/jemoeder/lief/rem0t0/MainActivity.java

@@ -93,10 +93,12 @@ public class MainActivity extends AppCompatActivity {
 	private static String txt_ledstrip = null;
 	private static String txt_hdmiswitch = null;
 	private static String txt_stereo = null;
+	private static String txt_tv = null;
 	private static String cmdsign = null;
 	private static String cmdprefix_ledstrip = null;
 	private static String cmdprefix_hdmiswitch = null;
 	private static String cmdprefix_stereo = null;
+	private static String cmdprefix_tv = null;
 	private static String cmdsuffix_hold = null;
 	private static String cmdsuffix_holdstop = null;
 	private static final int vibems_tap = 50;
@@ -141,10 +143,12 @@ public class MainActivity extends AppCompatActivity {
 		txt_ledstrip = muhres.getString(R.string.prefs_rem0t0_ledstrip);
 		txt_hdmiswitch = muhres.getString(R.string.prefs_rem0t0_hdmiswitch);
 		txt_stereo = muhres.getString(R.string.prefs_rem0t0_stereo);
+		txt_tv = muhres.getString(R.string.prefs_rem0t0_tv);
 		cmdsign = muhres.getString(R.string.rem0t0_cmdsign);
 		cmdprefix_ledstrip = muhres.getString(R.string.rem0t0_cmdprefix_led);
 		cmdprefix_hdmiswitch = muhres.getString(R.string.rem0t0_cmdprefix_hdmi);
 		cmdprefix_stereo = muhres.getString(R.string.rem0t0_cmdprefix_stereo);
+		cmdprefix_tv = muhres.getString(R.string.rem0t0_cmdprefix_tv);
 		cmdsuffix_hold = muhres.getString(R.string.rem0t0_cmdsuffix_hold);
 		cmdsuffix_holdstop = muhres.getString(R.string.rem0t0_cmdsuffix_holdstop);
 		ab_col_rip = ContextCompat.getColor(muhctx, R.color.RIP);
@@ -272,6 +276,10 @@ public class MainActivity extends AppCompatActivity {
 			tabberin0.addTab(tabberin0.newTab().setText(txt_stereo));
 			demtabs.put(tabnum++, txt_stereo);
 		}
+		if(wrapass.muhprefs.getBoolean("prefs_rem0t0_tv", true)) {
+			tabberin0.addTab(tabberin0.newTab().setText(txt_tv));
+			demtabs.put(tabnum++, txt_tv);
+		}
 		final PagerAdapter adapter = new rem0t0PagerAdapter(getSupportFragmentManager(), tabnum);
 		viewPager.setAdapter(adapter);
 
@@ -469,6 +477,10 @@ public class MainActivity extends AppCompatActivity {
 					layout_id = R.layout.rem0t0_stereo;
 					cmdbase = cmdprefix_stereo;
 				}
+				else if(txt.equals(txt_tv)) {
+					layout_id = R.layout.rem0t0_tv;
+					cmdbase = cmdprefix_tv;
+				}
 			} catch(Exception fuckoff) { /* No flying fucks given */ }
 
 			muhmain = (MainActivity)getActivity();
@@ -492,7 +504,10 @@ public class MainActivity extends AppCompatActivity {
 					v.setOnTouchListener(new rem0t0TouchListener(pos, cmdbase_signed));
 				if(v instanceof TextView) {
 					final TextView tv = (TextView)v;
-					final String n0pref_name = "n0pref_" + cmdbase + "_" + tv.getTag().toString();
+					Object muhtag = tv.getTag();
+					if(muhtag == null)
+						continue;
+					final String n0pref_name = "n0pref_" + cmdbase + "_" + muhtag.toString();
 					String curtxt = wrapass.muhprefs.getString(n0pref_name, null);
 					if(curtxt != null)
 						tv.setText(curtxt);

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/down_in.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromYDelta="-100%p"
         android:toYDelta="0"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/down_out.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromYDelta="0"
         android:toYDelta="100%p"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/left_in.xml

@@ -3,5 +3,5 @@
     <translate
         android:fromXDelta="100%p"
         android:toXDelta="0"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/left_out.xml

@@ -3,5 +3,5 @@
     <translate
         android:fromXDelta="0"
         android:toXDelta="-100%p"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/right_in.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromXDelta="0"
         android:toXDelta="100%p"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/right_out.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromXDelta="-100%p"
         android:toXDelta="0"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/up_in.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromYDelta="100%p"
         android:toYDelta="0"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

+ 1 - 1
app/src/app_rem0t0/src/main/res/anim/up_out.xml

@@ -5,5 +5,5 @@
     <translate
         android:fromYDelta="0"
         android:toYDelta="-100%p"
-        android:duration="200"/>
+        android:duration="200" />
 </set>

BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_arrowleft.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_arrowright.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_enter.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_mute.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_pause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_play.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_playpause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-hdpi/ic_rem0t0_power.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_arrowleft.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_arrowright.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_enter.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_mute.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_pause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_play.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_playpause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-mdpi/ic_rem0t0_power.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_arrowleft.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_arrowright.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_enter.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_mute.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_pause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_play.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_playpause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xhdpi/ic_rem0t0_power.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_arrowleft.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_arrowright.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_enter.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_mute.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_pause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_play.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_playpause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxhdpi/ic_rem0t0_power.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_arrowleft.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_arrowright.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_enter.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_mute.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_pause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_play.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_playpause.png


BIN
app/src/app_rem0t0/src/main/res/drawable-xxxhdpi/ic_rem0t0_power.png


+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_arrowleft.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_arrowleft"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_arrowright.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_arrowright"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_enter.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_enter"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_mute.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_mute"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_pause.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_pause"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_play.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_play"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_playpause.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_playpause"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 7 - 0
app/src/app_rem0t0/src/main/res/drawable/drw_rem0t0_power.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
+	<item
+		android:drawable="@drawable/ic_rem0t0_power"
+		android:width="@dimen/rem0t0_btn_iconsize"
+		android:height="@dimen/rem0t0_btn_iconsize" />
+</layer-list >

+ 2 - 2
app/src/app_rem0t0/src/main/res/drawable/roundcorners.xml

@@ -9,7 +9,7 @@
 	<item>
 		<shape android:shape="rectangle">
 			<corners android:radius="@dimen/rem0t0_btn_cornerradius" />
-			<stroke android:color="@color/rem0t0_btn_stroke" android:width="@dimen/rem0t0_btn_stroke"/>
+			<stroke android:color="@color/rem0t0_btn_stroke" android:width="@dimen/rem0t0_btn_stroke" />
 		</shape>
 	</item>
 	<item
@@ -19,7 +19,7 @@
 		android:right="@dimen/rem0t0_btn_stroke">
 		<shape android:shape="rectangle">
 			<corners android:radius="@dimen/rem0t0_btn_cornerradius" />
-			<stroke android:color="@color/rem0t0_btn_stroke_dark" android:width="@dimen/rem0t0_btn_stroke"/>
+			<stroke android:color="@color/rem0t0_btn_stroke_dark" android:width="@dimen/rem0t0_btn_stroke" />
 		</shape>
 	</item>
 </ripple>

+ 1 - 1
app/src/app_rem0t0/src/main/res/layout/muhactionbar.xml

@@ -15,7 +15,7 @@
 			android:src="@mipmap/ic_launcher"
 			android:contentDescription="@string/app_name"
 			app:layout_constraintStart_toStartOf="parent"
-			app:layout_constraintTop_toTopOf="parent"/>
+			app:layout_constraintTop_toTopOf="parent" />
 
 		<TextView
 			android:id="@+id/ab_muhtitle"

+ 2 - 0
app/src/app_rem0t0/src/main/res/layout/rem0t0_ledstrip.xml

@@ -24,6 +24,7 @@
 				android:id="@+id/btngroup_updown"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_led_btngroup"
 				app:layout_constraintTop_toTopOf="parent"
@@ -63,6 +64,7 @@
 				android:id="@+id/btngroup_offon"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_led_btngroup"
 				android:layout_marginStart="@dimen/rem0t0_btngroup_margin"

+ 71 - 25
app/src/app_rem0t0/src/main/res/layout/rem0t0_stereo.xml

@@ -70,17 +70,16 @@
 				android:tag="power"
 				android:layout_width="@dimen/rem0t0_btn_size"
 				android:layout_height="@dimen/rem0t0_btn_size"
+				android:drawableStart="@drawable/drw_rem0t0_power"
+				android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+				android:paddingStart="@dimen/rem0t0_btn_iconpadding"
 				android:background="@drawable/roundcorners"
-				android:backgroundTint="@color/rem0t0_stereo_btn"
+				android:backgroundTint="@color/rem0t0_stereo_power"
 				android:foreground="@drawable/roundcorners"
-				android:padding="@dimen/rem0t0_btn_txtpadding"
-				android:textColor="@color/rem0t0_stereo_btntxt"
-				android:textAllCaps="false"
-				android:textSize="@dimen/rem0t0_btn_txtsize"
-				android:text="@string/rem0t0btn_stereo_power"
 				android:layout_marginStart="@dimen/rem0t0_btn_margin"
 				app:layout_constraintTop_toTopOf="@id/btn_3"
-				app:layout_constraintStart_toEndOf="@id/btn_3" />
+				app:layout_constraintStart_toEndOf="@id/btn_3"
+				tools:ignore="RtlSymmetry" />
 
 
 			<Button
@@ -182,7 +181,7 @@
 				android:text="@string/rem0t0btn_stereo_8"
 				android:layout_marginStart="@dimen/rem0t0_btn_margin"
 				app:layout_constraintTop_toTopOf="@id/btn_7"
-				app:layout_constraintStart_toEndOf="@id/btn_7"/>
+				app:layout_constraintStart_toEndOf="@id/btn_7" />
 			<Button
 				android:id="@+id/btn_9"
 				android:tag="9"
@@ -288,13 +287,26 @@
 				android:id="@+id/btngroup_ipod"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_stereo_btngroup"
 				android:layout_marginTop="@dimen/rem0t0_btn_margin"
 				app:layout_constraintTop_toBottomOf="@id/btn_group_track"
 				app:layout_constraintStart_toStartOf="parent"
 				app:layout_constraintEnd_toEndOf="parent"
-				android:padding="@dimen/rem0t0_stereo_btngroup_ipod_padding">
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_ipod"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_stereo_grouplabel_ipod"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
 
 				<Button
 					android:id="@+id/btn_ipod_up"
@@ -303,11 +315,13 @@
 					android:layout_height="@dimen/rem0t0_btn_size"
 					android:drawableStart="@drawable/drw_rem0t0_arrowup"
 					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
-					android:paddingBottom="@dimen/rem0t0_btn_iconpadding_arrow"
+					android:paddingBottom="@dimen/rem0t0_btn_iconpadding_offset"
 					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
 					android:background="@drawable/roundcorners"
 					android:backgroundTint="@color/rem0t0_stereo_btn"
 					android:foreground="@drawable/roundcorners"
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_ipod"
 					app:layout_constraintStart_toStartOf="parent"
 					tools:ignore="RtlSymmetry" />
 				<Button
@@ -324,6 +338,7 @@
 					android:textSize="@dimen/rem0t0_btn_txtsize"
 					android:text="@string/rem0t0btn_stereo_ipod_menu"
 					android:layout_marginStart="@dimen/rem0t0_stereo_ipod_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_ipod_up"
 					app:layout_constraintStart_toEndOf="@id/btn_ipod_up" />
 				<Button
 					android:id="@+id/btn_ipod_shuffle"
@@ -339,6 +354,7 @@
 					android:textSize="@dimen/rem0t0_btn_txtsize"
 					android:text="@string/rem0t0btn_stereo_ipod_shuffle"
 					android:layout_marginStart="@dimen/rem0t0_stereo_ipod_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_ipod_menu"
 					app:layout_constraintStart_toEndOf="@id/btn_ipod_menu" />
 
 
@@ -397,7 +413,7 @@
 					android:layout_height="@dimen/rem0t0_btn_size"
 					android:drawableStart="@drawable/drw_rem0t0_arrowdown"
 					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
-					android:paddingTop="@dimen/rem0t0_btn_iconpadding_arrow"
+					android:paddingTop="@dimen/rem0t0_btn_iconpadding_offset"
 					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
 					android:background="@drawable/roundcorners"
 					android:backgroundTint="@color/rem0t0_stereo_btn"
@@ -411,16 +427,15 @@
 					android:tag="ipod_playpause"
 					android:layout_width="@dimen/rem0t0_btn_size"
 					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_playpause"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
 					android:background="@drawable/roundcorners"
 					android:backgroundTint="@color/rem0t0_stereo_btn"
 					android:foreground="@drawable/roundcorners"
-					android:padding="@dimen/rem0t0_btn_txtpadding"
-					android:textColor="@color/rem0t0_stereo_btntxt"
-					android:textAllCaps="false"
-					android:textSize="@dimen/rem0t0_btn_txtsize"
-					android:text="@string/rem0t0btn_stereo_ipod_playpause"
 					app:layout_constraintStart_toStartOf="@id/btn_ipod_menu"
-					app:layout_constraintTop_toTopOf="@id/btn_ipod_down" />
+					app:layout_constraintTop_toTopOf="@id/btn_ipod_down"
+					tools:ignore="RtlSymmetry" />
 				<Button
 					android:id="@+id/btn_ipod_repeat"
 					android:tag="ipod_repeat"
@@ -442,25 +457,39 @@
 				android:id="@+id/btngroup_cd"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_stereo_btngroup"
 				android:layout_marginTop="@dimen/rem0t0_btn_margin"
 				app:layout_constraintTop_toBottomOf="@id/btngroup_ipod"
-				android:padding="@dimen/rem0t0_btngroup_padding">
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_cd"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_stereo_grouplabel_cd"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
 
 				<Button
 					android:id="@+id/btn_cd_playpause"
 					android:tag="cd_playpause"
 					android:layout_width="@dimen/rem0t0_btn_size"
 					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_playpause"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
 					android:background="@drawable/roundcorners"
 					android:backgroundTint="@color/rem0t0_stereo_btn"
 					android:foreground="@drawable/roundcorners"
-					android:padding="@dimen/rem0t0_btn_txtpadding"
-					android:textColor="@color/rem0t0_stereo_btntxt"
-					android:textAllCaps="false"
-					android:textSize="@dimen/rem0t0_btn_txtsize"
-					android:text="@string/rem0t0btn_stereo_cd_playpause" />
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_cd"
+					tools:ignore="RtlSymmetry" />
 				<Button
 					android:id="@+id/btn_cd_stop"
 					android:tag="cd_stop"
@@ -482,12 +511,25 @@
 				android:id="@+id/btngroup_input"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_stereo_btngroup"
 				app:layout_constraintTop_toTopOf="@id/btngroup_cd"
 				app:layout_constraintStart_toEndOf="@id/btngroup_cd"
 				android:layout_marginStart="@dimen/rem0t0_btngroup_margin"
-				android:padding="@dimen/rem0t0_btngroup_padding">
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_input"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_stereo_grouplabel_input"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
 
 				<Button
 					android:id="@+id/btn_aux"
@@ -502,7 +544,9 @@
 					android:textAllCaps="false"
 					android:textSize="@dimen/rem0t0_btn_txtsize"
 					android:text="@string/rem0t0btn_stereo_aux"
-					android:layout_marginStart="@dimen/rem0t0_btn_margin" />
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_input" />
 				<Button
 					android:id="@+id/btn_fm_am"
 					android:tag="fm_am"
@@ -659,6 +703,7 @@
 				android:id="@+id/btngroup_rdspty"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_stereo_btngroup"
 				android:layout_marginTop="@dimen/rem0t0_btn_margin"
@@ -735,6 +780,7 @@
 				android:id="@+id/btngroup_volume"
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
 				android:background="@drawable/roundcorners"
 				android:backgroundTint="@color/rem0t0_stereo_btngroup"
 				android:layout_marginTop="@dimen/rem0t0_btn_margin"

+ 865 - 0
app/src/app_rem0t0/src/main/res/layout/rem0t0_tv.xml

@@ -0,0 +1,865 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+	xmlns:app="http://schemas.android.com/apk/res-auto"
+	xmlns:tools="http://schemas.android.com/tools"
+	android:layout_width="match_parent"
+	android:layout_height="match_parent"
+	android:id="@+id/muhparent_tv">
+
+	<ScrollView
+		android:layout_width="match_parent"
+		android:layout_height="match_parent">
+
+		<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:layout_gravity="center_horizontal"
+			android:layout_marginTop="@dimen/rem0t0_top_margin"
+			xmlns:app="http://schemas.android.com/apk/res-auto">
+
+			<Button
+				android:id="@+id/btn_power"
+				android:tag="power"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:drawableStart="@drawable/drw_rem0t0_power"
+				android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+				android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_power"
+				android:foreground="@drawable/roundcorners"
+				android:layout_marginStart="@dimen/rem0t0_btngroup_padding"
+				app:layout_constraintTop_toTopOf="parent"
+				app:layout_constraintStart_toStartOf="parent"
+				tools:ignore="RtlSymmetry" />
+			<Button
+				android:id="@+id/btn_source"
+				android:tag="source"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_source"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintStart_toEndOf="@id/btn_power" />
+			<Button
+				android:id="@+id/btn_ttx"
+				android:tag="ttx"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_ttx"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintStart_toEndOf="@id/btn_source" />
+			<Button
+				android:id="@+id/btn_prech"
+				android:tag="prech"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_prech"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintStart_toEndOf="@id/btn_ttx" />
+
+
+			<Button
+				android:id="@+id/btn_1"
+				android:tag="1"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_1"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				android:layout_marginStart="@dimen/rem0t0_btngroup_padding"
+				app:layout_constraintTop_toBottomOf="@id/btn_prech"
+				app:layout_constraintStart_toStartOf="parent" />
+			<Button
+				android:id="@+id/btn_2"
+				android:tag="2"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_2"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_1"
+				app:layout_constraintStart_toEndOf="@id/btn_1" />
+			<Button
+				android:id="@+id/btn_3"
+				android:tag="3"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_3"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_2"
+				app:layout_constraintStart_toEndOf="@id/btn_2" />
+			<Button
+				android:id="@+id/btn_4"
+				android:tag="4"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_4"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_3"
+				app:layout_constraintStart_toEndOf="@id/btn_3" />
+
+
+			<Button
+				android:id="@+id/btn_5"
+				android:tag="5"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_5"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				android:layout_marginStart="@dimen/rem0t0_btngroup_padding"
+				app:layout_constraintTop_toBottomOf="@id/btn_4"
+				app:layout_constraintStart_toStartOf="parent" />
+			<Button
+				android:id="@+id/btn_6"
+				android:tag="6"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_6"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_5"
+				app:layout_constraintStart_toEndOf="@id/btn_5" />
+			<Button
+				android:id="@+id/btn_7"
+				android:tag="7"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_7"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_6"
+				app:layout_constraintStart_toEndOf="@id/btn_6" />
+			<Button
+				android:id="@+id/btn_8"
+				android:tag="8"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_8"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_7"
+				app:layout_constraintStart_toEndOf="@id/btn_7" />
+
+
+			<Button
+				android:id="@+id/btn_9"
+				android:tag="9"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_9"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				android:layout_marginStart="@dimen/rem0t0_btngroup_padding"
+				app:layout_constraintTop_toBottomOf="@id/btn_8"
+				app:layout_constraintStart_toStartOf="parent" />
+			<Button
+				android:id="@+id/btn_0"
+				android:tag="0"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:padding="@dimen/rem0t0_btn_txtpadding"
+				android:textColor="@color/rem0t0_tv_btntxt"
+				android:textAllCaps="false"
+				android:textSize="@dimen/rem0t0_btn_txtsize"
+				android:text="@string/rem0t0btn_tv_0"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_9"
+				app:layout_constraintStart_toEndOf="@id/btn_9" />
+			<Button
+				android:id="@+id/btn_program_up"
+				android:tag="program_up"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:drawableStart="@drawable/drw_rem0t0_arrowup"
+				android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+				android:paddingBottom="@dimen/rem0t0_btn_iconpadding_offset"
+				android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_0"
+				app:layout_constraintStart_toEndOf="@id/btn_0"
+				tools:ignore="RtlSymmetry" />
+			<Button
+				android:id="@+id/btn_program_down"
+				android:tag="program_down"
+				android:layout_width="@dimen/rem0t0_btn_size"
+				android:layout_height="@dimen/rem0t0_btn_size"
+				android:drawableStart="@drawable/drw_rem0t0_arrowdown"
+				android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+				android:paddingTop="@dimen/rem0t0_btn_iconpadding_offset"
+				android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btn"
+				android:foreground="@drawable/roundcorners"
+				android:layout_marginStart="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toTopOf="@id/btn_program_up"
+				app:layout_constraintStart_toEndOf="@id/btn_program_up"
+				tools:ignore="RtlSymmetry" />
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_volume"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btngroup"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btn_program_down"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent"
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_volume"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_tv_grouplabel_volume"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
+
+				<Button
+					android:id="@+id/btn_volume_down"
+					android:tag="volume_down"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_down"
+					android:drawableTint="@color/rem0t0_tv_down"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_volume"
+					app:layout_constraintStart_toStartOf="parent"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_volume_up"
+					android:tag="volume_up"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_up"
+					android:drawableTint="@color/rem0t0_tv_up"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_volume_down"
+					app:layout_constraintStart_toEndOf="@id/btn_volume_down"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_mute"
+					android:tag="mute"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_mute"
+					android:drawableTint="@color/rem0t0_tv_mute"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_volume_up"
+					app:layout_constraintStart_toEndOf="@id/btn_volume_up"
+					tools:ignore="RtlSymmetry" />
+			</android.support.constraint.ConstraintLayout>
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_channels"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btngroup"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_volume"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent"
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_program"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_tv_grouplabel_channels"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
+
+				<Button
+					android:id="@+id/btn_chlist"
+					android:tag="chlist"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_chlist"
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_program"
+					app:layout_constraintStart_toStartOf="parent" />
+				<Button
+					android:id="@+id/btn_content"
+					android:tag="content"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_content"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_chlist"
+					app:layout_constraintStart_toEndOf="@id/btn_chlist" />
+				<Button
+					android:id="@+id/btn_guide"
+					android:tag="guide"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_guide"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_content"
+					app:layout_constraintStart_toEndOf="@id/btn_content" />
+				<Button
+					android:id="@+id/btn_info"
+					android:tag="info"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_info"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_guide"
+					app:layout_constraintStart_toEndOf="@id/btn_guide" />
+			</android.support.constraint.ConstraintLayout>
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_menu"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btngroup"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_channels"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent"
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<TextView
+					android:id="@+id/grouplabel_menu"
+					android:layout_width="wrap_content"
+					android:layout_height="wrap_content"
+					android:textColor="@color/rem0t0_grouplabel_txt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_grouplabel_txtsize"
+					android:textStyle="bold"
+					android:text="@string/rem0t0btn_tv_grouplabel_menu"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent" />
+
+				<Button
+					android:id="@+id/btn_menu"
+					android:tag="menu"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_menu"
+					android:layout_marginTop="@dimen/rem0t0_grouplabel_margin"
+					app:layout_constraintTop_toBottomOf="@id/grouplabel_menu"
+					app:layout_constraintStart_toStartOf="parent"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_up"
+					android:tag="up"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_arrowup"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingBottom="@dimen/rem0t0_btn_iconpadding_offset"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginStart="@dimen/rem0t0_tv_menu_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_menu"
+					app:layout_constraintStart_toEndOf="@id/btn_menu"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_tools"
+					android:tag="tools"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_tools"
+					android:layout_marginStart="@dimen/rem0t0_tv_menu_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_up"
+					app:layout_constraintStart_toEndOf="@id/btn_up" />
+
+
+				<Button
+					android:id="@+id/btn_left"
+					android:tag="left"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_arrowleft"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding_offset"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginTop="@dimen/rem0t0_btn_margin"
+					android:layout_marginEnd="@dimen/rem0t0_btn_margin"
+					app:layout_constraintEnd_toStartOf="@id/btn_up"
+					app:layout_constraintTop_toBottomOf="@id/btn_tools"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_enter"
+					android:tag="enter"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_enter"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingTop="@dimen/rem0t0_btn_iconpadding_offset"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					app:layout_constraintTop_toTopOf="@id/btn_left"
+					app:layout_constraintStart_toStartOf="@id/btn_up"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_right"
+					android:tag="right"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_arrowright"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding_offset_arrowright"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_enter"
+					app:layout_constraintStart_toEndOf="@id/btn_enter"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_return"
+					android:tag="return"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_return"
+					android:layout_marginTop="@dimen/rem0t0_btn_margin"
+					app:layout_constraintStart_toStartOf="@id/btn_menu"
+					app:layout_constraintTop_toBottomOf="@id/btn_right"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_down"
+					android:tag="down"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_arrowdown"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingTop="@dimen/rem0t0_btn_iconpadding_offset"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					app:layout_constraintStart_toStartOf="@id/btn_up"
+					app:layout_constraintTop_toTopOf="@id/btn_return"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_exit"
+					android:tag="exit"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_exit"
+					app:layout_constraintStart_toStartOf="@id/btn_tools"
+					app:layout_constraintTop_toTopOf="@id/btn_down" />
+			</android.support.constraint.ConstraintLayout>
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_abcd"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btngroup"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_menu"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent"
+				android:padding="@dimen/rem0t0_btngroup_padding">
+
+				<Button
+					android:id="@+id/btn_a"
+					android:tag="a"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_a"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_a"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin" />
+				<Button
+					android:id="@+id/btn_b"
+					android:tag="b"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_b"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_b"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_a"
+					app:layout_constraintStart_toEndOf="@id/btn_a" />
+				<Button
+					android:id="@+id/btn_c"
+					android:tag="c"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_c"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_c"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_b"
+					app:layout_constraintStart_toEndOf="@id/btn_b" />
+				<Button
+					android:id="@+id/btn_d"
+					android:tag="d"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_d"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_d"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_c"
+					app:layout_constraintStart_toEndOf="@id/btn_c" />
+			</android.support.constraint.ConstraintLayout>
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_misc"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_abcd"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent">
+
+				<Button
+					android:id="@+id/btn_pip"
+					android:tag="pip"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_pip"
+					android:layout_marginTop="@dimen/rem0t0_btn_margin"
+					android:layout_marginStart="@dimen/rem0t0_btngroup_padding" />
+				<Button
+					android:id="@+id/btn_psize"
+					android:tag="psize"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_psize"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_pip"
+					app:layout_constraintStart_toEndOf="@id/btn_pip" />
+				<Button
+					android:id="@+id/btn_ad_subt"
+					android:tag="ad_subt"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:padding="@dimen/rem0t0_btn_txtpadding"
+					android:textColor="@color/rem0t0_tv_btntxt"
+					android:textAllCaps="false"
+					android:textSize="@dimen/rem0t0_btn_txtsize"
+					android:text="@string/rem0t0btn_tv_ad_subt"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_psize"
+					app:layout_constraintStart_toEndOf="@id/btn_psize" />
+			</android.support.constraint.ConstraintLayout>
+
+
+			<android.support.constraint.ConstraintLayout
+				android:id="@+id/btngroup_mediacontrols"
+				android:layout_width="wrap_content"
+				android:layout_height="wrap_content"
+				android:foreground="@drawable/roundcorners"
+				android:background="@drawable/roundcorners"
+				android:backgroundTint="@color/rem0t0_tv_btngroup"
+				android:layout_marginTop="@dimen/rem0t0_btn_margin"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_misc"
+				app:layout_constraintStart_toStartOf="parent"
+				app:layout_constraintEnd_toEndOf="parent"
+				android:padding="@dimen/rem0t0_btngroup_withlabel_padding">
+
+				<Button
+					android:id="@+id/btn_pause"
+					android:tag="pause"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_pause"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					app:layout_constraintStart_toStartOf="parent"
+					app:layout_constraintEnd_toEndOf="parent"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_rewind"
+					android:tag="rewind"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_rewind"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginTop="@dimen/rem0t0_btn_margin"
+					android:layout_marginEnd="@dimen/rem0t0_btn_margin"
+					app:layout_constraintEnd_toStartOf="@id/btn_pause"
+					app:layout_constraintTop_toBottomOf="@id/btn_pause"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_play"
+					android:tag="play"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_play"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding_offset_arrowright"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					app:layout_constraintTop_toTopOf="@id/btn_rewind"
+					app:layout_constraintStart_toStartOf="@id/btn_pause"
+					tools:ignore="RtlSymmetry" />
+				<Button
+					android:id="@+id/btn_forward"
+					android:tag="forward"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_forward"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginStart="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toTopOf="@id/btn_play"
+					app:layout_constraintStart_toEndOf="@id/btn_play"
+					tools:ignore="RtlSymmetry" />
+
+				<Button
+					android:id="@+id/btn_stop"
+					android:tag="stop"
+					android:layout_width="@dimen/rem0t0_btn_size"
+					android:layout_height="@dimen/rem0t0_btn_size"
+					android:drawableStart="@drawable/drw_rem0t0_stop"
+					android:drawablePadding="@dimen/rem0t0_btn_iconpadding"
+					android:paddingStart="@dimen/rem0t0_btn_iconpadding"
+					android:background="@drawable/roundcorners"
+					android:backgroundTint="@color/rem0t0_tv_btn"
+					android:foreground="@drawable/roundcorners"
+					android:layout_marginTop="@dimen/rem0t0_btn_margin"
+					app:layout_constraintTop_toBottomOf="@id/btn_forward"
+					app:layout_constraintStart_toStartOf="@id/btn_pause"
+					tools:ignore="RtlSymmetry" />
+			</android.support.constraint.ConstraintLayout>
+
+			<!-- Some padding because the ScrollView is kinda gay =] -->
+			<View
+				android:layout_width="1dp"
+				android:layout_height="@dimen/rem0t0_bottom_padding"
+				android:layout_marginTop="@dimen/rem0t0_bottom_padding"
+				app:layout_constraintTop_toBottomOf="@id/btngroup_mediacontrols"
+				app:layout_constraintStart_toStartOf="parent" />
+		</android.support.constraint.ConstraintLayout>
+	</ScrollView>
+</android.support.design.widget.CoordinatorLayout>

+ 19 - 2
app/src/app_rem0t0/src/main/res/values/colors.xml

@@ -24,11 +24,12 @@
 	<!-- Global shit -->
 	<color name="rem0t0_btn_stroke">#EDF1F2</color>
 	<color name="rem0t0_btn_stroke_dark">#000000</color>
+	<color name="rem0t0_grouplabel_txt">@color/colorText</color>
 
 	<!-- LED only shit -->
 	<color name="rem0t0_led_btntxt">@color/colorText</color>
 	<color name="rem0t0_led_btntxt_dark">#252A2C</color>
-	<color name="rem0t0_led_btngroup">#818F99</color>
+	<color name="rem0t0_led_btngroup">@color/colorPrimaryDark</color>
 
 	<color name="rem0t0_led_up">#EDF1F2</color>
 	<color name="rem0t0_led_down">#EDF1F2</color>
@@ -67,8 +68,24 @@
 	<!-- Stereo -->
 	<color name="rem0t0_stereo_btn">@color/rem0t0_hdmi_btn</color>
 	<color name="rem0t0_stereo_btntxt">@color/rem0t0_led_btntxt</color>
-	<color name="rem0t0_stereo_btngroup">#7BB3F0</color>
+	<color name="rem0t0_stereo_btngroup">@color/rem0t0_led_btngroup</color>
 
+	<color name="rem0t0_stereo_power">@color/rem0t0_led_poweron</color>
 	<color name="rem0t0_stereo_up">@color/rem0t0_led_btntxt</color>
 	<color name="rem0t0_stereo_down">@color/rem0t0_led_btntxt</color>
+
+	<!-- TV lol -->
+	<color name="rem0t0_tv_btn">@color/rem0t0_stereo_btn</color>
+	<color name="rem0t0_tv_btntxt">@color/rem0t0_led_btntxt</color>
+	<color name="rem0t0_tv_btngroup">@color/rem0t0_led_btngroup</color>
+
+	<color name="rem0t0_tv_power">@color/rem0t0_led_poweron</color>
+	<color name="rem0t0_tv_up">@color/rem0t0_led_btntxt</color>
+	<color name="rem0t0_tv_down">@color/rem0t0_led_btntxt</color>
+	<color name="rem0t0_tv_mute">@color/rem0t0_led_btntxt</color>
+
+	<color name="rem0t0_tv_a">@color/rem0t0_led_red</color>
+	<color name="rem0t0_tv_b">@color/rem0t0_led_green</color>
+	<color name="rem0t0_tv_c">@color/rem0t0_led_red2</color>
+	<color name="rem0t0_tv_d">@color/rem0t0_led_blue</color>
 </resources>

+ 8 - 2
app/src/app_rem0t0/src/main/res/values/dimens.xml

@@ -27,13 +27,17 @@
 	<dimen name="rem0t0_btn_stroke">1dp</dimen>
 	<dimen name="rem0t0_btn_txtpadding">3dp</dimen>
 	<dimen name="rem0t0_btn_iconpadding">11dp</dimen>
-	<dimen name="rem0t0_btn_iconpadding_arrow">6dp</dimen>
+	<dimen name="rem0t0_btn_iconpadding_offset">6dp</dimen>
+	<dimen name="rem0t0_btn_iconpadding_offset_arrowright">15dp</dimen>
 	<dimen name="rem0t0_btngroup_padding">6dp</dimen>
 	<dimen name="rem0t0_btngroup_margin">6dp</dimen>
 	<dimen name="rem0t0_btn_margin">18dp</dimen>
 	<dimen name="rem0t0_btn_size">66dp</dimen>
 	<dimen name="rem0t0_btn_iconsize">43dp</dimen>
 	<dimen name="rem0t0_btn_txtsize">15sp</dimen>
+	<dimen name="rem0t0_grouplabel_txtsize">15sp</dimen>
+	<dimen name="rem0t0_grouplabel_margin">12dp</dimen>
+	<dimen name="rem0t0_btngroup_withlabel_padding">10dp</dimen>
 
 	<!-- HDMI crap -->
 	<dimen name="rem0t0_hdmi_desctxt">18sp</dimen>
@@ -43,6 +47,8 @@
 	<dimen name="rem0t0_hdmi_txtbtn_margin_top">10dp</dimen>
 
 	<!-- Stereo shyte -->
-	<dimen name="rem0t0_stereo_btngroup_ipod_padding">10dp</dimen>
 	<dimen name="rem0t0_stereo_ipod_margin">50dp</dimen>
+
+	<!-- TV lol -->
+	<dimen name="rem0t0_tv_menu_margin">50dp</dimen>
 </resources>

+ 38 - 3
app/src/app_rem0t0/src/main/res/values/strings.xml

@@ -32,6 +32,7 @@
 	<string name="prefs_rem0t0_ledstrip">LED Strip</string>
 	<string name="prefs_rem0t0_hdmiswitch">HDMI Switch</string>
 	<string name="prefs_rem0t0_stereo">Stereo t0wer</string>
+	<string name="prefs_rem0t0_tv">TV</string>
 
 	<!-- (Error) description texts for snackbars yo -->
 	<string name="main_status_errtxt_key">Invalid key length</string>
@@ -53,6 +54,7 @@
 	<string name="rem0t0_cmdprefix_led">led</string>
 	<string name="rem0t0_cmdprefix_hdmi">hdmi</string>
 	<string name="rem0t0_cmdprefix_stereo">stereo</string>
+	<string name="rem0t0_cmdprefix_tv">tv</string>
 
 	<!-- Button/view texts for em rem0tes -->
 	<!-- LED y0 -->
@@ -88,18 +90,18 @@
 	<string name="rem0t0btn_stereo_10">10</string>
 	<string name="rem0t0btn_stereo_0">0</string>
 	<string name="rem0t0btn_stereo_gt10">≥10</string>
-	<string name="rem0t0btn_stereo_power">Power</string>
 	<string name="rem0t0btn_stereo_display">Display</string>
 	<string name="rem0t0btn_stereo_cancel">Cancel</string>
 	<string name="rem0t0btn_stereo_group_track">Group/Track</string>
-	<string name="rem0t0btn_stereo_ipod_playpause">iPod</string>
+	<string name="rem0t0btn_stereo_grouplabel_ipod">iPod</string>
 	<string name="rem0t0btn_stereo_ipod_menu">Menu</string>
 	<string name="rem0t0btn_stereo_ipod_set">Set</string>
 	<string name="rem0t0btn_stereo_ipod_shuffle">Shuffle</string>
 	<string name="rem0t0btn_stereo_ipod_repeat">Repeat</string>
 	<string name="rem0t0btn_stereo_program">Program</string>
 	<string name="rem0t0btn_stereo_fmmode">FM Mode</string>
-	<string name="rem0t0btn_stereo_cd_playpause">CD</string>
+	<string name="rem0t0btn_stereo_grouplabel_cd">CD</string>
+	<string name="rem0t0btn_stereo_grouplabel_input">Input</string>
 	<string name="rem0t0btn_stereo_aux">AUX</string>
 	<string name="rem0t0btn_stereo_fm_am">FM/AM</string>
 	<string name="rem0t0btn_stereo_soundturbo">Sound Turbo</string>
@@ -114,4 +116,37 @@
 	<string name="rem0t0btn_stereo_ptyselect_down">PTY Up</string>
 	<string name="rem0t0btn_stereo_ptyselect_up">PTY Down</string>
 	<string name="rem0t0btn_stereo_fademute">Fade Mute</string>
+
+	<!-- TV lol -->
+	<string name="rem0t0btn_tv_source">Source</string>
+	<string name="rem0t0btn_tv_1">1</string>
+	<string name="rem0t0btn_tv_2">2</string>
+	<string name="rem0t0btn_tv_3">3</string>
+	<string name="rem0t0btn_tv_4">4</string>
+	<string name="rem0t0btn_tv_5">5</string>
+	<string name="rem0t0btn_tv_6">6</string>
+	<string name="rem0t0btn_tv_7">7</string>
+	<string name="rem0t0btn_tv_8">8</string>
+	<string name="rem0t0btn_tv_9">9</string>
+	<string name="rem0t0btn_tv_0">0</string>
+	<string name="rem0t0btn_tv_ttx">Teletext</string>
+	<string name="rem0t0btn_tv_prech">Pre-Ch</string>
+	<string name="rem0t0btn_tv_grouplabel_volume">Volume</string>
+	<string name="rem0t0btn_tv_grouplabel_channels">Channels</string>
+	<string name="rem0t0btn_tv_chlist">List</string>
+	<string name="rem0t0btn_tv_content">Content</string>
+	<string name="rem0t0btn_tv_grouplabel_menu">Menu</string>
+	<string name="rem0t0btn_tv_menu">Main Menu</string>
+	<string name="rem0t0btn_tv_guide">Guide</string>
+	<string name="rem0t0btn_tv_tools">Tools</string>
+	<string name="rem0t0btn_tv_info">Info</string>
+	<string name="rem0t0btn_tv_return">Return</string>
+	<string name="rem0t0btn_tv_exit">Exit</string>
+	<string name="rem0t0btn_tv_a">A</string>
+	<string name="rem0t0btn_tv_b">B</string>
+	<string name="rem0t0btn_tv_c">C</string>
+	<string name="rem0t0btn_tv_d">D</string>
+	<string name="rem0t0btn_tv_pip">PIP</string>
+	<string name="rem0t0btn_tv_psize">Picture Size</string>
+	<string name="rem0t0btn_tv_ad_subt">Ad/Subtitle</string>
 </resources>

+ 5 - 0
app/src/app_rem0t0/src/main/res/xml/preferences.xml

@@ -88,6 +88,11 @@
 			android:key="prefs_rem0t0_stereo"
 			android:title="@string/prefs_rem0t0_stereo"
 			android:defaultValue="true" />
+
+		<CheckBoxPreference
+			android:key="prefs_rem0t0_tv"
+			android:title="@string/prefs_rem0t0_tv"
+			android:defaultValue="true" />
 	</PreferenceCategory>
 
 	<PreferenceCategory

+ 2 - 2
app/src/app_rem0t0/version.properties

@@ -1,2 +1,2 @@
-#Sun Nov 03 15:33:59 CET 2019
-VERSION_CODE=292
+#Sun Nov 03 19:23:19 CET 2019
+VERSION_CODE=308

BIN
ass/icinz/ic_rem0t0_arrowleft.png


BIN
ass/icinz/ic_rem0t0_arrowright.png


BIN
ass/icinz/ic_rem0t0_enter.png


BIN
ass/icinz/ic_rem0t0_mute.png


BIN
ass/icinz/ic_rem0t0_pause.png


BIN
ass/icinz/ic_rem0t0_play.png


BIN
ass/icinz/ic_rem0t0_playpause.png


BIN
ass/icinz/ic_rem0t0_power.png


BIN
ass/scr0t_hdmi.png


BIN
ass/scr0t_led.png


BIN
ass/scr0t_stereo.png


BIN
ass/scr0t_tv.png