// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CHROME_BROWSER_UI_TABS_TAB_STRIP_MODEL_DELEGATE_H_ #define CHROME_BROWSER_UI_TABS_TAB_STRIP_MODEL_DELEGATE_H_ #include <memory> #include <optional> #include <vector> #include "base/functional/callback_forward.h" #include "components/sessions/core/session_id.h" #include "components/tab_groups/tab_group_id.h" class Browser; class BrowserWindowInterface; class GURL; namespace tabs { class TabModel; } namespace content { class WebContents; } namespace gfx { class Rect; } namespace tab_groups { class TabGroupId; } /////////////////////////////////////////////////////////////////////////////// // // TabStripModelDelegate // // A delegate interface that the TabStripModel uses to perform work that it // can't do itself, such as obtain a container HWND for creating new // WebContentses, creating new TabStripModels for detached tabs, etc. // // This interface is typically implemented by the controller that instantiates // the TabStripModel (in our case the Browser object). // /////////////////////////////////////////////////////////////////////////////// class TabStripModelDelegate { … }; #endif // CHROME_BROWSER_UI_TABS_TAB_STRIP_MODEL_DELEGATE_H_