aboutsummaryrefslogtreecommitdiff
path: root/src/com/android/tv/menu
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/tv/menu')
-rw-r--r--src/com/android/tv/menu/AppLinkCardView.java2
-rw-r--r--src/com/android/tv/menu/ChannelsRow.java1
-rw-r--r--src/com/android/tv/menu/ChannelsRowAdapter.java14
-rw-r--r--src/com/android/tv/menu/ItemListRowView.java6
-rw-r--r--src/com/android/tv/menu/Menu.java2
-rw-r--r--src/com/android/tv/menu/MenuLayoutManager.java8
-rw-r--r--src/com/android/tv/menu/MenuRowFactory.java17
-rw-r--r--src/com/android/tv/menu/TvOptionsRowAdapter.java11
8 files changed, 41 insertions, 20 deletions
diff --git a/src/com/android/tv/menu/AppLinkCardView.java b/src/com/android/tv/menu/AppLinkCardView.java
index fd93c314..49d32fed 100644
--- a/src/com/android/tv/menu/AppLinkCardView.java
+++ b/src/com/android/tv/menu/AppLinkCardView.java
@@ -26,13 +26,13 @@ import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.support.annotation.Nullable;
-import android.support.v7.graphics.Palette;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
+import androidx.palette.graphics.Palette;
import com.android.tv.MainActivity;
import com.android.tv.R;
import com.android.tv.data.api.Channel;
diff --git a/src/com/android/tv/menu/ChannelsRow.java b/src/com/android/tv/menu/ChannelsRow.java
index 7d03bf2b..dbfc7820 100644
--- a/src/com/android/tv/menu/ChannelsRow.java
+++ b/src/com/android/tv/menu/ChannelsRow.java
@@ -73,6 +73,7 @@ public class ChannelsRow extends ItemListRow {
mTvRecommendation = null;
}
mChannelsPosterPrefetcher.cancel();
+ mChannelsAdapter.release();
}
/** Handle the update event of the recent channel. */
diff --git a/src/com/android/tv/menu/ChannelsRowAdapter.java b/src/com/android/tv/menu/ChannelsRowAdapter.java
index 4a9e4765..e6b61037 100644
--- a/src/com/android/tv/menu/ChannelsRowAdapter.java
+++ b/src/com/android/tv/menu/ChannelsRowAdapter.java
@@ -47,6 +47,7 @@ public class ChannelsRowAdapter extends ItemListRowView.ItemListAdapter<Channels
private final int mMaxCount;
private final int mMinCount;
private final ChannelChanger mChannelChanger;
+ private final AccessibilityManager mAccessibilityManager;
private boolean mShowChannelUpDown;
@@ -66,10 +67,9 @@ public class ChannelsRowAdapter extends ItemListRowView.ItemListAdapter<Channels
mMaxCount = maxCount;
setHasStableIds(true);
mChannelChanger = (ChannelChanger) (context);
- AccessibilityManager accessibilityManager =
- context.getSystemService(AccessibilityManager.class);
- mShowChannelUpDown = accessibilityManager.isEnabled();
- accessibilityManager.addAccessibilityStateChangeListener(this);
+ mAccessibilityManager = context.getSystemService(AccessibilityManager.class);
+ mShowChannelUpDown = mAccessibilityManager.isEnabled();
+ mAccessibilityManager.addAccessibilityStateChangeListener(this);
}
@Override
@@ -316,4 +316,10 @@ public class ChannelsRowAdapter extends ItemListRowView.ItemListAdapter<Channels
mShowChannelUpDown = enabled;
update();
}
+
+ @Override
+ public void release() {
+ mAccessibilityManager.removeAccessibilityStateChangeListener(this);
+ super.release();
+ }
}
diff --git a/src/com/android/tv/menu/ItemListRowView.java b/src/com/android/tv/menu/ItemListRowView.java
index 7042324d..16d5c3eb 100644
--- a/src/com/android/tv/menu/ItemListRowView.java
+++ b/src/com/android/tv/menu/ItemListRowView.java
@@ -17,9 +17,9 @@
package com.android.tv.menu;
import android.content.Context;
-import android.support.v17.leanback.widget.HorizontalGridView;
-import android.support.v17.leanback.widget.OnChildSelectedListener;
-import android.support.v7.widget.RecyclerView;
+import androidx.leanback.widget.HorizontalGridView;
+import androidx.leanback.widget.OnChildSelectedListener;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.AttributeSet;
import android.util.Log;
import android.view.LayoutInflater;
diff --git a/src/com/android/tv/menu/Menu.java b/src/com/android/tv/menu/Menu.java
index 6bdbf87b..0687441e 100644
--- a/src/com/android/tv/menu/Menu.java
+++ b/src/com/android/tv/menu/Menu.java
@@ -23,7 +23,7 @@ import android.content.Context;
import android.content.res.Resources;
import android.support.annotation.IntDef;
import android.support.annotation.VisibleForTesting;
-import android.support.v17.leanback.widget.HorizontalGridView;
+import androidx.leanback.widget.HorizontalGridView;
import android.util.Log;
import android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener;
import com.android.tv.ChannelTuner;
diff --git a/src/com/android/tv/menu/MenuLayoutManager.java b/src/com/android/tv/menu/MenuLayoutManager.java
index a600f704..8f95db77 100644
--- a/src/com/android/tv/menu/MenuLayoutManager.java
+++ b/src/com/android/tv/menu/MenuLayoutManager.java
@@ -25,15 +25,15 @@ import android.content.Context;
import android.content.res.Resources;
import android.graphics.Rect;
import android.support.annotation.UiThread;
-import android.support.v4.view.animation.FastOutLinearInInterpolator;
-import android.support.v4.view.animation.FastOutSlowInInterpolator;
-import android.support.v4.view.animation.LinearOutSlowInInterpolator;
-import android.support.v7.widget.RecyclerView;
+import androidx.recyclerview.widget.RecyclerView;
import android.util.Log;
import android.util.Property;
import android.view.View;
import android.view.ViewGroup.MarginLayoutParams;
import android.widget.TextView;
+import androidx.interpolator.view.animation.FastOutLinearInInterpolator;
+import androidx.interpolator.view.animation.FastOutSlowInInterpolator;
+import androidx.interpolator.view.animation.LinearOutSlowInInterpolator;
import com.android.tv.R;
import com.android.tv.common.SoftPreconditions;
import com.android.tv.util.Utils;
diff --git a/src/com/android/tv/menu/MenuRowFactory.java b/src/com/android/tv/menu/MenuRowFactory.java
index 048d725d..a3837a10 100644
--- a/src/com/android/tv/menu/MenuRowFactory.java
+++ b/src/com/android/tv/menu/MenuRowFactory.java
@@ -24,6 +24,7 @@ import com.android.tv.R;
import com.android.tv.common.customization.CustomAction;
import com.android.tv.common.customization.CustomizationManager;
import com.android.tv.ui.TunableTvView;
+import com.android.tv.common.flags.LegacyFlags;
import java.util.List;
/** A factory class to create menu rows. */
@@ -31,12 +32,15 @@ public class MenuRowFactory {
private final MainActivity mMainActivity;
private final TunableTvView mTvView;
private final CustomizationManager mCustomizationManager;
+ private final LegacyFlags mLegacyFlags;
/** A constructor. */
- public MenuRowFactory(MainActivity mainActivity, TunableTvView tvView) {
+ public MenuRowFactory(
+ MainActivity mainActivity, TunableTvView tvView, LegacyFlags mLegacyFlags) {
mMainActivity = mainActivity;
mTvView = tvView;
mCustomizationManager = new CustomizationManager(mainActivity);
+ this.mLegacyFlags = mLegacyFlags;
mCustomizationManager.initialize();
}
@@ -60,7 +64,8 @@ public class MenuRowFactory {
return new TvOptionsRow(
mMainActivity,
menu,
- mCustomizationManager.getCustomActions(CustomizationManager.ID_OPTIONS_ROW));
+ mCustomizationManager.getCustomActions(CustomizationManager.ID_OPTIONS_ROW),
+ mLegacyFlags);
}
return null;
}
@@ -70,13 +75,17 @@ public class MenuRowFactory {
/** The ID of the row. */
public static final String ID = TvOptionsRow.class.getName();
- private TvOptionsRow(Context context, Menu menu, List<CustomAction> customActions) {
+ private TvOptionsRow(
+ Context context,
+ Menu menu,
+ List<CustomAction> customActions,
+ LegacyFlags legacyFlags) {
super(
context,
menu,
R.string.menu_title_options,
R.dimen.action_card_height,
- new TvOptionsRowAdapter(context, customActions));
+ new TvOptionsRowAdapter(context, customActions, legacyFlags));
}
}
diff --git a/src/com/android/tv/menu/TvOptionsRowAdapter.java b/src/com/android/tv/menu/TvOptionsRowAdapter.java
index fe52b25e..418560a8 100644
--- a/src/com/android/tv/menu/TvOptionsRowAdapter.java
+++ b/src/com/android/tv/menu/TvOptionsRowAdapter.java
@@ -19,8 +19,8 @@ package com.android.tv.menu;
import android.content.Context;
import android.media.tv.TvTrackInfo;
import com.android.tv.TvOptionsManager;
+import com.android.tv.common.BuildConfig;
import com.android.tv.common.customization.CustomAction;
-import com.android.tv.common.util.CommonUtils;
import com.android.tv.data.DisplayMode;
import com.android.tv.features.TvFeatures;
import com.android.tv.ui.TvViewUiManager;
@@ -28,6 +28,7 @@ import com.android.tv.ui.sidepanel.ClosedCaptionFragment;
import com.android.tv.ui.sidepanel.DeveloperOptionFragment;
import com.android.tv.ui.sidepanel.DisplayModeFragment;
import com.android.tv.ui.sidepanel.MultiAudioFragment;
+import com.android.tv.common.flags.LegacyFlags;
import java.util.ArrayList;
import java.util.List;
@@ -35,8 +36,12 @@ import java.util.List;
* An adapter of options.
*/
public class TvOptionsRowAdapter extends CustomizableOptionsRowAdapter {
- public TvOptionsRowAdapter(Context context, List<CustomAction> customActions) {
+ private final LegacyFlags mLegacyFlags;
+
+ public TvOptionsRowAdapter(
+ Context context, List<CustomAction> customActions, LegacyFlags mLegacyFlags) {
super(context, customActions);
+ this.mLegacyFlags = mLegacyFlags;
}
@Override
@@ -49,7 +54,7 @@ public class TvOptionsRowAdapter extends CustomizableOptionsRowAdapter {
}
actionList.add(MenuAction.SELECT_AUDIO_LANGUAGE_ACTION);
actionList.add(MenuAction.MORE_CHANNELS_ACTION);
- if (CommonUtils.isDeveloper()) {
+ if (BuildConfig.ENG || mLegacyFlags.enableDeveloperFeatures()) {
actionList.add(MenuAction.DEV_ACTION);
}
actionList.add(MenuAction.SETTINGS_ACTION);