Loading res/layout/mouse_keys_image_item.xml +22 −9 Original line number Diff line number Diff line Loading @@ -15,12 +15,25 @@ limitations under the License. --> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/layout_description" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="16dp" android:layout_marginEnd="20dp" android:layout_marginBottom="20dp" android:textAppearance="?android:attr/textAppearanceListItemSmall" android:drawablePadding="8dp"/> android:layout_marginEnd="20dp" android:layout_marginStart="16dp" android:orientation="vertical"> <ImageView android:id="@+id/image" android:layout_width="match_parent" android:layout_height="wrap_content" android:scaleType="fitCenter" /> <TextView android:id="@+id/layout_description" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="8dp" android:gravity="center" /> </LinearLayout> No newline at end of file src/com/android/settings/inputmethod/MouseKeysImageListAdapter.java +5 −3 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; Loading Loading @@ -124,18 +125,19 @@ public class MouseKeysImageListAdapter extends public static class MouseKeyImageViewHolder extends RecyclerView.ViewHolder { private final TextView mTextView; private final ImageView mImageView; private final Context mContext; public MouseKeyImageViewHolder(View itemView, Context context) { super(itemView); mTextView = (TextView) itemView; mTextView = itemView.findViewById(R.id.layout_description); mImageView = itemView.findViewById(R.id.image); mContext = context; } void bindView(int drawableRes, String summary) { mTextView.setText(summary); mTextView.setCompoundDrawablesWithIntrinsicBounds(null, mContext.getDrawable(drawableRes), null, null); mImageView.setImageDrawable(mContext.getDrawable(drawableRes)); } } } src/com/android/settings/inputmethod/MouseKeysMainPageFragment.java +7 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static com.android.settings.inputmethod.PhysicalKeyboardFragment.getHardK import android.app.settings.SettingsEnums; import android.content.Context; import android.content.res.Configuration; import android.hardware.input.InputManager; import android.os.Bundle; import android.view.InputDevice; Loading @@ -32,6 +33,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.internal.util.Preconditions; import com.android.settings.R; import com.android.settings.activityembedding.ActivityEmbeddingUtils; import com.android.settings.dashboard.DashboardFragment; import com.android.settings.keyboard.Flags; import com.android.settings.search.BaseSearchIndexProvider; Loading Loading @@ -125,7 +127,11 @@ public class MouseKeysMainPageFragment extends DashboardFragment private void configureImagesPreference() { final RecyclerView recyclerView = mMouseKeyImagesPreference.findViewById( R.id.mouse_keys_image_recycler_list); recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 2)); boolean isPortrait = getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT; boolean isTwoPaneState = ActivityEmbeddingUtils.isAlreadyEmbedded(this.getActivity()); int column = isPortrait && !isTwoPaneState ? 1 : 2; recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), column)); recyclerView.setAdapter(new MouseKeysImageListAdapter(getActivity(), mCurrentInputDevice)); } Loading Loading
res/layout/mouse_keys_image_item.xml +22 −9 Original line number Diff line number Diff line Loading @@ -15,12 +15,25 @@ limitations under the License. --> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/layout_description" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="16dp" android:layout_marginEnd="20dp" android:layout_marginBottom="20dp" android:textAppearance="?android:attr/textAppearanceListItemSmall" android:drawablePadding="8dp"/> android:layout_marginEnd="20dp" android:layout_marginStart="16dp" android:orientation="vertical"> <ImageView android:id="@+id/image" android:layout_width="match_parent" android:layout_height="wrap_content" android:scaleType="fitCenter" /> <TextView android:id="@+id/layout_description" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="8dp" android:gravity="center" /> </LinearLayout> No newline at end of file
src/com/android/settings/inputmethod/MouseKeysImageListAdapter.java +5 −3 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; Loading Loading @@ -124,18 +125,19 @@ public class MouseKeysImageListAdapter extends public static class MouseKeyImageViewHolder extends RecyclerView.ViewHolder { private final TextView mTextView; private final ImageView mImageView; private final Context mContext; public MouseKeyImageViewHolder(View itemView, Context context) { super(itemView); mTextView = (TextView) itemView; mTextView = itemView.findViewById(R.id.layout_description); mImageView = itemView.findViewById(R.id.image); mContext = context; } void bindView(int drawableRes, String summary) { mTextView.setText(summary); mTextView.setCompoundDrawablesWithIntrinsicBounds(null, mContext.getDrawable(drawableRes), null, null); mImageView.setImageDrawable(mContext.getDrawable(drawableRes)); } } }
src/com/android/settings/inputmethod/MouseKeysMainPageFragment.java +7 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static com.android.settings.inputmethod.PhysicalKeyboardFragment.getHardK import android.app.settings.SettingsEnums; import android.content.Context; import android.content.res.Configuration; import android.hardware.input.InputManager; import android.os.Bundle; import android.view.InputDevice; Loading @@ -32,6 +33,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.internal.util.Preconditions; import com.android.settings.R; import com.android.settings.activityembedding.ActivityEmbeddingUtils; import com.android.settings.dashboard.DashboardFragment; import com.android.settings.keyboard.Flags; import com.android.settings.search.BaseSearchIndexProvider; Loading Loading @@ -125,7 +127,11 @@ public class MouseKeysMainPageFragment extends DashboardFragment private void configureImagesPreference() { final RecyclerView recyclerView = mMouseKeyImagesPreference.findViewById( R.id.mouse_keys_image_recycler_list); recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 2)); boolean isPortrait = getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT; boolean isTwoPaneState = ActivityEmbeddingUtils.isAlreadyEmbedded(this.getActivity()); int column = isPortrait && !isTwoPaneState ? 1 : 2; recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), column)); recyclerView.setAdapter(new MouseKeysImageListAdapter(getActivity(), mCurrentInputDevice)); } Loading