All Versions
Latest Version
Avg Release Cycle
108 days
Latest Release
17 days ago

Changelog History
Page 1

  • v2.0.0

    November 22, 2019

    🐎 Performance improvements by avoiding child views are measured more than twice #46

    🐎 The version 2.0.0 improves the performance significantly especially FlexboxLayout is deeply nested.
    As described in #514, there were unnecessary measure calls even if any Flexitems in a FlexLine didn't have any flexGrow or flexShrink attributes set.
    0️⃣ Similarly, the default values for alignItems and alignContent for FlexboxLayout has changed from stretch to flex_start starting from 2.0.0 because setting stretch for alignItems turned out to be expensive. Setting the default value as stretch might increase the unnecessary measure calls.

    🚀 This is a major version release because the change may break the existing apps.

  • v1.1.1

    September 20, 2019

    🐛 Bug fixes

    • 🛠 Fixes the wrong positioning (#470)
    • ➕ Add JustifyContent.SPACE_EVENLY to IntDef (#489)
    • canScrollHorizontally() throws NPE if the RecyclerView is not attached to the Window (#490)
    • ⚡️ Update the API level to 29 (#509)
  • v1.1.0

    September 25, 2018

    👍 AndroidX support!

    From 1.1.0 moving forward, the library is going to depend on the androidx artifacts.
    No API changes from the flexbox library point of view.

  • v1.1.0-beta1

    July 19, 2018

    👌 Support AndroidX.
    🚀 AndroidX libraries are still in beta versions, so this release is not from the master branch.
    🔀 Once AndroidX becomes stable, we'll merge the androidx branch to master.

  • v1.0.0

    May 17, 2018

    Semantic versioning

    🚀 Start to follow the semantic versioning. flexbox-layout has been considered as stable for a while, but the version wasn't updated to 1.x. From this release on, the library starts to follow the semantic versioning.

    🆕 New features

    • ➕ Added "space-evenly" support as one of the justifyContent values. #284
    • ➕ Added maxLine attribute support, that specifies the maximum number of flex lines #156

    🐛 Bug fixes

    • Crash in using DiffUtil #425
    • 🔄 Change proguard rule to keep FlexboxLayoutManager to keepnames to avoid FlexboxLayoutManager is left even if it's not used #426
  • v0.3.2

    January 05, 2018
    • Raised the targetSdkVersion to 27
    • 👍 Made the support library dependencies as compileOnly instead of api not to force the dependent of the flexbox-layout projects to use the specific version of the support libraries (or explicitly exclude them). (#395)
  • v0.3.1

    September 27, 2017

    Backward incompatible changes

    • Raised minSdkVersion from 9 to 14.

    🐛 Bug fixes

    • Dividers stop being displayed between all visible items once you set visibility as "gone" of one of those items (#357)
    • Flexbox not respecting children margins added programmatically (#356)
    • Horizontal margins are ignored on devices with API level < 17 for the calculation to judge is a wrapping is required (#353)
    • 🛠 Fix the baseline calculation above API Level 24+ (#341)
  • v0.3.0

    June 28, 2017

    🚀 Stable release including RecyclerView integration!

    🆕 New features

    • FlexboxLayoutManager is now stable. #2
    • FlexboxLayoutManager can now scroll both directions #215


    🐛 Bug fixes

    • no need to measure child when it is GONE #170
    • ✂ Removed the set of methods from FlexLine to retrieve the positions of it. #244
    • Layout becomes invisible if the first item is gone and the first line only contains the invisible view. #283
    • 🛠 Fixes the issue that the index of the view becomes inconsistent #311
    • Horizontal scroll isn't handled correctly when layout direction is RTL and flex direction is row or row_reverse #318
    • Scroll direction is broken when flexDirection is column or column_reverse and layout direction is RTL #319

    Backward incompatible changes

    FlexboxLayout can be used in the same manner as the 0.2.x versions, but Flexbox specific constants are now defined in each individual class such as:
    🚚 (including other values (such as FLEX_END, STRETCH) are now moved to each individual class.)

    • FlexboxLayout.FLEX_DIRECTION_ROW -> FlexDirection.ROW
    • FlexboxLayout.FLEX_WRAP_WRAP -> FlexWrap.WRAP
    • FlexboxLayout.JUSTIFY_CONTENT_FLEX_START -> JustifyContent.FLEX_START
    • FlexboxLayout.ALIGN_ITEMS_FLEX_START -> AlignItems.FLEX_START

    - FlexboxLayout.ALIGN_CONTENT_FLEX_START -> AlignContent.FLEX_START

    Attributes in FlexboxLayout.LayoutParams are now accessible through getter/setter methods instead of accessing to the instance fields directly. For example changing the wrapBefore attribute can be done in a following manner:

    FlexboxLayout.LayoutParams lp = (FlexboxLayout.LayoutParams) view.getLayoutParams(); lp.setWrapBefore(true);
  • v0.3.0-alpha4

    June 16, 2017

    🆕 New features for FlexboxLayoutManager

    • ➕ Add a set of find*Position (find(First|Last)(Completely)?VisibleItemPosition) methods to retrieve the positions of the visible view. #217
    • ➕ Add support for scrollBars #249
    • ➕ Add support for smoothScrollToPosition #264

    🐛 Bug fixes

    • Child views are not measured properly when they are not visible #262
    • 🛠 Fixes the issue the FlexboxItemDecoration is misplaced upon scrolling #285
    • Nested RecyclerView with FlexboxLayoutManager shows only one line #290
    • 🛰 FlexboxLayoutManager doesn't work with payloads #297
    • 🛠 Fixes the issue that the items becoms invisible on the condition as follows #303
      • the first item's visibility is gone
      • the rest of the items (e.g. three in total) have layout_flexGrow attribute set.
      • the second view has layout_wrapBefore attribute set (no items are
        ➕ added to the flex line where the gone view is included)

    API Changes

    • The constructor of FlexboxLayoutManager now requires a Context.

      FlexboxLayoutManager layoutManager = new FlexboxLayoutManager(context);

  • v0.3.0-alpha3

    March 30, 2017

    🛠 Bunch of bug fixes.

    • 🛠 Fix the issue RecyclerView becomes invisible when wrapped with another RecyclerView or ScrollView (#199, #208)
    • 🛠 Fix the issue the first line disappeared when the user scrolls that makes the first line invisible then try to scroll back to the top, on the condition the second line has more items than the first line. (#228, #229)
    • 🛠 Fix the issue after the scrollTo method is called the item specified as the argument is always placed at the first line. (#206)
    • 🛠 Fix the issue when developers handle configuration changes by themselves, the flex lines before the anchor position were not discarded (#198)
    • 🛠 Fix the issue a ViewHolder was created multiple times in a single layout pass (#242)