New issue
Advanced search Search tips

Issue 700569 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 2
Type: Bug

Blocking:
issue 678047



Sign in to add a comment

The implementation of |Reload| function in NavigationManager is not reloading

Project Member Reported by liaoyuke@chromium.org, Mar 10 2017

Issue description

The implementation of |Reload| function in NavigationManager is not reloading, and instead, it's simply calling |LoadURLWithParams|, which is wrong.

I plan to fix this by changing the implementation to call the |Reload| function in WebControllerImpl through the NavigationManagerDelegate.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 17 2017

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

commit 563dc4a98290952cd8058a891574bfecce24c03c
Author: liaoyuke <liaoyuke@chromium.org>
Date: Fri Mar 17 18:36:29 2017

Refactoring Reload in NavigationManager and CRWWebController.

Previously, the |Reload| function in NavigationManager goes all the way
up to BrowserViewController to call web state's |openURLWithParams|,
which is completely unnecessary. Additionally, CRWWebController doesn't
use the transition type to call |-reload| when appropriate.

This CL first eliminates the excessive indirections by changing the
implementations of |Reload| function in NavigationManager to call
|LoadURLWithParams| directly and then updates callers of
CRWWebController's |Reload| to call NavigationManager's |Reload| to
correct layer violations.

This CL also adds a DCHECK to CRWWebController's |-loadWithParams:|
to make sure that it won't be called with PAGE_TRANSITION_RELOAD.

BUG= 700569 

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

[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/chrome/browser/geolocation/omnibox_geolocation_controller.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/navigation/navigation_manager_delegate.h
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/navigation/navigation_manager_impl.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/navigation/navigation_manager_impl_unittest.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/public/navigation_manager.h
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/web_state/ui/crw_web_controller.h
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/web_state/web_state_impl.h
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web/web_state/web_state_impl.mm
[modify] https://crrev.com/563dc4a98290952cd8058a891574bfecce24c03c/ios/web_view/internal/cwv_web_view.mm

Status: Fixed (was: Started)

Sign in to add a comment