New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 612080 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Nov 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Feature



Sign in to add a comment

Remove WebContents and NavigationController dependencies from some of Clank

Project Member Reported by dtrainor@chromium.org, May 16 2016

Issue description

Throughout the chrome for android and chrome layers there are features which rely directly on WebContents and NavigationController.  We care about supporting some of these in Blimp (see integration doc) so we need to decouple the dependency.

For chrome for android, these mainly consist of Java layer or front end dependencies.  We can remove these by having the call sites directly hit Tab or access a NavigationController interface from Tab.

For chrome/, most of these are already hidden behind interfaces to support Bling.  We just need a different implementation of that interface.

Here are a few of the more important areas to fix:
- tab_state.cc: GetContentsStateAsByteBuffer
- Toolbar.java and LocationBar.java (look throughout all of the UI)
- SyncedTabDelegateAndroid
- Look through the Java code and either remove WebContents usage or make sure the feature can handle a Tab without one.

Other interesting ones that aren't quite as critical for this release.
- TopSitesObserver
- AutofillDriver (depends on how we flesh out autofill)
- ContentSettingsProvider
 
Labels: Blimp-M53-Proj-Scope
[Bulk edit]

Setting tracking label Blimp-M53-Proj-Scope.  This label is for scope tracking purposes only and should not be added / removed from any bugs, even if we add additional bugs to M-53 scope, or remove this bug from M-53 scope.
Project Member

Comment 2 by sheriffbot@chromium.org, Jul 10 2016

Labels: -M-53 M-54 MovedFrom-53
Moving this nonessential bug to the next milestone.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 3 by bugdroid1@chromium.org, Jul 15 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8b75c19b428805a0465624cd6047b705c3b9a1b5

commit 8b75c19b428805a0465624cd6047b705c3b9a1b5
Author: shaktisahu <shaktisahu@chromium.org>
Date: Fri Jul 15 23:38:10 2016

Changed NavigationController access to through tab in Java code

Currently most of the chrome UI code access NavigationController through
WebContents. However for Blimp mode there is no WebContents and hence
needs a different way to access NavigationController. In this CL, a
NavigationHandler interface was written that can be directly
accessed from tab. This would be used throughout clank UI. Chrome and
blimp versions would implement this interface.
BUG= 612080 

Review-Url: https://codereview.chromium.org/2087543002
Cr-Commit-Position: refs/heads/master@{#405899}

[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/NavigationPopup.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/RepostFormWarningDialog.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/SwipeRefreshHandler.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/download/ChromeDownloadDelegate.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/metrics/UmaSessionStats.java
[add] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/navigation/NavigationHandler.java
[add] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/navigation/TabWebContentsNavigationHandler.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/tab/InterceptNavigationDelegateImpl.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarTablet.java
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/java_sources.gni
[modify] https://crrev.com/8b75c19b428805a0465624cd6047b705c3b9a1b5/chrome/android/javatests/src/org/chromium/chrome/browser/NavigationPopupTest.java

Labels: Blimp-M54-Proj-Scope
[Bulk edit]

Setting tracking label Blimp-M54-Proj-Scope.  This label is for scope tracking purposes only and should not be added / removed from any bugs, even if we add additional bugs to M-54 scope, or remove this bug from M-54 scope.
Project Member

Comment 5 by bugdroid1@chromium.org, Aug 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/024877468441dfc1f61fd24b9129a0bb8c630ce4

commit 024877468441dfc1f61fd24b9129a0bb8c630ce4
Author: shaktisahu <shaktisahu@chromium.org>
Date: Thu Aug 18 22:25:38 2016

Revert "Changed NavigationController access to through tab in Java code"

This reverts commit 8b75c19b428805a0465624cd6047b705c3b9a1b5.

NavigationHandler was the interface proposed to handle all navigation related calls from chrome Java code for blimp and non-blimp mode uniformly. However,  as of today most of these functionality can also be provided by Tab. For blimp 0.6 integration, this CL proposes to revert this interface and access the required call sites through tab, until a more concrete proposal of blimp navigation stack is presented.

BUG= 612080 

Review-Url: https://codereview.chromium.org/2235533002
Cr-Commit-Position: refs/heads/master@{#412954}

[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/NavigationPopup.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/RepostFormWarningDialog.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/SwipeRefreshHandler.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/download/ChromeDownloadDelegate.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/metrics/UmaSessionStats.java
[delete] https://crrev.com/ab5732d3fbdf895d34e12a7a43667db91d584445/chrome/android/java/src/org/chromium/chrome/browser/navigation/NavigationHandler.java
[delete] https://crrev.com/ab5732d3fbdf895d34e12a7a43667db91d584445/chrome/android/java/src/org/chromium/chrome/browser/navigation/TabWebContentsNavigationHandler.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/tab/InterceptNavigationDelegateImpl.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarTablet.java
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/java_sources.gni
[modify] https://crrev.com/024877468441dfc1f61fd24b9129a0bb8c630ce4/chrome/android/javatests/src/org/chromium/chrome/browser/NavigationPopupTest.java

Blocking: -597756
Labels: -M-54 M-56
Moving to 56.  
Blocking: -599621
Status: WontFix (was: Assigned)
Obsolete, WontFix.
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 5 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b887e7c4d46340e170ab47c12b3a0d75433250af

commit b887e7c4d46340e170ab47c12b3a0d75433250af
Author: toyoshim <toyoshim@chromium.org>
Date: Mon Dec 05 07:53:26 2016

NavigationController: remove ReloadToRefreshContent

Now that Reload is equivalent to ReloadToRefreshContent, let's
deprecated ReloadToRefreshContent.

In this change, I do not remove actual caller code that existed
in Android port, because it was already removed accidentaly
in the following refactoring change.
https://codereview.chromium.org/2416723002

Because we already migrated to using ReloadType::MAIN_RESOURCE
for both reloads fortunately, it didn't cause any regression,
and we can safely remove this interface now.

BUG= 612080 ,  670232 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation
TBR=miguelg@chromium.org

Review-Url: https://codereview.chromium.org/2544283002
Cr-Commit-Position: refs/heads/master@{#436242}

[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/chrome/android/javatests/src/org/chromium/chrome/browser/NavigationPopupTest.java
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/browser/frame_host/navigation_controller_android.cc
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/browser/frame_host/navigation_controller_android.h
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/browser/frame_host/navigation_controller_impl.cc
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/browser/frame_host/navigation_controller_impl.h
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/browser/frame_host/navigation_controller_impl_browsertest.cc
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/public/android/java/src/org/chromium/content/browser/framehost/NavigationControllerImpl.java
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/public/android/java/src/org/chromium/content_public/browser/NavigationController.java
[modify] https://crrev.com/b887e7c4d46340e170ab47c12b3a0d75433250af/content/public/browser/navigation_controller.h

Labels: Archive-Blimp

Sign in to add a comment