blob: d9299eaf53c313bf58e0650455f3add8b289c104 [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2012 The Chromium Authors
[email protected]fb7da4132011-03-15 15:51:002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
blundellbde024d2015-09-30 13:47:075#ifndef CHROME_BROWSER_UI_BROWSER_LIVE_TAB_CONTEXT_H_
6#define CHROME_BROWSER_UI_BROWSER_LIVE_TAB_CONTEXT_H_
[email protected]fb7da4132011-03-15 15:51:007
Roman Arorafa794582021-11-12 00:42:378#include <map>
[email protected]fb7da4132011-03-15 15:51:009#include <string>
10#include <vector>
11
Keishi Hattori0e45c022021-11-27 09:25:5212#include "base/memory/raw_ptr.h"
blundellbde024d2015-09-30 13:47:0713#include "components/sessions/core/live_tab_context.h"
Connie Wan866179b2019-12-18 21:39:3314#include "components/tab_groups/tab_group_id.h"
15#include "components/tab_groups/tab_group_visual_data.h"
chrishab1ba090f2017-08-18 22:00:5016#include "ui/base/ui_base_types.h"
[email protected]fb7da4132011-03-15 15:51:0017
18class Browser;
blundell7bf49a3d2015-09-14 18:38:1119class Profile;
[email protected]fb7da4132011-03-15 15:51:0020
dljamesa0499b62024-03-26 21:49:3021namespace base {
22class Uuid;
23}
24
blundell80c5b2a02015-09-17 18:22:1225namespace content {
26class WebContents;
27}
28
chrishab1ba090f2017-08-18 22:00:5029namespace gfx {
30class Rect;
31}
32
blundellbde024d2015-09-30 13:47:0733// Implementation of LiveTabContext which uses an instance of
[email protected]fb7da4132011-03-15 15:51:0034// Browser in order to fulfil its duties.
blundellbde024d2015-09-30 13:47:0735class BrowserLiveTabContext : public sessions::LiveTabContext {
[email protected]fb7da4132011-03-15 15:51:0036 public:
blundellbde024d2015-09-30 13:47:0737 explicit BrowserLiveTabContext(Browser* browser) : browser_(browser) {}
Peter Boström53c6c5952021-09-17 09:41:2638
39 BrowserLiveTabContext(const BrowserLiveTabContext&) = delete;
40 BrowserLiveTabContext& operator=(const BrowserLiveTabContext&) = delete;
41
blundellbde024d2015-09-30 13:47:0742 ~BrowserLiveTabContext() override {}
[email protected]fb7da4132011-03-15 15:51:0043
blundellbde024d2015-09-30 13:47:0744 // Overridden from LiveTabContext:
dcheng5dd5ff62014-10-21 12:42:3845 void ShowBrowserWindow() override;
Mikel Astize023c572018-03-28 07:56:5646 SessionID GetSessionID() const override;
Joel Hockey38c33892022-06-09 01:51:19