aboutsummaryrefslogtreecommitdiff
path: root/leanback
diff options
context:
space:
mode:
authorDake Gu <dake@google.com>2023-08-21 23:28:37 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2023-08-21 23:28:37 +0000
commite8e5a2df080fa6892baf891429e4cb86782fce95 (patch)
tree734782ac30feb95efd19be944211b6cc419ef3b3 /leanback
parentae78e14edd657cef84ab1995c4eac182f8778def (diff)
parentdc954d0176dcdf6d37ee0ad6f9b1fb95d80b3540 (diff)
downloadsupport-e8e5a2df080fa6892baf891429e4cb86782fce95.tar.gz
Merge "leanback: allow override the shadow width of GuidedActions list and extends GuidedActionEditText from AppCompatEditText" into androidx-main
Diffstat (limited to 'leanback')
-rw-r--r--leanback/leanback/api/current.txt2
-rw-r--r--leanback/leanback/api/restricted_current.txt2
-rw-r--r--leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionEditText.java8
-rw-r--r--leanback/leanback/src/main/res/layout/lb_guidedstep_fragment.xml2
-rw-r--r--leanback/leanback/src/main/res/values/attrs.xml3
-rw-r--r--leanback/leanback/src/main/res/values/themes.xml1
-rw-r--r--leanback/leanback/src/main/res/values/themes_appcompat.xml1
7 files changed, 12 insertions, 7 deletions
diff --git a/leanback/leanback/api/current.txt b/leanback/leanback/api/current.txt
index 91aec39970a..6712e068123 100644
--- a/leanback/leanback/api/current.txt
+++ b/leanback/leanback/api/current.txt
@@ -1898,7 +1898,7 @@ package androidx.leanback.widget {
method public static androidx.leanback.widget.GuidedActionDiffCallback getInstance();
}
- public class GuidedActionEditText extends android.widget.EditText implements androidx.leanback.widget.GuidedActionAutofillSupport androidx.leanback.widget.ImeKeyMonitor {
+ public class GuidedActionEditText extends androidx.appcompat.widget.AppCompatEditText implements androidx.leanback.widget.GuidedActionAutofillSupport androidx.leanback.widget.ImeKeyMonitor {
ctor public GuidedActionEditText(android.content.Context!);
ctor public GuidedActionEditText(android.content.Context!, android.util.AttributeSet!);
ctor public GuidedActionEditText(android.content.Context!, android.util.AttributeSet!, int);
diff --git a/leanback/leanback/api/restricted_current.txt b/leanback/leanback/api/restricted_current.txt
index 317fbfdc8ef..7c962a9ebac 100644
--- a/leanback/leanback/api/restricted_current.txt
+++ b/leanback/leanback/api/restricted_current.txt
@@ -2105,7 +2105,7 @@ package androidx.leanback.widget {
method public static androidx.leanback.widget.GuidedActionDiffCallback getInstance();
}
- public class GuidedActionEditText extends android.widget.EditText implements androidx.leanback.widget.GuidedActionAutofillSupport androidx.leanback.widget.ImeKeyMonitor {
+ public class GuidedActionEditText extends androidx.appcompat.widget.AppCompatEditText implements androidx.leanback.widget.GuidedActionAutofillSupport androidx.leanback.widget.ImeKeyMonitor {
ctor public GuidedActionEditText(android.content.Context!);
ctor public GuidedActionEditText(android.content.Context!, android.util.AttributeSet!);
ctor public GuidedActionEditText(android.content.Context!, android.util.AttributeSet!, int);
diff --git a/leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionEditText.java b/leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionEditText.java
index f5272f6c2ea..402029843af 100644
--- a/leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionEditText.java
+++ b/leanback/leanback/src/main/java/androidx/leanback/widget/GuidedActionEditText.java
@@ -26,18 +26,17 @@ import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.accessibility.AccessibilityNodeInfo;
import android.view.autofill.AutofillValue;
-import android.widget.EditText;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
+import androidx.appcompat.widget.AppCompatEditText;
import androidx.core.widget.TextViewCompat;
/**
* A custom EditText that satisfies the IME key monitoring requirements of GuidedStepFragment.
*/
-@SuppressLint("AppCompatCustomView")
-public class GuidedActionEditText extends EditText implements ImeKeyMonitor,
+public class GuidedActionEditText extends AppCompatEditText implements ImeKeyMonitor,
GuidedActionAutofillSupport {
/**
@@ -109,7 +108,8 @@ public class GuidedActionEditText extends EditText implements ImeKeyMonitor,
@Override
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) {
super.onInitializeAccessibilityNodeInfo(info);
- info.setClassName(isFocused() ? EditText.class.getName() : TextView.class.getName());
+ info.setClassName(isFocused() ?
+ AppCompatEditText.class.getName() : TextView.class.getName());
}
@Override
diff --git a/leanback/leanback/src/main/res/layout/lb_guidedstep_fragment.xml b/leanback/leanback/src/main/res/layout/lb_guidedstep_fragment.xml
index 766dbccecf8..9363a4dc320 100644
--- a/leanback/leanback/src/main/res/layout/lb_guidedstep_fragment.xml
+++ b/leanback/leanback/src/main/res/layout/lb_guidedstep_fragment.xml
@@ -52,7 +52,7 @@
android:orientation="horizontal"
android:clipToPadding="false"
android:clipChildren="false"
- android:paddingStart="@dimen/lb_guidedactions_section_shadow_width"
+ android:paddingStart="?attr/guidedActionsShadowWidth"
android:layout_width="0dp"
android:layout_weight="?attr/guidedActionContentWidthWeight"
android:layout_height="match_parent" >
diff --git a/leanback/leanback/src/main/res/values/attrs.xml b/leanback/leanback/src/main/res/values/attrs.xml
index 0fc08a48721..129cda8b156 100644
--- a/leanback/leanback/src/main/res/values/attrs.xml
+++ b/leanback/leanback/src/main/res/values/attrs.xml
@@ -375,6 +375,9 @@
{@link androidx.leanback.R.dimen#lb_guidedactions_elevation}.-->
<attr name="guidedActionsElevation" format="dimension|reference" />
+ <!-- Theme attribute for the left padding for showing shadow of GuidedActions. -->
+ <attr name="guidedActionsShadowWidth" format="dimension|reference" />
+
<!-- Theme attribute for the background of GuidedActions. Default is
{@link androidx.leanback.R.color#lb_guidedactions_background}.-->
<attr name="guidedActionsBackground" format="reference" />
diff --git a/leanback/leanback/src/main/res/values/themes.xml b/leanback/leanback/src/main/res/values/themes.xml
index 8f9597a0422..2d564dfa311 100644
--- a/leanback/leanback/src/main/res/values/themes.xml
+++ b/leanback/leanback/src/main/res/values/themes.xml
@@ -153,6 +153,7 @@
<item name="guidanceDescriptionStyle">@style/Widget.Leanback.GuidanceDescriptionStyle</item>
<item name="guidedActionsElevation">@dimen/lb_guidedactions_elevation</item>
+ <item name="guidedActionsShadowWidth">@dimen/lb_guidedactions_section_shadow_width</item>
<item name="guidedActionsBackground">@color/lb_guidedactions_background</item>
<item name="guidedActionsBackgroundDark">@color/lb_guidedactions_background_dark</item>
<item name="guidedActionsListStyle">@style/Widget.Leanback.GuidedActionsListStyle</item>
diff --git a/leanback/leanback/src/main/res/values/themes_appcompat.xml b/leanback/leanback/src/main/res/values/themes_appcompat.xml
index b46e53c3c5e..f42718496d3 100644
--- a/leanback/leanback/src/main/res/values/themes_appcompat.xml
+++ b/leanback/leanback/src/main/res/values/themes_appcompat.xml
@@ -157,6 +157,7 @@
<item name="guidanceDescriptionStyle">@style/Widget.Leanback.GuidanceDescriptionStyle</item>
<item name="guidedActionsElevation">@dimen/lb_guidedactions_elevation</item>
+ <item name="guidedActionsShadowWidth">@dimen/lb_guidedactions_section_shadow_width</item>
<item name="guidedActionsBackground">@color/lb_guidedactions_background</item>
<item name="guidedActionsBackgroundDark">@color/lb_guidedactions_background_dark</item>
<item name="guidedActionsListStyle">@style/Widget.Leanback.GuidedActionsListStyle</item>