#include "components/sync_sessions/open_tabs_ui_delegate_impl.h"
#include <memory>
#include "base/memory/raw_ptr.h"
#include "base/ranges/algorithm.h"
#include "components/sync_sessions/sync_sessions_client.h"
#include "components/sync_sessions/synced_session_tracker.h"
namespace sync_sessions {
OpenTabsUIDelegateImpl::OpenTabsUIDelegateImpl(
const SyncSessionsClient* sessions_client,
const SyncedSessionTracker* session_tracker,
const DeleteForeignSessionCallback& delete_foreign_session_cb)
: … { … }
OpenTabsUIDelegateImpl::~OpenTabsUIDelegateImpl() = default;
bool OpenTabsUIDelegateImpl::GetAllForeignSessions(
std::vector<raw_ptr<const SyncedSession, VectorExperimental>>* sessions) { … }
std::vector<const sessions::SessionWindow*>
OpenTabsUIDelegateImpl::GetForeignSession(const std::string& tag) { … }
bool OpenTabsUIDelegateImpl::GetForeignTab(const std::string& tag,
const SessionID tab_id,
const sessions::SessionTab** tab) { … }
bool OpenTabsUIDelegateImpl::GetForeignSessionTabs(
const std::string& tag,
std::vector<const sessions::SessionTab*>* tabs) { … }
void OpenTabsUIDelegateImpl::DeleteForeignSession(const std::string& tag) { … }
bool OpenTabsUIDelegateImpl::GetLocalSession(
const SyncedSession** local_session) { … }
}