CARVIEW |
Select Language
HTTP/2 301
content-security-policy: script-src 'sha256-1az3CiAdXAaMP3TFl5msfrDjNuSHMdg1ecAgxfZPR50=' 'unsafe-inline' 'strict-dynamic'; object-src 'none'; base-uri 'none'; report-uri https://csp.withgoogle.com/csp/chromium-website/
location: https://www.chromium.org/developers/design-documents/tabtastic-2-requirements
content-type: text/plain; charset=utf-8
accept-ranges: bytes
date: Sat, 11 Oct 2025 05:57:32 GMT
x-served-by: cache-bom-vanm7210056-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1760162252.886972,VS0,VE125
vary: x-fh-requested-host, accept-encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 92
HTTP/2 301
content-security-policy: script-src 'sha256-1az3CiAdXAaMP3TFl5msfrDjNuSHMdg1ecAgxfZPR50=' 'unsafe-inline' 'strict-dynamic'; object-src 'none'; base-uri 'none'; report-uri https://csp.withgoogle.com/csp/chromium-website/
location: /developers/design-documents/tabtastic-2-requirements/
content-type: text/plain; charset=utf-8
accept-ranges: bytes
date: Sat, 11 Oct 2025 05:57:32 GMT
x-served-by: cache-bom-vanm7210075-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1760162252.070732,VS0,VE119
vary: x-fh-requested-host, accept-encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 69
HTTP/2 200
cache-control: max-age=3600
content-encoding: gzip
content-security-policy: script-src 'sha256-1az3CiAdXAaMP3TFl5msfrDjNuSHMdg1ecAgxfZPR50=' 'unsafe-inline' 'strict-dynamic'; object-src 'none'; base-uri 'none'; report-uri https://csp.withgoogle.com/csp/chromium-website/
content-type: text/html; charset=utf-8
etag: "23cc52deb579f9c3c1fd2b42be19597c05b5384a8ea431dd9a60319ca7289b5a"
last-modified: Fri, 10 Oct 2025 02:31:02 GMT
strict-transport-security: max-age=31556926
accept-ranges: bytes
date: Sat, 11 Oct 2025 05:57:32 GMT
x-served-by: cache-bom-vanm7210075-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1760162252.202901,VS0,VE172
vary: x-fh-requested-host, accept-encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 2078
Tabtastic 2 Requirements

The Chromium Projects
Tabtastic 2 Requirements
This page is a collection of requirements for the third generation Chrome tabstrip implementation.
- live tab contents during dragging
- full size dragged representations
- frame fade transition during detach/attach
- dragged representation places tab at relevant position in tabstrip (from jar)
- ability to resume drag in tabstrip after attach
- ability to resume drag in tabstrip after move from overflow UI
- overflow UI capability
- multiselect for drag and close
- independent continuous animations (View::GetAnimator)
- generic TabStrip baseclass that does not deal with TabContentses
- BrowserTabStrip subclass that interacts with TabStripModel (and knows about TabContentses)
- testing for Layout
- general testable interface (View-Controller separation)
- tests for drag and drop using testable interface
- windows 7 integration for drag and drop targets at screen edges in lieu of the current Dock system that we use on Vista and below.
P2s/3s:
- pinned tabs
- tab coloring
Implementing a system capable of supporting all of this will require some tweaks to TabStripModel and a replacement of the existing Tab/TabRenderer/TabStrip/etc system.
We should avoid adding new features/capabilities to the current tabstrip until this system is implemented