Skip to content

Releases: mikepenz/MaterialDrawer

v8.0.0-a06

20 Jan 15:30
1dea71a
Compare
Choose a tag to compare
v8.0.0-a06 Pre-release
Pre-release

Warning

  • Please see the release notes for the previous alpha versions

Updates

  • use vector to make new android logo not blurry
  • update to APi 16 in general. I think it is time
  • update to Android-Iconics 16

v8.0.0-a05

30 Dec 16:47
Compare
Choose a tag to compare
v8.0.0-a05 Pre-release
Pre-release

Warning

  • Please see the release notes for the previous alpha versions

Breaking Changes

  • remove a bunch of with* methods
  • deprecate all with* methods
  • change the visibility of many methods
  • make many with methods being extensions on the interface to simplify the generic type for the different interfaces

Updates

  • add a big amount of javadoc and comments

v8.0.0-a04

28 Dec 15:01
Compare
Choose a tag to compare
v8.0.0-a04 Pre-release
Pre-release

Warning

  • Please see the release notes for the previous alpha versions

Module

New module for iconics support added

implementation "com.mikepenz:materialdrawer-iconics:${lastestMaterialDrawerRelease}"

Depencencies

The following major dependency versions are required:

implementation "com.mikepenz:fastadapter:5.x.y"
implementation "com.mikepenz:fastadapter-extensions-expandable:5.x.y"
// removed!! implementation "com.mikepenz:iconics-core:4.x.y"
// removed!! implementation 'com.mikepenz:materialize:1.x.y'

Breaking Changes

  • eliminate dependency on Android-Iconics
    • add extension to add back support for Android-Iconics
  • eliminate dependency on Materialize
  • update to FastAdapter v5.x.z-a01

Updates

  • replace more hardcoded dimensions with values from the xml
  • improve colors to fit the specification and to be equal to the old release
  • remove no longer needed themes as the new materialDrawer v8 is now themes by defining the styles
  • simplify by removing obsolete no longer needed ressources and colors

Fix

  • fix a issue when toggling the account header list (introduced in a03)

v8.0.0-a03

27 Dec 20:29
Compare
Choose a tag to compare
v8.0.0-a03 Pre-release
Pre-release

Warning

  • Please see the release notes for the previous alpha versions

Breaking Changes

  • eliminate "with*" methods in BadgeStyle in favor of kotlin preferred properties
  • remove various with* methods in favor of their direct methods
  • move various not necessary main drawer functions to an extensions class
  • limit visibility of some extensions

Updates

  • make most properties in the AccountHeaderView properly update the corresponding UI
    • e.g. changing height will affect height, hiding a line will hide the line, ...
  • make most properties of the drawer slider view directly update the UI
  • make mini drawer properties update UI

Fix

  • ensure we properly keep the position in case we re-create the drawer content due to ui changes

v7.0.0

23 Dec 13:57
Compare
Choose a tag to compare

WARNING

  • this release is the first release of MaterialDrawer migrated to kotlin.

Changes

  • this release contains a big amount of changes, including many breaking API changes to make its implementation easier, and make the APIs better compatible with kotlin.
  • please note that the interface for items changed in the FastAdapter as such migrating to the new version will require more effort.

Depencencies

The following major dependency versions are required:

implementation "com.mikepenz:iconics-core:4.x.y"
implementation "com.mikepenz:fastadapter:4.x.y"
implementation "com.mikepenz:fastadapter-extensions-expandable:4.x.y"
implementation 'com.mikepenz:materialize:1.x.y'

implementation "androidx.constraintlayout:constraintlayout:2.x.y"
implementation "androidx.drawerlayout:drawerlayout:1.x.y"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.x.y"
implementation "androidx.appcompat:appcompat:1.x.y"
implementation "androidx.cardview:cardview:1.x.y"
implementation "androidx.recyclerview:recyclerview:1.x.y"
implementation "com.google.android.material:material:1.1.y" // v1.1.x is important!

Migration

  • Update FastAdapter to v4 and make all relevant adjustments to the provided DrawerItems
  • Update Android-Iconics to v4
    • Ensure to update Android-Iconics for your project, and use the updated kotlin icon dependencies
    • See the migration notes for Android-Iconics if you run into problems
  • The general interfaces and everything stayed the same, and mainly everything was migrated to kotlin

v7.0.0-rc09

19 Dec 14:47
Compare
Choose a tag to compare
v7.0.0-rc09 Pre-release
Pre-release

Fix

Dependencies

The following major dependencies are currently required:

