New issue
Advanced search Search tips

Issue 783777 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Bug

Blocked on: View detail
issue 661986
issue 911350
issue 923476
issue 228575
issue 320877
issue 620480



Sign in to add a comment

☂ Remove TabModel

Project Member Reported by sdefresne@chromium.org, Nov 10 2017

Issue description

Code should instead use WebState and tab helpers.
 
Owner: sdefresne@chromium.org
Status: Started (was: Untriaged)
Components: Internals
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 16 2018

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

commit 5b1174cb82121658d9d944dda4940eb417b3a300
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Tue Jan 16 15:47:58 2018

Remove WebStateListFastEnumerationHelper.

Port code to iterate over TabModel's WebStateList instead of
TabModel. This is required to eventually remove TabModel.

Add method to create LegacyTabHeper with a mock Tab and use
it to fix tests that created mock TabModel and iterated over
them (no longer possible).

Bug: 783777
Change-Id: I332ada720436228b6567944085c269cae9d7a7ee
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Reviewed-on: https://chromium-review.googlesource.com/867054
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529431}
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/app/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/app/application_delegate/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/app/application_delegate/user_activity_handler.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/app/application_delegate/user_activity_handler_unittest.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/app/main_controller.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/crash_report/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/crash_report/crash_report_helper.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/sessions/ios_chrome_tab_restore_service_client.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/tabs/legacy_tab_helper.h
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/tabs/legacy_tab_helper.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/tabs/tab_model.h
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/browser_view_controller.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/stack_view/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/stack_view/card_set.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/stack_view/card_set_unittest.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tab_switcher/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tab_switcher/tab_model_snapshot.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tab_switcher/tab_model_snapshot_unittest.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tabs/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tabs/tab_strip_controller.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/ui/tabs/tab_strip_controller_unittest.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/browser/web_state_list/BUILD.gn
[delete] https://crrev.com/5df550fb031d7975bbae1a3bb28b7d82d1dd01c9/ios/chrome/browser/web_state_list/web_state_list_fast_enumeration_helper.h
[delete] https://crrev.com/5df550fb031d7975bbae1a3bb28b7d82d1dd01c9/ios/chrome/browser/web_state_list/web_state_list_fast_enumeration_helper.mm
[delete] https://crrev.com/5df550fb031d7975bbae1a3bb28b7d82d1dd01c9/ios/chrome/browser/web_state_list/web_state_list_fast_enumeration_helper_unittest.mm
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/test/app/BUILD.gn
[modify] https://crrev.com/5b1174cb82121658d9d944dda4940eb417b3a300/ios/chrome/test/app/tab_test_util.mm

Owner: ----
Status: Available (was: Started)
Blockedon: 911350
Project Member

Comment 6 by bugdroid1@chromium.org, Jan 14

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

commit be33ae99520fae290262b679c2455d33cf1c38d2
Author: Rohit Rao <rohitrao@chromium.org>
Date: Mon Jan 14 18:52:26 2019

[ios] Removes -[TabModel currentlyReferencedExternalFiles].

This method did not use any of TabModel's private member variables and
was only called from ExternalFileRemoverImpl.  The implementation of
this method has been converted to a free function and moved into
external_file_remover_impl.mm.

BUG=783777

Change-Id: I254b41bb505756f0e5e998340127fc0a8a21b57d
Reviewed-on: https://chromium-review.googlesource.com/c/1409342
Reviewed-by: Sergio Collazos <sczs@chromium.org>
Commit-Queue: Rohit Rao <rohitrao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#622536}
[modify] https://crrev.com/be33ae99520fae290262b679c2455d33cf1c38d2/ios/chrome/browser/tabs/tab_model.h
[modify] https://crrev.com/be33ae99520fae290262b679c2455d33cf1c38d2/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/be33ae99520fae290262b679c2455d33cf1c38d2/ios/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/be33ae99520fae290262b679c2455d33cf1c38d2/ios/chrome/browser/ui/external_file_remover_impl.mm

Comment 7 by rohitrao@chromium.org, Jan 18 (4 days ago)

Blockedon: 923476
Project Member

Comment 8 by bugdroid1@chromium.org, Today (21 hours ago)

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

commit f17f78569099c6b3116e6f6f2f5fde44fb2cb031
Author: Rohit Rao <rohitrao@chromium.org>
Date: Tue Jan 22 20:16:41 2019

[ios] Moves SnapshotCacheWebStateListObserver out of TabModel.

This observer was added to the WebStateList by code in TabModel's
constructor, but it should be part of the snapshot feature.  Instead,
use TabModelListObserver to listen for changes to the TabModelList and
register the snapshot observer that way.

SnapshotCache is shared between the normal and OTR browser states, so
the new SnapshotCacheTabModelListObserver listens for changes to either
browser state.

BUG=783777

Change-Id: I646611a74be5538e1f3a55c0c1d05eaaeb1207ae
Reviewed-on: https://chromium-review.googlesource.com/c/1425791
Reviewed-by: edchin <edchin@chromium.org>
Commit-Queue: Rohit Rao <rohitrao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624897}
[modify] https://crrev.com/f17f78569099c6b3116e6f6f2f5fde44fb2cb031/ios/chrome/browser/snapshots/BUILD.gn
[modify] https://crrev.com/f17f78569099c6b3116e6f6f2f5fde44fb2cb031/ios/chrome/browser/snapshots/snapshot_cache_factory.mm
[add] https://crrev.com/f17f78569099c6b3116e6f6f2f5fde44fb2cb031/ios/chrome/browser/snapshots/snapshot_cache_tab_model_list_observer.h
[add] https://crrev.com/f17f78569099c6b3116e6f6f2f5fde44fb2cb031/ios/chrome/browser/snapshots/snapshot_cache_tab_model_list_observer.mm
[modify] https://crrev.com/f17f78569099c6b3116e6f6f2f5fde44fb2cb031/ios/chrome/browser/tabs/tab_model.mm

Sign in to add a comment