New issue
Advanced search Search tips

Issue 681867 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Task

Blocked on:
issue 691073
issue 684063



Sign in to add a comment

Get rid of Tab

Project Member Reported by rohitrao@chromium.org, Jan 17 2017

Issue description

Move all code and ivars out of Tab and convert all callers to use WebStates instead.  This is the equivalent of desktop getting rid of TabContents.

Generally speaking, code will move into:
1) A tab helper object, which will usually subclass WebStateUserData and WebStateObserver.
2) WebStateDelegate.
3) Core navigation logic may move into //ios/web.

This doc explains how to get rid of Tab in details:
https://docs.google.com/document/d/19MaNmdx3KiR8cwUR3WIgj59fqfpzOGnQsm9N_dxClD4/edit?hl=en#
 
Blocking: 579697
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 18 2017

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

commit b721caa478257949628e2eda07bb1dd9588285ad
Author: eugenebut <eugenebut@chromium.org>
Date: Wed Jan 18 16:18:11 2017

Implemented FormResubmissionTabHelper.

FormResubmissionTabHelper fully encapsulates the logic of Form
Resubmission dialog presentation so this code can be moved to
WebStateDelegate.

Previously Resubmission Dialog was dismissed in
webWillAddPendingURL:transition: callback. With this change dismissal happens
after provisional navigation is started which should not make any noticeable
difference in app behavior.

BUG= 674991 ,681867

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

[modify] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/chrome/browser/web/BUILD.gn
[add] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/chrome/browser/web/form_resubmission_tab_helper.h
[add] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/chrome/browser/web/form_resubmission_tab_helper.mm
[add] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/chrome/browser/web/form_resubmission_tab_helper_unittest.mm
[modify] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/web/public/test/fakes/test_web_state.h
[modify] https://crrev.com/b721caa478257949628e2eda07bb1dd9588285ad/ios/web/public/test/fakes/test_web_state.mm

Project Member

Comment 4 by bugdroid1@chromium.org, Jan 20 2017

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

commit 746baec6650e544f81bc8a7def3b13da13fbef51
Author: rohitrao <rohitrao@chromium.org>
Date: Fri Jan 20 16:20:43 2017

[ios] Remove the openJavascript method from Tab.

Moves the implementation up into BrowserViewController, which is the only
caller.  BVC now processes the input JS lightly and then calls
WebState::ExecuteJavascript() directly.

BUG=681867

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

[modify] https://crrev.com/746baec6650e544f81bc8a7def3b13da13fbef51/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/746baec6650e544f81bc8a7def3b13da13fbef51/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/746baec6650e544f81bc8a7def3b13da13fbef51/ios/chrome/browser/ui/browser_view_controller.mm

Project Member

Comment 5 by bugdroid1@chromium.org, Jan 23 2017

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

commit 3579f53085d00ff7a80eb97bb644a90becddc068
Author: sdefresne <sdefresne@chromium.org>
Date: Mon Jan 23 12:15:39 2017

WebStateList is an array of web::WebState* wrappers.

Introduce a super class of TabModel with the goal of moving all
the code dealing with Tab management (iteration, selection, ...)
eventually.

This is a first step in removing the Tab* class that is mostly
used as an Objective-C wrapper of web::WebState* with lots of
helper methods.

BUG=681867

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

[modify] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/chrome/browser/tabs/tab_model.h
[modify] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/chrome/browser/tabs/tab_model_unittest.mm
[add] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/shared/chrome/browser/tabs/BUILD.gn
[add] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/shared/chrome/browser/tabs/web_state_handle.h
[add] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/shared/chrome/browser/tabs/web_state_list.h
[add] https://crrev.com/3579f53085d00ff7a80eb97bb644a90becddc068/ios/shared/chrome/browser/tabs/web_state_list.mm

Comment 6 by pkl@chromium.org, Jan 23 2017

Blockedon: 684063
Project Member

Comment 8 by bugdroid1@chromium.org, Jan 25 2017

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

