Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Issue 2859053004: [Android] Tweak ChromeTabUtils.waitForTabPageLoaded loading state logic. (Closed)

Created:
3 years, 7 months ago by jbudorick
Modified:
3 years, 7 months ago
Reviewers:
Ted C, the real yoland
CC:
chromium-reviews, danakj+watch_chromium.org, vmpstr+watch_chromium.org, Donn Denman
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

[Android] Tweak ChromeTabUtils.waitForTabPageLoaded loading state logic. ChromeTabUtils.waitForTabPageLoaded was previously using Tab.isLoading() to determine whether a tab had previously finished loading, then using TabObserver.onPageLoadFinished to determine when a tab that hadn't previously finished loading did so. Unfortunately, Tab's loading state as tracked by Tab.mIsLoading is modified by the Tab.onLoadStopped (which, in turn, calls TabObserver.onLoadStopped), not by Tab.didPageLoadFinish (which, in turn, calls TabObserver.onPageLoadFinished). The disconnect here means that it's possible for ChromeTabUtils.waitForTabPageLoaded to see a Tab that is still loading according to mIsLoading but has already fired onPageLoadFinished. In such a scenario, waitForTabPageLoaded will time out without ever seeing a call to onPageLoadFinished even though the page has loaded. This CL changes the observer used by ChromeTabUtils. Instead of simply waiting for onPageLoadFinished, it now will: - recognize that the Tab has successfully loaded upon receiving onPageLoadFinished (same as now) - recognize that the Tab has failed to load upon receiving onCrash - note whether onLoadStopped has been called. If a timeout is hit and onLoadStopped has been called, the Tab is on the correct page, and the Tab hasn't crashed, waitForTabPageLoaded will assume that the Tab has successfully loaded. BUG=709004 Review-Url: https://codereview.chromium.org/2859053004 Cr-Commit-Position: refs/heads/master@{#470172} Committed: https://chromium.googlesource.com/chromium/src/+/8e566f616c9ecf713ce7e1283405adfb756a6915

Patch Set 1 #

Total comments: 9

Patch Set 2 : partial tedchoc comments #

Patch Set 3 : expanded comment #

Patch Set 4 : typos & copy edits #

Unified diffs Side-by-side diffs Delta from patch set Stats (+119 lines, -35 lines) Patch
M base/test/android/javatests/src/org/chromium/base/test/util/CallbackHelper.java View 1 4 chunks +21 lines, -0 lines 0 comments Download
M chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java View 1 2 3 7 chunks +98 lines, -35 lines 0 comments Download

Messages

Total messages: 29 (15 generated)
jbudorick
3 years, 7 months ago (2017-05-04 19:25:08 UTC) #3
Ted C
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode71 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:71: mCallback.notifyException(new Exception("Tab crashed :(")); any reason not to just ...
3 years, 7 months ago (2017-05-04 21:25:13 UTC) #7
jbudorick
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode71 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:71: mCallback.notifyException(new Exception("Tab crashed :(")); On 2017/05/04 21:25:13, Ted C ...
3 years, 7 months ago (2017-05-04 22:34:26 UTC) #8
Ted C
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode77 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:77: mLoadStoppedLatch.countDown(); On 2017/05/04 22:34:25, jbudorick wrote: > On 2017/05/04 ...
3 years, 7 months ago (2017-05-05 00:23:22 UTC) #9
jbudorick
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode77 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:77: mLoadStoppedLatch.countDown(); On 2017/05/05 00:23:22, Ted C wrote: > On ...
3 years, 7 months ago (2017-05-05 00:26:07 UTC) #10
jbudorick
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode77 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:77: mLoadStoppedLatch.countDown(); On 2017/05/05 00:26:07, jbudorick wrote: > On 2017/05/05 ...
3 years, 7 months ago (2017-05-05 16:47:50 UTC) #11
Ted C
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode77 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:77: mLoadStoppedLatch.countDown(); On 2017/05/05 16:47:50, jbudorick wrote: > On 2017/05/05 ...
3 years, 7 months ago (2017-05-05 17:04:03 UTC) #12
jbudorick
https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java File chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java (right): https://codereview.chromium.org/2859053004/diff/1/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java#newcode77 chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeTabUtils.java:77: mLoadStoppedLatch.countDown(); On 2017/05/05 17:04:03, Ted C wrote: > On ...
3 years, 7 months ago (2017-05-05 17:51:21 UTC) #13
Ted C
lgtm
3 years, 7 months ago (2017-05-08 20:52:31 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2859053004/40001
3 years, 7 months ago (2017-05-08 22:02:26 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2859053004/60001
3 years, 7 months ago (2017-05-08 22:06:55 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/264207) linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, ...
3 years, 7 months ago (2017-05-08 22:52:50 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2859053004/60001
3 years, 7 months ago (2017-05-08 23:17:20 UTC) #26
commit-bot: I haz the power
3 years, 7 months ago (2017-05-09 03:53:55 UTC) #29
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as
https://chromium.googlesource.com/chromium/src/+/8e566f616c9ecf713ce7e1283405...

Powered by Google App Engine
This is Rietveld 408576698