tab_group_visual_data.cc 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. // Copyright 2019 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "components/tab_groups/tab_group_visual_data.h"
  5. #include <string>
  6. #include "base/containers/contains.h"
  7. #include "base/strings/utf_string_conversions.h"
  8. #include "components/tab_groups/tab_group_color.h"
  9. namespace tab_groups {
  10. TabGroupVisualData::TabGroupVisualData()
  11. : TabGroupVisualData(std::u16string(), TabGroupColorId::kGrey, false) {}
  12. TabGroupVisualData::TabGroupVisualData(std::u16string title,
  13. tab_groups::TabGroupColorId color,
  14. bool is_collapsed)
  15. : title_(std::move(title)), color_(color), is_collapsed_(is_collapsed) {}
  16. TabGroupVisualData::TabGroupVisualData(std::u16string title,
  17. uint32_t color_int,
  18. bool is_collapsed)
  19. : title_(std::move(title)),
  20. color_(TabGroupColorId::kGrey),
  21. is_collapsed_(is_collapsed) {
  22. auto color_id = static_cast<tab_groups::TabGroupColorId>(color_int);
  23. if (base::Contains(tab_groups::GetTabGroupColorLabelMap(), color_id))
  24. color_ = color_id;
  25. }
  26. } // namespace tab_groups