diff --git a/src/android/support/design/widget/TabLayout.java b/src/android/support/design/widget/TabLayout.java index 74092a0b9..35d59ffbb 100755 --- a/src/android/support/design/widget/TabLayout.java +++ b/src/android/support/design/widget/TabLayout.java @@ -1135,9 +1135,13 @@ public class TabLayout extends HorizontalScrollView { setSelectedTabView(newPosition); } } - dispatchTabUnselected(currentTab); + if (currentTab != null) { + dispatchTabUnselected(currentTab); + } mSelectedTab = tab; - dispatchTabSelected(tab); + if (tab != null) { + dispatchTabSelected(tab); + } } } diff --git a/tests/src/android/support/design/widget/TabLayoutTest.java b/tests/src/android/support/design/widget/TabLayoutTest.java index 2f3ad6004..69bf429f9 100755 --- a/tests/src/android/support/design/widget/TabLayoutTest.java +++ b/tests/src/android/support/design/widget/TabLayoutTest.java @@ -20,6 +20,12 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; +import static org.mockito.Matchers.any; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; import android.support.design.test.R; import android.support.test.annotation.UiThreadTest; @@ -82,12 +88,17 @@ public class TabLayoutTest extends BaseInstrumentationTestCase