[tor-commits] [orbot/master] fix orbot-tv app highlighting

n8fr8 at torproject.org n8fr8 at torproject.org
Wed Dec 22 21:55:08 UTC 2021


commit fdb16f27d100afc5c2d5433fcf223e1f50fde8fc
Author: n8fr8 <nathan at guardianproject.info>
Date:   Fri Jul 9 11:39:09 2021 -0400

    fix orbot-tv app highlighting
---
 .../torproject/android/tv/TeeveeMainActivity.java  | 59 ++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/app-tv/src/main/java/org/torproject/android/tv/TeeveeMainActivity.java b/app-tv/src/main/java/org/torproject/android/tv/TeeveeMainActivity.java
index adea460d..0c0b2d5c 100644
--- a/app-tv/src/main/java/org/torproject/android/tv/TeeveeMainActivity.java
+++ b/app-tv/src/main/java/org/torproject/android/tv/TeeveeMainActivity.java
@@ -16,6 +16,7 @@ import android.content.pm.PackageManager;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
+import android.graphics.PorterDuff;
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
 import android.net.Uri;
@@ -346,6 +347,23 @@ public class TeeveeMainActivity extends Activity implements OrbotConstants, OnLo
 
         mBtnVPN = findViewById(R.id.btnVPN);
 
+        mBtnVPN.setFocusable(true);
+        mBtnVPN.setFocusableInTouchMode(true);
+
+        mBtnVPN.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+            @Override
+            public void onFocusChange(View v, boolean hasFocus) {
+
+                if (hasFocus)
+                    v.setBackgroundColor(getColor(R.color.dark_purple));
+                else
+                {
+                    v.setBackgroundColor(getColor(R.color.med_gray));
+                }
+            }
+        });
+
+
         boolean useVPN = Prefs.useVpn();
         mBtnVPN.setChecked(useVPN);
 
@@ -366,6 +384,10 @@ public class TeeveeMainActivity extends Activity implements OrbotConstants, OnLo
         LinearLayoutManager llm = new LinearLayoutManager(this);
         llm.setOrientation(LinearLayoutManager.VERTICAL);
         rv.setLayoutManager(llm);
+        rv.setFocusable(true);
+        rv.setFocusableInTouchMode(true);
+
+
     }
 
     @Override
@@ -908,6 +930,9 @@ public class TeeveeMainActivity extends Activity implements OrbotConstants, OnLo
             View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.layout_apps_listing, viewGroup, false);
             final AppViewHolder avh = new AppViewHolder(v);
 
+            v.setFocusable(true);
+            v.setFocusableInTouchMode(true);
+
 
             return avh;
         }
@@ -947,6 +972,28 @@ public class TeeveeMainActivity extends Activity implements OrbotConstants, OnLo
 
                         }
                     });
+
+                    avh.parent.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+                        @Override
+                        public void onFocusChange(View v, boolean hasFocus) {
+
+                            if (hasFocus)
+                                v.setBackgroundColor(getColor(R.color.dark_purple));
+                            else
+                            {
+                                Palette.generateAsync(drawableToBitmap(app.getIcon()), new Palette.PaletteAsyncListener() {
+                                    public void onGenerated(Palette palette) {
+                                        // Do something with colors...
+
+                                        int color = palette.getVibrantColor(0x000000);
+                                        avh.parent.setBackgroundColor(color);
+
+                                    }
+                                });
+                            }
+                        }
+                    });
+
                 } catch (NameNotFoundException e) {
                     e.printStackTrace();
                 }
@@ -961,6 +1008,18 @@ public class TeeveeMainActivity extends Activity implements OrbotConstants, OnLo
 
                     }
                 });
+                avh.parent.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+                    @Override
+                    public void onFocusChange(View v, boolean hasFocus) {
+
+                        if (hasFocus)
+                            v.setBackgroundColor(getColor(R.color.dark_purple));
+                        else
+                        {
+                            v.setBackgroundColor(getColor(R.color.med_gray));
+                        }
+                    }
+                });
             }
         }
 





More information about the tor-commits mailing list