From 345cf00311aca07598e93a82f59156db6a9c1b60 Mon Sep 17 00:00:00 2001 From: kubasz Date: Mon, 9 Sep 2019 19:47:55 +0200 Subject: [PATCH] Update ProGuard once again. Add Toolbar subtitle unread badge. Remove debug toast. Add user attention ripple. Add drawer icon unread badge. --- app/build.gradle | 2 +- app/proguard-rules.pro | 8 ++ .../szczodrzynski/navigation/MainActivity.kt | 12 ++ app/src/main/res/layout/sample_nav_view.xml | 5 + app/src/main/res/values-pl/plurals.xml | 8 ++ app/src/main/res/values/plurals.xml | 6 + navlib/build.gradle | 2 + navlib/consumer-rules.pro | 2 + navlib/proguard-rules.pro | 3 +- .../szczodrzynski/navlib/BadgeDrawable.java | 109 ++++++++++++++++++ .../pl/szczodrzynski/navlib/NavBottomBar.kt | 16 ++- .../pl/szczodrzynski/navlib/NavToolbar.kt | 3 + .../java/pl/szczodrzynski/navlib/NavView.kt | 20 +++- .../pl/szczodrzynski/navlib/SystemBarsUtil.kt | 1 - .../szczodrzynski/navlib/drawer/NavDrawer.kt | 103 +++++++++++++---- .../src/main/res/drawable/ic_menu_badge.xml | 10 ++ navlib/src/main/res/drawable/placeholder.xml | 3 + navlib/src/main/res/layout/nav_view.xml | 30 ++++- navlib/src/main/res/values/dimens.xml | 4 + navlib/src/main/res/values/strings.xml | 1 + 20 files changed, 318 insertions(+), 30 deletions(-) create mode 100644 app/src/main/res/values-pl/plurals.xml create mode 100644 app/src/main/res/values/plurals.xml create mode 100644 navlib/src/main/java/pl/szczodrzynski/navlib/BadgeDrawable.java create mode 100644 navlib/src/main/res/drawable/ic_menu_badge.xml create mode 100644 navlib/src/main/res/drawable/placeholder.xml create mode 100644 navlib/src/main/res/values/dimens.xml diff --git a/app/build.gradle b/app/build.gradle index 5c9867a..46a6876 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -15,7 +15,7 @@ android { } buildTypes { release { - minifyEnabled false + minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index c64343e..b6d4ada 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -19,3 +19,11 @@ # If you keep the line number information, uncomment this to # hide the original source file name. #-renamesourcefileattribute SourceFile + +-keep class .R +-keep class **.R$* { + ; +} + +-keep class android.support.v7.** { *; } +-keep interface android.support.v7.** { *; } \ No newline at end of file diff --git a/app/src/main/java/pl/szczodrzynski/navigation/MainActivity.kt b/app/src/main/java/pl/szczodrzynski/navigation/MainActivity.kt index 821c30e..f41f583 100644 --- a/app/src/main/java/pl/szczodrzynski/navigation/MainActivity.kt +++ b/app/src/main/java/pl/szczodrzynski/navigation/MainActivity.kt @@ -217,9 +217,18 @@ class MainActivity : AppCompatActivity() { navView.bottomBar.fabExtendedText = "Compose" navView.bottomBar.fabExtended = false + rippleButton.setOnClickListener { + navView.gainAttentionOnBottomBar() + } + + navView.toolbar.subtitleFormat = R.string.toolbar_subtitle + navView.toolbar.subtitleFormatWithUnread = R.plurals.toolbar_subtitle_with_unread navView.drawer.apply { + miniDrawerVisiblePortrait = true + miniDrawerVisibleLandscape = null + addUnreadCounterType(type = 10, drawerItem = 1) addUnreadCounterType(type = 20, drawerItem = 2) addUnreadCounterType(type = 30, drawerItem = 60) @@ -313,6 +322,7 @@ class MainActivity : AppCompatActivity() { ) drawerItemSelectedListener = { id, position, drawerItem -> + navView.gainAttentionOnBottomBar() if (id == 1 || id == 2) { getItemById(id) { if (it is DrawerPrimaryItem) { @@ -328,6 +338,8 @@ class MainActivity : AppCompatActivity() { // drawer item ID) // See with "Settings" when it.badge AND UnreadCounter is present. // + // and it of course does not update the badge + // // just do not do this. it.badge = StringHolder("${it.tag as Int * 10}") } diff --git a/app/src/main/res/layout/sample_nav_view.xml b/app/src/main/res/layout/sample_nav_view.xml index 48a82fc..dcbb723 100644 --- a/app/src/main/res/layout/sample_nav_view.xml +++ b/app/src/main/res/layout/sample_nav_view.xml @@ -29,6 +29,11 @@ android:layout_width="wrap_content" android:layout_height="48dp" android:text="Switch theme" /> +