|
123 | 123 | import org.wordpress.android.util.AppLog; |
124 | 124 | import org.wordpress.android.util.AppLog.T; |
125 | 125 | import org.wordpress.android.util.DisplayUtils; |
| 126 | +import org.wordpress.android.util.DisplayUtilsWrapper; |
126 | 127 | import org.wordpress.android.util.JetpackBrandingUtils; |
127 | 128 | import org.wordpress.android.util.JetpackBrandingUtils.Screen; |
128 | 129 | import org.wordpress.android.util.NetworkUtils; |
@@ -233,6 +234,7 @@ public class ReaderPostListFragment extends ViewPagerFragment |
233 | 234 | @Inject QuickStartRepository mQuickStartRepository; |
234 | 235 | @Inject ReaderTracker mReaderTracker; |
235 | 236 | @Inject SnackbarSequencer mSnackbarSequencer; |
| 237 | + @Inject DisplayUtilsWrapper mDisplayUtilsWrapper; |
236 | 238 |
|
237 | 239 | private enum ActionableEmptyViewButtonType { |
238 | 240 | DISCOVER, |
@@ -502,13 +504,24 @@ public void onCreate(Bundle savedInstanceState) { |
502 | 504 | } |
503 | 505 | } |
504 | 506 |
|
505 | | - private void toggleJetpackBannerIfEnabled(final boolean forceShow) { |
| 507 | + private void toggleJetpackBannerIfEnabled(final boolean showIfEnabled, boolean animateOnScroll) { |
506 | 508 | if (!isAdded() || getView() == null || !isSearching()) return; |
507 | 509 |
|
508 | | - if (forceShow && mJetpackBrandingUtils.shouldShowJetpackBranding()) { |
509 | | - showJetpackBanner(); |
510 | | - } else { |
511 | | - hideJetpackBanner(); |
| 510 | + if (mJetpackBrandingUtils.shouldShowJetpackBranding()) { |
| 511 | + if (animateOnScroll) { |
| 512 | + mJetpackBrandingUtils.showJetpackBannerIfScrolledToTop( |
| 513 | + mJetpackBanner, |
| 514 | + mRecyclerView.getInternalRecyclerView() |
| 515 | + ); |
| 516 | + // Return early since the visibility was handled by showJetpackBannerIfScrolledToTop |
| 517 | + return; |
| 518 | + } |
| 519 | + |
| 520 | + if (showIfEnabled && !mDisplayUtilsWrapper.isPhoneLandscape()) { |
| 521 | + showJetpackBanner(); |
| 522 | + } else { |
| 523 | + hideJetpackBanner(); |
| 524 | + } |
512 | 525 | } |
513 | 526 | } |
514 | 527 |
|
@@ -1234,7 +1247,7 @@ private void showSearchMessageOrSuggestions() { |
1234 | 1247 | boolean hasQuery = !isSearchViewEmpty(); |
1235 | 1248 | boolean hasPerformedSearch = !TextUtils.isEmpty(mCurrentSearchQuery); |
1236 | 1249 |
|
1237 | | - toggleJetpackBannerIfEnabled(true); |
| 1250 | + toggleJetpackBannerIfEnabled(true, false); |
1238 | 1251 |
|
1239 | 1252 | // prevents suggestions from being shown after the search view has been collapsed |
1240 | 1253 | if (!isSearching()) { |
@@ -1323,7 +1336,7 @@ private void submitSearchQuery(@NonNull String query) { |
1323 | 1336 | updatePostsInCurrentSearch(0); |
1324 | 1337 | updateSitesInCurrentSearch(0); |
1325 | 1338 |
|
1326 | | - toggleJetpackBannerIfEnabled(false); |
| 1339 | + toggleJetpackBannerIfEnabled(false, false); |
1327 | 1340 |
|
1328 | 1341 | // track that the user performed a search |
1329 | 1342 | if (!trimQuery.equals("")) { |
@@ -1872,7 +1885,7 @@ public void onDataLoaded(boolean isEmpty) { |
1872 | 1885 | if (isSearching() && !isSearchTabsShowing()) { |
1873 | 1886 | showSearchTabs(); |
1874 | 1887 | } else if (isSearching()) { |
1875 | | - toggleJetpackBannerIfEnabled(true); |
| 1888 | + toggleJetpackBannerIfEnabled(true, true); |
1876 | 1889 | } |
1877 | 1890 | } |
1878 | 1891 | mRestorePosition = 0; |
|
0 commit comments