| Index: chrome/android/java_staging/src/org/chromium/chrome/browser/customtabs/CustomTab.java
|
| diff --git a/chrome/android/java_staging/src/org/chromium/chrome/browser/customtabs/CustomTab.java b/chrome/android/java_staging/src/org/chromium/chrome/browser/customtabs/CustomTab.java
|
| index 01a498fea24d02767cde1f4f628b3f0245b0ed0e..92babea0fae2e4a9720d422ea7cbea5ed6dcb817 100644
|
| --- a/chrome/android/java_staging/src/org/chromium/chrome/browser/customtabs/CustomTab.java
|
| +++ b/chrome/android/java_staging/src/org/chromium/chrome/browser/customtabs/CustomTab.java
|
| @@ -44,6 +44,30 @@ public class CustomTab extends ChromeTab {
|
| }
|
| }
|
|
|
| + private static class CallbackTabObserver extends EmptyTabObserver {
|
| + private final ChromeBrowserConnection mChromeBrowserConnection;
|
| + private final long mSessionId;
|
| +
|
| + public CallbackTabObserver(
|
| + ChromeBrowserConnection chromeBrowserConnection, long sessionId) {
|
| + mChromeBrowserConnection = chromeBrowserConnection;
|
| + mSessionId = sessionId;
|
| + }
|
| +
|
| + @Override
|
| + public void onPageLoadStarted(Tab tab) {
|
| + // TODO(lizeb): This call gives the *previous* URL for navigations
|
| + // that don't go through Tab#lodUrl(). Fix TabObserver to deliver
|
| + // the destination here as well.
|
| + mChromeBrowserConnection.notifyPageLoadStarted(mSessionId, tab.getUrl());
|
| + }
|
| +
|
| + @Override
|
| + public void onPageLoadFinished(Tab tab) {
|
| + mChromeBrowserConnection.notifyPageLoadFinished(mSessionId, tab.getUrl());
|
| + }
|
| + }
|
| +
|
| private TabChromeContextMenuItemDelegate
|
| mContextMenuDelegate = new TabChromeContextMenuItemDelegate() {
|
| @Override
|
| @@ -70,6 +94,7 @@ public class CustomTab extends ChromeTab {
|
| initialize(webContents, activity.getTabContentManager(), false);
|
| getView().requestFocus();
|
| addObserver(new LoadUrlTabObserver(browserConnection, sessionId));
|
| + addObserver(new CallbackTabObserver(browserConnection, sessionId));
|
| }
|
|
|
| @Override
|
|
|