implementation "com.mikepenz:iconics-core:4.x.y"
implementation "com.mikepenz:fastadapter:4.x.y"
implementation "com.mikepenz:fastadapter-extensions-expandable:4.x.y"
implementation 'com.mikepenz:materialize:1.x.y'

implementation "androidx.constraintlayout:constraintlayout:2.x.y"
implementation "androidx.drawerlayout:drawerlayout:1.x.y"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.x.y"
implementation "androidx.appcompat:appcompat:1.x.y"
implementation "androidx.cardview:cardview:1.x.y"
implementation "androidx.recyclerview:recyclerview:1.x.y"
implementation "com.google.android.material:material:1.1.y"

v8.0.0-a02

16 Nov 16:40
Compare
Choose a tag to compare
v8.0.0-a02 Pre-release
Pre-release

Warning

  • This release contains a big amount of breaking changes, and will introduce an all new API to set-up the drawer.
  • This is an alpha release and will most likely still receiver further breaking API changes.
  • As a result of the updated API the main purpose of this library is to provide the Slider-View which is used within the DrawerLayout. The DrawerLayout should be used as specified and documented in its documentation.
  • The drawer no longer automatically manages the ActionBarDrawerToggle refer to standard DrawerLayout documentation on how to set-up

Breaking Changes

  • Drawer, AccountHeader, MiniDrawer classes are now be removed
  • The drawer is no longer set-up via code only, it requires now a specification in the layouts
  • Documentation is not yet updated (this will happen as soon as all samples are upgraded and working again)

Updates

  • Converted remaining samples to v8 setup
  • Delete obsolete deprecated classes
  • Add temporary CrossfadeDrawerLayout for better fitsSystemWindows support
  • Improve fitsSystemWindows compatibility and inset handling

v8.0.0-a01

03 Nov 19:28
Compare
Choose a tag to compare
v8.0.0-a01 Pre-release
Pre-release

Warning

  • This release contains a big amount of breaking changes, and will introduce an all new API to set-up the drawer.
  • This is an alpha release and will most likely still receiver further breaking API changes. In addition it still contains Drawer. MiniDrawer, AccountHeader classes which will be removed as soon as we reach a stable API.
  • As a result of the updated API the main purpose of this library is to provide the Slider-View which is used within the DrawerLayout. The DrawerLayout should be used as specified and documented in its documentation.
  • The drawer no longer automatically manages the ActionBarDrawerToggle refer to standard DrawerLayout documentation on how to set-up

Breaking Changes

  • Drawer, AccountHeader classes will be removed
  • The drawer is no longer set-up via code only, it requires now a specification in the layouts
  • Documentation is not yet updated (this will happen as soon as all samples are upgraded and working again)

(New) How to use

1.) Define DrawerLayout and the SliderView in the xml

<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center">
     <!-- CONTENT -->
    </androidx.constraintlayout.widget.ConstraintLayout>

    <com.mikepenz.materialdrawer.widget.MaterialDrawerSliderView
        android:id="@+id/slider"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true" />
</androidx.drawerlayout.widget.DrawerLayout>

2.) Access view and fill with items

slider.apply {
            itemAdapter.add(
                    // define items
            )
            onDrawerItemClickListener = { v, drawerItem, position ->
                // listener action
                false

            }
            withSavedInstance(savedInstanceState)
}

3.) Please see the sample application for more samples on how to use the new version

Feedback welcome

  • The current state is super early alpha and APIs are about a change.
  • The main goal of this rewrite is to not affect fullscreen flags and fitsSystemWindows flags. Full control is on the developers side. The library should automatically detect insets and work as a transparent view as slider inside the DrawerLayout

v7.0.0-rc08

05 Oct 09:45
Compare
Choose a tag to compare
v7.0.0-rc08 Pre-release
Pre-release

Changes

  • Update material design components to 1.1.0-beta01
    • This fixes a incompatibility (breaking change of MDC 1.1.0)

v7.0.0-rc07

13 Sep 11:48
Compare
Choose a tag to compare
v7.0.0-rc07 Pre-release
Pre-release

Changes

  • Update material design components to 1.1.0-alpha10
    • This fixes a incompatibility (breaking change of MDC 1.1.0)
    • FIX #2499
    • THANKS @rubengees
  • Allows user to set NavOptions and arguments for fragment.
    • Fix the original NavOptions is always fail to perform "pop up" action
    • Fix matching issue between ResId and destination …
      • Change NavigationDrawerItem field from "destination" to "ResId", which is matching with first parameter in NavController.navigate
      • DrawerItem now can be selected with ResId refers to NavAction
    • THANKS @typebrook