Merge "RequestManageCredentials support RTL languages" into sc-dev
diff --git a/res/layout/app_authentication_item.xml b/res/layout/app_authentication_item.xml
index 423722e..16d6fbd 100644
--- a/res/layout/app_authentication_item.xml
+++ b/res/layout/app_authentication_item.xml
@@ -26,7 +26,8 @@
android:layout_width="24dp"
android:layout_height="24dp"/>
- <LinearLayout
+ <RelativeLayout
+ android:id="@+id/app_details"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/app_icon"
@@ -44,16 +45,18 @@
<TextView
android:id="@+id/number_of_uris"
style="@style/AppAuthenticationPolicyNumberOfUrisText"
+ android:layout_below="@id/app_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/uris"
+ android:layout_below="@id/app_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
- </LinearLayout>
+ </RelativeLayout>
<ImageView
android:id="@+id/expand"
diff --git a/src/com/android/settings/security/CredentialManagementAppAdapter.java b/src/com/android/settings/security/CredentialManagementAppAdapter.java
index e56fc63..6b37f7f 100644
--- a/src/com/android/settings/security/CredentialManagementAppAdapter.java
+++ b/src/com/android/settings/security/CredentialManagementAppAdapter.java
@@ -25,6 +25,7 @@
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
+import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
@@ -61,6 +62,7 @@
private final boolean mIncludeHeader;
private final boolean mIncludeExpander;
+ private final boolean mIsLayoutRtl;
/**
* View holder for the header in the request manage credentials screen.
@@ -113,6 +115,15 @@
mChildRecyclerView = view.findViewById(R.id.uris);
mExpandedApps = new ArrayList<>();
+ if (mIsLayoutRtl) {
+ RelativeLayout appDetails = view.findViewById(R.id.app_details);
+ RelativeLayout.LayoutParams params =
+ (RelativeLayout.LayoutParams) appDetails.getLayoutParams();
+ params.addRule(RelativeLayout.LEFT_OF, R.id.app_icon);
+ params.addRule(RelativeLayout.RIGHT_OF, R.id.expand);
+ view.setLayoutParams(params);
+ }
+
mExpanderIconView.setOnClickListener(view1 -> {
final String appName = mSortedAppNames.get(getBindingAdapterPosition());
if (mExpandedApps.contains(appName)) {
@@ -195,6 +206,8 @@
mViewPool = new RecyclerView.RecycledViewPool();
mIncludeHeader = includeHeader;
mIncludeExpander = includeExpander;
+ mIsLayoutRtl = context.getResources().getConfiguration().getLayoutDirection()
+ == View.LAYOUT_DIRECTION_RTL;
}
/**