commit 297553e500df8ab7a94e4b5a89dda921a203e781
Author: sdefresne <sdefresne@chromium.org>
Date: Wed Jan 25 17:09:37 2017

Revert of WebStateList is an array of web::WebState* wrappers. (patchset #3 id:40001 of https://codereview.chromium.org/2640093004/ )

Reason for revert:
After offline discussion, WebStateList should probably be a C++ class with a std::vector<WebState*>. Reverting this CL as next step of the refactoring would more or less be a manual revert.

Original issue's description:
> WebStateList is an array of web::WebState* wrappers.
>
> Introduce a super class of TabModel with the goal of moving all
> the code dealing with Tab management (iteration, selection, ...)
> eventually.
>
> This is a first step in removing the Tab* class that is mostly
> used as an Objective-C wrapper of web::WebState* with lots of
> helper methods.
>
> BUG=681867
>
> Review-Url: https://codereview.chromium.org/2640093004
> Cr-Commit-Position: refs/heads/master@{#445362}
> Committed: https://chromium.googlesource.com/chromium/src/+/3579f53085d00ff7a80eb97bb644a90becddc068

TBR=marq@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=681867

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

[modify] https://crrev.com/297553e500df8ab7a94e4b5a89dda921a203e781/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/297553e500df8ab7a94e4b5a89dda921a203e781/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/297553e500df8ab7a94e4b5a89dda921a203e781/ios/chrome/browser/tabs/tab_model.h
[modify] https://crrev.com/297553e500df8ab7a94e4b5a89dda921a203e781/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/297553e500df8ab7a94e4b5a89dda921a203e781/ios/chrome/browser/tabs/tab_model_unittest.mm
[delete] https://crrev.com/0a4e2e647f579fc30f46b88acd1a63fafeca9058/ios/shared/chrome/browser/tabs/BUILD.gn
[delete] https://crrev.com/0a4e2e647f579fc30f46b88acd1a63fafeca9058/ios/shared/chrome/browser/tabs/web_state_handle.h
[delete] https://crrev.com/0a4e2e647f579fc30f46b88acd1a63fafeca9058/ios/shared/chrome/browser/tabs/web_state_list.h
[delete] https://crrev.com/0a4e2e647f579fc30f46b88acd1a63fafeca9058/ios/shared/chrome/browser/tabs/web_state_list.mm

Project Member

Comment 9 by bugdroid1@chromium.org, Jan 27 2017

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

commit b28df93e8b400bb452521c8e9a21a41de8771df9
Author: pkl <pkl@chromium.org>
Date: Fri Jan 27 03:39:21 2017

Pass WebState to NativeAppNavigationController

This is the initial step of getting rid of Tab from
NativeAppNavigationController. In the interim, both WebState and Tab
are passed and NativeAppNavigationController will prefer the use
of WebState over that of Tab whenever possible.

BUG=681867

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

[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/BUILD.gn
[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/DEPS
[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_controller.h
[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_controller.mm
[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_controller_unittest.mm
[add] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_util.h
[add] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_util.mm
[add] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/native_app_launcher/native_app_navigation_util_unittest.mm
[modify] https://crrev.com/b28df93e8b400bb452521c8e9a21a41de8771df9/ios/chrome/browser/tabs/tab.mm

Project Member

Comment 10 by bugdroid1@chromium.org, Feb 10 2017

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

commit b2bf3cb69cae29c1dc85f23a18f2f36587290c1e
Author: rohitrao <rohitrao@chromium.org>
Date: Fri Feb 10 14:10:36 2017

[ios] Moves find-in-page code out of Tab and into FindTabHelper.

BUG=681867

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

[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/find_in_page/BUILD.gn
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/find_in_page/find_in_page_controller.mm
[add] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/find_in_page/find_tab_helper.h
[add] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/find_in_page/find_tab_helper.mm
[add] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/find_in_page/find_tab_helper_unittest.mm
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/browser/ui/browser_view_controller_unittest.mm
[modify] https://crrev.com/b2bf3cb69cae29c1dc85f23a18f2f36587290c1e/ios/chrome/test/BUILD.gn

Blockedon: 691073
Blocking: -579697
Components: -UI>Browser>Core Internals
Project Member

Comment 14 by bugdroid1@chromium.org, Aug 10 2017

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

commit af46af9f93aad007a4bd053612733592ea781981
Author: Rohit Rao <rohitrao@google.com>
Date: Thu Aug 10 12:52:30 2017

[ios] Removes the |infoBarManager| property from Tab.

Callers are converted to use InfoBarManagerImpl::FromWebState() instead.

BUG=681867
TEST=No visible impact.  Infobars should continue to show, for example when launching after a crash.

Change-Id: Ic531d749e048475f2a9d57cc3ad5658c0c8a8dcc
Reviewed-on: https://chromium-review.googlesource.com/590128
Commit-Queue: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
Reviewed-by: Justin Cohen <justincohen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#493366}
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/crash_report/BUILD.gn
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/crash_report/crash_restore_helper.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/authentication/re_signin_infobar_delegate.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/infobars/BUILD.gn
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/infobars/infobar_egtest.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/sync/BUILD.gn
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/browser/ui/sync/sync_util.mm
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/test/app/BUILD.gn
[modify] https://crrev.com/af46af9f93aad007a4bd053612733592ea781981/ios/chrome/test/app/chrome_test_util.mm

Labels: -Type-Bug Type-Task
Project Member

Comment 16 by bugdroid1@chromium.org, Aug 23 2017

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

commit 988bca79a90e9aa1e98b669799c10f50d3a19230
Author: Eugene But <eugenebut@google.com>
Date: Wed Aug 23 18:47:58 2017

Moved SadTab related ivars from Tab to SadTabHelper.

This is 1st of 5 refactoring CLs, which will move all SadTab related
code from Tab to SadTabTabHelper.
Next CL: https://chromium-review.googlesource.com/627625

This CL moves _requireReloadAfterBecomingActive and _requireReloadOnDisplay
ivars from Tab to SadTabTabHelper and adds accessors as an incremental
refactoring step. Accessors will be removed in the final refactoring CL:
https://chromium-review.googlesource.com/627589

Bug: 681867
Change-Id: I2ec23d8791aae19130bb8e69506694431dbceac7
Reviewed-on: https://chromium-review.googlesource.com/627624
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#496742}
[modify] https://crrev.com/988bca79a90e9aa1e98b669799c10f50d3a19230/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/988bca79a90e9aa1e98b669799c10f50d3a19230/ios/chrome/browser/web/sad_tab_tab_helper.h
[modify] https://crrev.com/988bca79a90e9aa1e98b669799c10f50d3a19230/ios/chrome/browser/web/sad_tab_tab_helper.mm

Project Member

Comment 17 by bugdroid1@chromium.org, Aug 23 2017

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

commit d1500f7a3a290b33dd2c5fcc9686f4430ea08b60
Author: Eugene But <eugenebut@google.com>
Date: Wed Aug 23 21:32:40 2017

Moved some Sad Tab code from tab to SadTabTabHelper.

This is 2nd of 5 refactoring CLs, which will move all SadTab related
code from Tab to SadTabTabHelper.

Previous CL: https://chromium-review.googlesource.com/627624
Next CL: https://chromium-review.googlesource.com/627626

This CL moves SadTab related code from Tab's renderProcessGoneForWebState:
to SadTabHelper::RenderProcessGone.

Bug: 681867
Change-Id: I530283b46cc9594dd3b19ce385752d0f5dd026ad
Reviewed-on: https://chromium-review.googlesource.com/627625
Commit-Queue: Eugene But <eugenebut@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#496807}
[modify] https://crrev.com/d1500f7a3a290b33dd2c5fcc9686f4430ea08b60/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/d1500f7a3a290b33dd2c5fcc9686f4430ea08b60/ios/chrome/browser/web/sad_tab_tab_helper.mm

Project Member

Comment 18 by bugdroid1@chromium.org, Aug 24 2017

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

commit ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1
Author: Eugene But <eugenebut@google.com>
Date: Thu Aug 24 09:09:48 2017

Moved some SadTab code from -[Tab wasShown] to SadTabTabHelper::WasShown

This is 3rd of 5 refactoring CLs, which will move all SadTab related
code from Tab to SadTabTabHelper.

Previous CL: https://chromium-review.googlesource.com/627625
Next CL: https://chromium-review.googlesource.com/627643

This CL moves SadTab related code from Tab's willShow to
SadTabHelper::WillShow and adds relevant unit tests.

Bug: 681867
Change-Id: I87e8ecbe4412eb5b0c1c8455e3e72cc62a77a0bf
Reviewed-on: https://chromium-review.googlesource.com/627626
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#496990}
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/chrome/browser/web/sad_tab_tab_helper.h
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/chrome/browser/web/sad_tab_tab_helper.mm
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/chrome/browser/web/sad_tab_tab_helper_unittest.mm
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/web/public/test/fakes/test_navigation_manager.h
[modify] https://crrev.com/ad9c84cf0cd3d20ff96b74849767df2e1b4cd3d1/ios/web/public/test/fakes/test_navigation_manager.mm

Project Member

Comment 19 by bugdroid1@chromium.org, Aug 25 2017

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

commit 894d5087e1d23dc44ac0411189bfbd92da4e652b
Author: Eugene But <eugenebut@google.com>
Date: Fri Aug 25 15:05:32 2017

Moved code from -[Tab applicationDidBecomeActive] to SadTabTabHelper.

This is 4th of 5 refactoring CLs, which will move all SadTab related
code from Tab to SadTabTabHelper.

Previous CL: https://chromium-review.googlesource.com/627626
Next CL: https://chromium-review.googlesource.com/627589

This CL moves UIApplicationDidBecomeActiveNotification handling from
Tab to SadTabTabHelper and adds relevant unit tests.

Bug: 681867
Change-Id: Idb7880ccfb237a13c0d40487b85c4f93e1c13e7f
Reviewed-on: https://chromium-review.googlesource.com/627643
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497408}
[modify] https://crrev.com/894d5087e1d23dc44ac0411189bfbd92da4e652b/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/894d5087e1d23dc44ac0411189bfbd92da4e652b/ios/chrome/browser/web/sad_tab_tab_helper.h
[modify] https://crrev.com/894d5087e1d23dc44ac0411189bfbd92da4e652b/ios/chrome/browser/web/sad_tab_tab_helper.mm
[modify] https://crrev.com/894d5087e1d23dc44ac0411189bfbd92da4e652b/ios/chrome/browser/web/sad_tab_tab_helper_unittest.mm

Project Member

Comment 20 by bugdroid1@chromium.org, Aug 25 2017

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

commit d50d4f6a0de0138fa003cdd43d4b456088d46ce4
Author: Eugene But <eugenebut@google.com>
Date: Fri Aug 25 19:46:19 2017

Removed unused accessors from SadTabTabHelper.

This is 5th of 5 refactoring CLs, which will move all SadTab related
code from Tab to SadTabTabHelper.

Previous CL: https://chromium-review.googlesource.com/627643

This CL removes accessors for requires_reload_on_becoming_visible_ and
requires_reload_on_becoming_active_ ivars introduced here:
https://chromium-review.googlesource.com/627624

Bug: 681867
Change-Id: Ia7b5ac8cf48ef8c252c96b3ea8a39a42865dc7ea
Reviewed-on: https://chromium-review.googlesource.com/627589
Commit-Queue: Eugene But <eugenebut@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497506}
[modify] https://crrev.com/d50d4f6a0de0138fa003cdd43d4b456088d46ce4/ios/chrome/browser/web/sad_tab_tab_helper.h

Project Member

Comment 21 by bugdroid1@chromium.org, Dec 7 2017

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

commit 840d3b217376f3ee5366501f948ee12b0499784b
Author: Eugene But <eugenebut@chromium.org>
Date: Thu Dec 07 09:40:11 2017

Deleted -[Tab webViewRemoved] method.

This method is not called and is probaly a cruft from CRWWebDelegate.

Bug: 681867
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Ib6dd682c5889b540008b6807ffdc0bbd07ac83e4
Reviewed-on: https://chromium-review.googlesource.com/811291
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522387}
[modify] https://crrev.com/840d3b217376f3ee5366501f948ee12b0499784b/ios/chrome/browser/tabs/tab.mm

Project Member

Comment 22 by bugdroid1@chromium.org, Jan 10 2018

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

commit 5b7ae977d3e9cf9d9a104b7609f0e49cc48f7015
Author: Eugene But <eugenebut@google.com>
Date: Wed Jan 10 22:27:46 2018

Removed MobilePageLoaded UMA logging.

This metric counts the number of navigations, excluding chrome:// urls.
Navigation is a different concept from Load and actually mean the URL
change. F.e. a URL fragment change or pushState is "a navigation", but
not "a load". Android logs this metric, but on Android MobilePageLoaded
does what it says (logs PageLoaded event for loads without Desktop user
agent).

No one on Chrome for iOS currently uses this metric and it is better
to remove the metric, which is not uses and simply misleading.

Also Tab class is supposed to be removed, and we should not spend time on
finding a new place for MobilePageLoaded.

Bug: 681867
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I1a3758407bca01669b6756fefda0fc9603b5d1ff
Reviewed-on: https://chromium-review.googlesource.com/852472
Reviewed-by: Peter Lee <pkl@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#528446}
[modify] https://crrev.com/5b7ae977d3e9cf9d9a104b7609f0e49cc48f7015/ios/chrome/browser/metrics/first_user_action_recorder.cc
[modify] https://crrev.com/5b7ae977d3e9cf9d9a104b7609f0e49cc48f7015/ios/chrome/browser/prerender/preload_controller.mm
[modify] https://crrev.com/5b7ae977d3e9cf9d9a104b7609f0e49cc48f7015/ios/chrome/browser/tabs/tab.mm

Description: Show this description
Project Member

Comment 24 by bugdroid1@chromium.org, Jul 26

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

commit b8927e4ff22796a483188858072c82aa1e5738dc
Author: mrefaat <mrefaat@chromium.org>
Date: Thu Jul 26 21:49:57 2018

Remove the usage of CRWWebDelegate's openExternalURL method.

This is the last of CRWWebDelegate methods used by CRWWebController, removing it
will allow deleting the CRWWebDelegate entirely.
Also removed it from Tab and from PreloadController which were implementing them.
The logic of handling external apps is now entirely moved to AppLauncherTabHelper
which is a policy decider and is attached to the web state used by the CRWWebController.

Bug: 850760, 681867,  674991 
Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I2df6282ae561eef2e1da8fac605f42dbfe4cb97b
Reviewed-on: https://chromium-review.googlesource.com/1124942
Commit-Queue: Mohammad Refaat <mrefaat@chromium.org>
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Reviewed-by: Danyao Wang <danyao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#578447}
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/app_launcher/BUILD.gn
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/app_launcher/app_launcher_tab_helper.h
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/app_launcher/app_launcher_tab_helper.mm
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/app_launcher/app_launcher_tab_helper_unittest.mm
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/prerender/preload_controller.mm
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/tabs/tab.h
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/tabs/tab.mm
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/chrome/browser/tabs/tab_unittest.mm
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/web/public/web_state/ui/crw_web_delegate.h
[modify] https://crrev.com/b8927e4ff22796a483188858072c82aa1e5738dc/ios/web/web_state/ui/crw_web_controller.mm

Sign in to add a comment