diff options
Diffstat (limited to 'src/com/android/customization/widget')
| -rw-r--r-- | src/com/android/customization/widget/OptionSelectorController.java | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/com/android/customization/widget/OptionSelectorController.java b/src/com/android/customization/widget/OptionSelectorController.java index 8805cafd..8c7af00b 100644 --- a/src/com/android/customization/widget/OptionSelectorController.java +++ b/src/com/android/customization/widget/OptionSelectorController.java @@ -78,7 +78,7 @@ public class OptionSelectorController<T extends CustomizationOption<T>> { int CENTER_CHANGE_COLOR_WHEN_NOT_SELECTED = 3; } - private float mLinearLayoutHorizontalDisplayOptionsMax; + private final float mLinearLayoutHorizontalDisplayOptionsMax; private final RecyclerView mContainer; private final List<T> mOptions; @@ -183,6 +183,16 @@ public class OptionSelectorController<T extends CustomizationOption<T>> { @Override public TileViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false); + // Provide width constraint when a grid layout manager is not use and width is set + // to match parent + if (!mUseGrid + && v.getLayoutParams().width == RecyclerView.LayoutParams.MATCH_PARENT) { + Resources res = mContainer.getContext().getResources(); + RecyclerView.LayoutParams layoutParams = new RecyclerView.LayoutParams( + res.getDimensionPixelSize(R.dimen.option_tile_width), + RecyclerView.LayoutParams.WRAP_CONTENT); + v.setLayoutParams(layoutParams); + } return new TileViewHolder(v); } |
