gitextract_48clvfh9/ ├── .circleci/ │ └── config.yml ├── .github/ │ ├── issue_template.md │ └── workflows/ │ └── gradle-wrapper-validation.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── build.gradle ├── demo-cat-gallery/ │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── com/ │ │ └── google/ │ │ └── android/ │ │ └── flexbox/ │ │ └── apps/ │ │ └── catgallery/ │ │ ├── CatAdapter.kt │ │ ├── CatViewHolder.kt │ │ └── MainActivity.kt │ └── res/ │ ├── layout/ │ │ ├── activity_main.xml │ │ ├── content_main.xml │ │ └── viewholder_cat.xml │ ├── values/ │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── values-v21/ │ └── styles.xml ├── demo-playground/ │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ ├── androidTest/ │ │ └── java/ │ │ └── com/ │ │ └── google/ │ │ └── android/ │ │ └── apps/ │ │ └── flexbox/ │ │ └── test/ │ │ └── MainActivityTest.kt │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── com/ │ │ └── google/ │ │ └── android/ │ │ └── flexbox/ │ │ ├── Extensions.kt │ │ ├── FlexItemAdapter.kt │ │ ├── FlexItemChangedListener.kt │ │ ├── FlexItemChangedListenerImpl.kt │ │ ├── FlexItemChangedListenerImplRecyclerView.kt │ │ ├── FlexItemClickListener.kt │ │ ├── FlexItemEditFragment.kt │ │ ├── FlexItemViewHolder.kt │ │ ├── FlexboxLayoutFragment.kt │ │ ├── FragmentHelper.kt │ │ ├── MainActivity.kt │ │ ├── RecyclerViewFragment.kt │ │ ├── SettingsActivity.kt │ │ └── validators/ │ │ ├── DimensionInputValidator.kt │ │ ├── FixedDimensionInputValidator.kt │ │ ├── FlexBasisPercentInputValidator.kt │ │ ├── InputValidator.kt │ │ ├── IntegerInputValidator.kt │ │ └── NonNegativeDecimalInputValidator.kt │ └── res/ │ ├── drawable/ │ │ ├── flex_item_background.xml │ │ └── side_nav_bar.xml │ ├── layout/ │ │ ├── activity_main.xml │ │ ├── app_bar_main.xml │ │ ├── content_main.xml │ │ ├── fragment_flex_item_edit.xml │ │ ├── fragment_flexboxlayout.xml │ │ ├── fragment_recyclerview.xml │ │ ├── nav_header_main.xml │ │ ├── spinner_align_content.xml │ │ ├── spinner_align_items.xml │ │ ├── spinner_flex_direction.xml │ │ ├── spinner_flex_wrap.xml │ │ ├── spinner_item.xml │ │ ├── spinner_justify_content.xml │ │ └── viewholder_flex_item.xml │ ├── menu/ │ │ ├── activity_main_drawer.xml │ │ └── menu_main.xml │ ├── values/ │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ ├── values-v14/ │ │ └── styles.xml │ ├── values-v21/ │ │ └── styles.xml │ ├── values-w720dp/ │ │ └── dimens.xml │ └── xml/ │ └── new_flex_item_preferences.xml ├── flexbox/ │ ├── .gitignore │ ├── build.gradle │ ├── constants.gradle │ ├── maven-puglisher-plugin.gradle │ ├── proguard-rules.txt │ └── src/ │ ├── androidTest/ │ │ ├── AndroidManifest.xml │ │ ├── java/ │ │ │ └── com/ │ │ │ └── google/ │ │ │ └── android/ │ │ │ └── flexbox/ │ │ │ ├── FakeFlexContainer.kt │ │ │ ├── FlexboxHelperTest.kt │ │ │ └── test/ │ │ │ ├── ConfigChangeActivity.kt │ │ │ ├── FlexboxAndroidTest.kt │ │ │ ├── FlexboxLayoutManagerConfigChangeTest.kt │ │ │ ├── FlexboxLayoutManagerTest.kt │ │ │ ├── FlexboxTestActivity.kt │ │ │ ├── IsEqualAllowingError.kt │ │ │ ├── NestedInnerAdapter.kt │ │ │ ├── NestedOuterAdapter.kt │ │ │ ├── TestAdapter.kt │ │ │ ├── TestAdapterMultiViewTypes.kt │ │ │ ├── TestUtil.kt │ │ │ └── TestViewHolder.kt │ │ └── res/ │ │ ├── drawable/ │ │ │ ├── divider.xml │ │ │ ├── divider_thick.xml │ │ │ └── flex_item_background.xml │ │ ├── layout/ │ │ │ ├── activity_align_content_test.xml │ │ │ ├── activity_align_content_test_overflowed.xml │ │ │ ├── activity_align_items_baseline_test.xml │ │ │ ├── activity_align_items_baseline_wrap_content.xml │ │ │ ├── activity_align_items_parent_padding_test.xml │ │ │ ├── activity_align_items_test.xml │ │ │ ├── activity_align_self_stretch_test.xml │ │ │ ├── activity_child_needs_remeasure_column.xml │ │ │ ├── activity_child_needs_remeasure_row.xml │ │ │ ├── activity_direction_column_align_items_center_margin_oneside.xml │ │ │ ├── activity_direction_row_align_items_center_margin_oneside.xml │ │ │ ├── activity_divider_test_direction_column.xml │ │ │ ├── activity_divider_test_direction_row.xml │ │ │ ├── activity_empty_children.xml │ │ │ ├── activity_first_item_large_horizontal_test.xml │ │ │ ├── activity_first_item_large_vertical_test.xml │ │ │ ├── activity_first_view_gone_first_line_single_item.xml │ │ │ ├── activity_first_view_gone_layout_grow_set_for_rest.xml │ │ │ ├── activity_first_view_gone_layout_shrink_set_for_rest.xml │ │ │ ├── activity_flex_basis_percent_test.xml │ │ │ ├── activity_flex_grow_test.xml │ │ │ ├── activity_flex_item_match_parent.xml │ │ │ ├── activity_flex_item_match_parent_direction_column.xml │ │ │ ├── activity_flex_wrap_test.xml │ │ │ ├── activity_flexbox_wrap_content.xml │ │ │ ├── activity_flexbox_wrapped_with_horizontalscrollview.xml │ │ │ ├── activity_flexbox_wrapped_with_scrollview.xml │ │ │ ├── activity_justify_content_test.xml │ │ │ ├── activity_justify_content_with_gone.xml │ │ │ ├── activity_justify_content_with_parent_padding.xml │ │ │ ├── activity_maxheight_test.xml │ │ │ ├── activity_maxheight_upper_bound_test.xml │ │ │ ├── activity_maxwidth_test.xml │ │ │ ├── activity_maxwidth_upper_bound_test.xml │ │ │ ├── activity_minheight_lower_bound_test.xml │ │ │ ├── activity_minheight_test.xml │ │ │ ├── activity_minwidth_lower_bound_test.xml │ │ │ ├── activity_minwidth_test.xml │ │ │ ├── activity_order_test.xml │ │ │ ├── activity_simple.xml │ │ │ ├── activity_stretch_test.xml │ │ │ ├── activity_views_visibility_gone.xml │ │ │ ├── activity_views_visibility_invisible.xml │ │ │ ├── activity_visibility_gone_first_item_in_flex_line_column.xml │ │ │ ├── activity_visibility_gone_first_item_in_flex_line_row.xml │ │ │ ├── activity_wrap_before_test.xml │ │ │ ├── activity_wrap_child_margin_horizontal_test.xml │ │ │ ├── activity_wrap_child_margin_vertical_test.xml │ │ │ ├── activity_wrap_content_child_bottom_margin_column_grow.xml │ │ │ ├── activity_wrap_content_child_bottom_margin_column_shrink.xml │ │ │ ├── activity_wrap_content_child_bottom_margin_row_grow.xml │ │ │ ├── activity_wrap_content_child_bottom_margin_row_shrink.xml │ │ │ ├── activity_wrap_parent_padding_horizontal_test.xml │ │ │ ├── activity_wrap_parent_padding_vertical_test.xml │ │ │ ├── activity_zero_height_positive_flexgrow.xml │ │ │ ├── activity_zero_width_positive_flexgrow.xml │ │ │ ├── recyclerview.xml │ │ │ ├── recyclerview_reverse.xml │ │ │ ├── recyclerview_viewholder.xml │ │ │ ├── viewholder_inner_recyclerview.xml │ │ │ ├── viewholder_inner_recyclerview_wrap_horizontally.xml │ │ │ ├── viewholder_textview.xml │ │ │ ├── wrapped_recyclerview.xml │ │ │ └── wrapped_recyclerview_scroll_vertical.xml │ │ └── values/ │ │ └── strings.xml │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── com/ │ │ └── google/ │ │ └── android/ │ │ └── flexbox/ │ │ ├── AlignContent.java │ │ ├── AlignItems.java │ │ ├── AlignSelf.java │ │ ├── FlexContainer.java │ │ ├── FlexDirection.java │ │ ├── FlexItem.java │ │ ├── FlexLine.java │ │ ├── FlexWrap.java │ │ ├── FlexboxHelper.java │ │ ├── FlexboxItemDecoration.java │ │ ├── FlexboxLayout.java │ │ ├── FlexboxLayoutManager.java │ │ └── JustifyContent.java │ └── res/ │ └── values/ │ └── attrs.xml ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── tool/ └── codeStyleSettings.xml