diff --git a/.gitignore b/.gitignore
index 0d4ee63f..e5df7b91 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,4 +38,4 @@ captures/
.idea/libraries
# Keystore files
-*.jks
\ No newline at end of file
+*.jks
diff --git a/.travis.yml b/.travis.yml
index e4725cdb..a334babe 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,7 +6,7 @@ android:
components:
- tools
- platform-tools
- - build-tools-25.0.1
+ - build-tools-25.0.2
- android-25
- extra-android-m2repository
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 980148f5..57a43657 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,22 @@
## Changelog
-(or: y u no add shiny new things?!)
+### 2.3.0
+
+* [#713](https://github.com/roughike/BottomBar/pull/713): Ripple touch feedback for tabs!
+* [#716](https://github.com/roughike/BottomBar/pull/716): Bugfix for misbehaving shadow. No more weird white spaces above the bar!
+* [#717](https://github.com/roughike/BottomBar/pull/717): Support for tabs with icons only, without titles!
+* [#722](https://github.com/roughike/BottomBar/pull/722): Showing / hiding the BottomBar when on shy mode.
+* [#714](https://github.com/roughike/BottomBar/pull/714): Controlling whether Toasts of tab titles are shown when long pressing tabs.
+* [#719](https://github.com/roughike/BottomBar/pull/719): Fix for wrong size in tabs
+* [#712](https://github.com/roughike/BottomBar/pull/712): Data binding fixes.
+
+Thanks for @yombunker, @MarcRubio and @tushar-acharya for their contributions!
+
+### 2.2.0
+
+* Ability to change icons when the tabs are selected, using drawable selectors
+* Overriding tab selections is now supported, by using [TabSelectionInterceptor](https://github.com/roughike/BottomBar/blob/master/bottom-bar/src/main/java/com/roughike/bottombar/TabSelectionInterceptor.java)
+* Internal code quality improvements and small changes
### 2.2.0
diff --git a/README.md b/README.md
index 5f31bf35..cbad3755 100644
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@ Nope. The minSDK version is **API level 11 (Honeycomb).**
## Gimme that Gradle sweetness, pls?
```groovy
-compile 'com.roughike:bottom-bar:2.2.0'
+compile 'com.roughike:bottom-bar:2.3.0'
```
**Maven:**
@@ -37,7 +37,7 @@ compile 'com.roughike:bottom-bar:2.2.0'
com.roughike
bottom-bar
- 2.2.0
+ 2.3.0
pom
```
diff --git a/app/build.gradle b/app/build.gradle
index f3645884..434d4acd 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -19,19 +19,19 @@ android {
}
}
configurations.all {
- resolutionStrategy.force 'com.android.support:support-annotations:23.1.0'
+ resolutionStrategy.force "com.android.support:support-annotations:${rootProject.ext.supportLibraryVersion}"
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':bottom-bar')
- compile 'com.android.support:appcompat-v7:' + rootProject.ext.supportLibraryVersion
- compile 'com.android.support:design:' + rootProject.ext.supportLibraryVersion
+ compile "com.android.support:appcompat-v7:${rootProject.ext.supportLibraryVersion}"
+ compile "com.android.support:design:${rootProject.ext.supportLibraryVersion}"
androidTestCompile 'junit:junit:4.12'
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test:rules:0.5'
- androidTestCompile 'org.mockito:mockito-core:1.+'
+ androidTestCompile 'org.mockito:mockito-core:1.10.19'
androidTestCompile "com.google.dexmaker:dexmaker:1.2"
androidTestCompile "com.google.dexmaker:dexmaker-mockito:1.2"
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0e04901e..fd181570 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -18,6 +18,7 @@
+
diff --git a/app/src/main/java/com/example/bottombar/sample/IconsOnlyActivity.java b/app/src/main/java/com/example/bottombar/sample/IconsOnlyActivity.java
new file mode 100644
index 00000000..6a53d579
--- /dev/null
+++ b/app/src/main/java/com/example/bottombar/sample/IconsOnlyActivity.java
@@ -0,0 +1,39 @@
+package com.example.bottombar.sample;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.support.annotation.IdRes;
+import android.support.annotation.Nullable;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import com.roughike.bottombar.BottomBar;
+import com.roughike.bottombar.OnTabReselectListener;
+import com.roughike.bottombar.OnTabSelectListener;
+
+public class IconsOnlyActivity extends Activity {
+ private TextView messageView;
+
+ @Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_icons_only);
+
+ messageView = (TextView) findViewById(R.id.messageView);
+
+ BottomBar bottomBar = (BottomBar) findViewById(R.id.bottomBar);
+ bottomBar.setOnTabSelectListener(new OnTabSelectListener() {
+ @Override
+ public void onTabSelected(@IdRes int tabId) {
+ messageView.setText(TabMessage.get(tabId, false));
+ }
+ });
+
+ bottomBar.setOnTabReselectListener(new OnTabReselectListener() {
+ @Override
+ public void onTabReSelected(@IdRes int tabId) {
+ Toast.makeText(getApplicationContext(), TabMessage.get(tabId, true), Toast.LENGTH_LONG).show();
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/bottombar/sample/MainActivity.java b/app/src/main/java/com/example/bottombar/sample/MainActivity.java
index 2f22302b..87a23cd2 100644
--- a/app/src/main/java/com/example/bottombar/sample/MainActivity.java
+++ b/app/src/main/java/com/example/bottombar/sample/MainActivity.java
@@ -13,6 +13,7 @@ protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_main);
findViewById(R.id.simple_three_tabs).setOnClickListener(this);
+ findViewById(R.id.icons_only).setOnClickListener(this);
findViewById(R.id.five_tabs_changing_colors).setOnClickListener(this);
findViewById(R.id.three_tabs_quick_return).setOnClickListener(this);
findViewById(R.id.five_tabs_custom_colors).setOnClickListener(this);
@@ -27,6 +28,9 @@ public void onClick(View v) {
case R.id.simple_three_tabs:
clazz = ThreeTabsActivity.class;
break;
+ case R.id.icons_only:
+ clazz = IconsOnlyActivity.class;
+ break;
case R.id.five_tabs_changing_colors:
clazz = FiveColorChangingTabsActivity.class;
break;
diff --git a/app/src/main/res/layout/activity_color_changing_tabs.xml b/app/src/main/res/layout/activity_color_changing_tabs.xml
index f9412358..a39325bd 100644
--- a/app/src/main/res/layout/activity_color_changing_tabs.xml
+++ b/app/src/main/res/layout/activity_color_changing_tabs.xml
@@ -15,7 +15,7 @@
diff --git a/app/src/main/res/layout/activity_icons_only.xml b/app/src/main/res/layout/activity_icons_only.xml
new file mode 100644
index 00000000..795454be
--- /dev/null
+++ b/app/src/main/res/layout/activity_icons_only.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 48d4223e..e90ec527 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -19,6 +19,12 @@
android:layout_height="wrap_content"
android:text="Simple example with three tabs" />
+
+