Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(336)

Issue 1343833002: Abstract content::SessionStorageNamespace from core TabRestore code (Closed)

Created:
5 years, 3 months ago by blundell
Modified:
5 years, 3 months ago
Reviewers:
sky
CC:
chromium-reviews, darin-cc_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@extension_tab_helper
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Abstract content::SessionStorageNamespace from core TabRestore code //content dependencies must be abstracted from core TabRestore code in order for that code to be cleanly integrated on iOS. This CL tackles the dependency on content::SessionStorageNamespace. Currently, a TabRestoreService::Tab holds a scoped_refptr to the content::SessionStorageNamespace associated with the WebContents from which that Tab was created. This CL introduces the concept of TabClientData, which is an object that is supplied to the Tab by the TabRestoreServiceClient. Embedders may create subclasses of TabClientData, which they can cast the TabClientData back to when they receive it in their implementations of the relevant TabRestoreServiceDelegate methods. This CL introduces a ContentTabClientData subclass that is a container for a scoped_refptr<content::SessionStorageNamespace>, and changes //chrome-level code to use ContentTabClientData to maintain the association between Tabs and SessionStorageNamespaces. BUG=530171 Committed: https://crrev.com/7f80ba17fa6d0dff158493f6d38554cb7e59c338 Cr-Commit-Position: refs/heads/master@{#349378}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : Use scoped_refptr #

Patch Set 4 : Fixes #

Patch Set 5 : Hopefully fix Windows #

Total comments: 3

Patch Set 6 : Response to review #

Unified diffs Side-by-side diffs Delta from patch set Stats (+212 lines, -59 lines) Patch
M chrome/browser/sessions/chrome_tab_restore_service_client.h View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/sessions/chrome_tab_restore_service_client.cc View 1 2 3 4 5 2 chunks +7 lines, -0 lines 0 comments Download
M chrome/browser/sessions/persistent_tab_restore_service.cc View 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/sessions/tab_restore_service.h View 1 2 3 4 5 3 chunks +6 lines, -4 lines 0 comments Download
M chrome/browser/sessions/tab_restore_service.cc View 1 2 3 4 5 2 chunks +29 lines, -2 lines 0 comments Download
M chrome/browser/sessions/tab_restore_service_delegate.h View 1 2 3 4 5 3 chunks +10 lines, -3 lines 0 comments Download
M chrome/browser/sessions/tab_restore_service_helper.cc View 1 2 3 4 5 5 chunks +12 lines, -27 lines 0 comments Download
M chrome/browser/ui/browser_tab_restore_service_delegate.h View 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/ui/browser_tab_restore_service_delegate.cc View 1 2 3 3 chunks +29 lines, -17 lines 0 comments Download
M components/sessions.gypi View 1 2 3 4 5 2 chunks +3 lines, -0 lines 0 comments Download
M components/sessions/BUILD.gn View 1 2 3 4 5 2 chunks +3 lines, -0 lines 0 comments Download
A components/sessions/content/content_tab_client_data.h View 1 2 3 4 5 1 chunk +37 lines, -0 lines 0 comments Download
A components/sessions/content/content_tab_client_data.cc View 1 2 3 4 5 1 chunk +28 lines, -0 lines 0 comments Download
M components/sessions/core/tab_restore_service_client.h View 1 2 3 4 5 4 chunks +23 lines, -3 lines 0 comments Download
A components/sessions/core/tab_restore_service_client.cc View 1 2 3 4 5 1 chunk +21 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 9 (2 generated)
blundell
https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h File components/sessions/core/tab_restore_service_client.h (right): https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h#newcode44 components/sessions/core/tab_restore_service_client.h:44: class SESSIONS_EXPORT TabClientData : public base::RefCounted<TabClientData> { Note that ...
5 years, 3 months ago (2015-09-15 19:38:57 UTC) #2
sky
https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h File components/sessions/core/tab_restore_service_client.h (right): https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h#newcode44 components/sessions/core/tab_restore_service_client.h:44: class SESSIONS_EXPORT TabClientData : public base::RefCounted<TabClientData> { On 2015/09/15 ...
5 years, 3 months ago (2015-09-15 21:59:49 UTC) #3
blundell
https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h File components/sessions/core/tab_restore_service_client.h (right): https://codereview.chromium.org/1343833002/diff/80001/components/sessions/core/tab_restore_service_client.h#newcode44 components/sessions/core/tab_restore_service_client.h:44: class SESSIONS_EXPORT TabClientData : public base::RefCounted<TabClientData> { On 2015/09/15 ...
5 years, 3 months ago (2015-09-16 11:53:51 UTC) #4
sky
LGTM
5 years, 3 months ago (2015-09-16 19:54:14 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1343833002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1343833002/100001
5 years, 3 months ago (2015-09-17 07:35:01 UTC) #7
commit-bot: I haz the power
Committed patchset #6 (id:100001)
5 years, 3 months ago (2015-09-17 08:06:05 UTC) #8
commit-bot: I haz the power
5 years, 3 months ago (2015-09-17 08:07:07 UTC) #9
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/7f80ba17fa6d0dff158493f6d38554cb7e59c338
Cr-Commit-Position: refs/heads/master@{#349378}

Powered by Google App Engine
This is Rietveld 408576698