chromium/chrome/browser/ui/tabs/organization/tab_organization.cc

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/ui/tabs/organization/tab_organization.h"

#include <optional>
#include <string>
#include <unordered_set>

#include "base/debug/dump_without_crashing.h"
#include "chrome/browser/ui/tabs/organization/tab_data.h"
#include "chrome/browser/ui/tabs/tab_group.h"
#include "chrome/browser/ui/tabs/tab_group_model.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "components/tab_groups/tab_group_id.h"
#include "third_party/abseil-cpp/absl/types/variant.h"

namespace {
constexpr int kMinValidTabsForOrganizing =;
int kNextOrganizationID =;
}

TabOrganization::TabOrganization(
    TabDatas tab_datas,
    std::vector<std::u16string> names,
    int first_new_tab_index,
    absl::variant<size_t, std::u16string> current_name,
    UserChoice choice)
    :{}

TabOrganization::~TabOrganization() {}

const std::u16string TabOrganization::GetDisplayName() const {}

void TabOrganization::AddObserver(TabOrganization::Observer* observer) {}

void TabOrganization::RemoveObserver(TabOrganization::Observer* observer) {}

bool TabOrganization::IsValidForOrganizing() const {}

// TODO(crbug.com/40925231) Add UKM/UMA Logging on user add.
void TabOrganization::AddTabData(std::unique_ptr<TabData> new_tab_data) {}

// TODO(crbug.com/40925231) Add UKM/UMA Logging on user remove.
void TabOrganization::RemoveTabData(TabData::TabID tab_id) {}

void TabOrganization::SetCurrentName(
    absl::variant<size_t, std::u16string> new_current_name) {}

void TabOrganization::Accept() {}

void TabOrganization::Reject() {}

void TabOrganization::OnTabDataUpdated(const TabData* tab_data) {}

void TabOrganization::OnTabDataDestroyed(TabData::TabID tab_id) {}

void TabOrganization::NotifyObserversOfUpdate() {}