| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.chrome.browser.offlinepages; | 5 package org.chromium.chrome.browser.offlinepages; |
| 6 | 6 |
| 7 import android.content.Context; | 7 import android.content.Context; |
| 8 | 8 |
| 9 import org.chromium.base.Log; | 9 import org.chromium.base.Log; |
| 10 import org.chromium.base.VisibleForTesting; | 10 import org.chromium.base.VisibleForTesting; |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 211 @VisibleForTesting | 211 @VisibleForTesting |
| 212 boolean isObservingNetworkChanges() { | 212 boolean isObservingNetworkChanges() { |
| 213 return mIsObservingNetworkChanges; | 213 return mIsObservingNetworkChanges; |
| 214 } | 214 } |
| 215 | 215 |
| 216 @VisibleForTesting | 216 @VisibleForTesting |
| 217 boolean isConnected() { | 217 boolean isConnected() { |
| 218 return OfflinePageUtils.isConnected(); | 218 return OfflinePageUtils.isConnected(); |
| 219 } | 219 } |
| 220 | 220 |
| 221 @VisibleForTesting |
| 222 boolean isShowingOfflinePreview(Tab tab) { |
| 223 return OfflinePageUtils.isShowingOfflinePreview(tab); |
| 224 } |
| 225 |
| 221 void maybeShowReloadSnackbar(Tab tab, boolean isNetworkEvent) { | 226 void maybeShowReloadSnackbar(Tab tab, boolean isNetworkEvent) { |
| 227 // Exclude Offline Previews, as there is a seperate UI for previews. |
| 222 if (tab == null || tab.isFrozen() || tab.isHidden() || !tab.isOfflinePag
e() | 228 if (tab == null || tab.isFrozen() || tab.isHidden() || !tab.isOfflinePag
e() |
| 223 || !isConnected() || !isLoadedTab(tab) | 229 || isShowingOfflinePreview(tab) || !isConnected() || !isLoadedTa
b(tab) |
| 224 || (wasSnackbarSeen(tab) && !isNetworkEvent)) { | 230 || (wasSnackbarSeen(tab) && !isNetworkEvent)) { |
| 225 // Conditions to show a snackbar are not met. | 231 // Conditions to show a snackbar are not met. |
| 226 return; | 232 return; |
| 227 } | 233 } |
| 228 | 234 |
| 229 showReloadSnackbar(tab); | 235 showReloadSnackbar(tab); |
| 230 mObservedTabs.get(tab.getId()).wasSnackbarSeen = true; | 236 mObservedTabs.get(tab.getId()).wasSnackbarSeen = true; |
| 231 } | 237 } |
| 232 | 238 |
| 233 @VisibleForTesting | 239 @VisibleForTesting |
| 234 void showReloadSnackbar(Tab tab) { | 240 void showReloadSnackbar(Tab tab) { |
| 235 OfflinePageUtils.showReloadSnackbar( | 241 OfflinePageUtils.showReloadSnackbar( |
| 236 mContext, mSnackbarManager, mSnackbarController, tab.getId()); | 242 mContext, mSnackbarManager, mSnackbarController, tab.getId()); |
| 237 } | 243 } |
| 238 | 244 |
| 239 @VisibleForTesting | 245 @VisibleForTesting |
| 240 void startObservingNetworkChanges() { | 246 void startObservingNetworkChanges() { |
| 241 NetworkChangeNotifier.addConnectionTypeObserver(this); | 247 NetworkChangeNotifier.addConnectionTypeObserver(this); |
| 242 } | 248 } |
| 243 | 249 |
| 244 @VisibleForTesting | 250 @VisibleForTesting |
| 245 void stopObservingNetworkChanges() { | 251 void stopObservingNetworkChanges() { |
| 246 NetworkChangeNotifier.removeConnectionTypeObserver(this); | 252 NetworkChangeNotifier.removeConnectionTypeObserver(this); |
| 247 } | 253 } |
| 248 } | 254 } |
| OLD | NEW |