blob: 2cf2e3bb2f1739b78d6759e292c4df5a0c982823 [file] [log] [blame]
// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/common/web_application_info.h"
#include "third_party/blink/public/mojom/manifest/manifest.mojom.h"
// WebApplicationIconInfo
WebApplicationIconInfo::WebApplicationIconInfo() = default;
WebApplicationIconInfo::WebApplicationIconInfo(const GURL& url,
SquareSizePx size)
: url(url), square_size_px(size) {}
WebApplicationIconInfo::WebApplicationIconInfo(const WebApplicationIconInfo&) =
default;
WebApplicationIconInfo::WebApplicationIconInfo(WebApplicationIconInfo&&) =
default;
WebApplicationIconInfo::~WebApplicationIconInfo() = default;
WebApplicationIconInfo& WebApplicationIconInfo::operator=(
const WebApplicationIconInfo&) = default;
WebApplicationIconInfo& WebApplicationIconInfo::operator=(
WebApplicationIconInfo&&) = default;
// WebApplicationShortcutsMenuItemInfo::Icon
WebApplicationShortcutsMenuItemInfo::Icon::Icon() = default;
WebApplicationShortcutsMenuItemInfo::Icon::Icon(
const WebApplicationShortcutsMenuItemInfo::Icon&) = default;
WebApplicationShortcutsMenuItemInfo::Icon::Icon(
WebApplicationShortcutsMenuItemInfo::Icon&&) = default;
WebApplicationShortcutsMenuItemInfo::Icon::~Icon() = default;
WebApplicationShortcutsMenuItemInfo::Icon&
WebApplicationShortcutsMenuItemInfo::Icon::operator=(
const WebApplicationShortcutsMenuItemInfo::Icon&) = default;
WebApplicationShortcutsMenuItemInfo::Icon&
WebApplicationShortcutsMenuItemInfo::Icon::operator=(
WebApplicationShortcutsMenuItemInfo::Icon&&) = default;
// WebApplicationShortcutsMenuItemInfo
WebApplicationShortcutsMenuItemInfo::WebApplicationShortcutsMenuItemInfo() =
default;
WebApplicationShortcutsMenuItemInfo::WebApplicationShortcutsMenuItemInfo(
const WebApplicationShortcutsMenuItemInfo& other) = default;
WebApplicationShortcutsMenuItemInfo::WebApplicationShortcutsMenuItemInfo(
WebApplicationShortcutsMenuItemInfo&&) noexcept = default;
WebApplicationShortcutsMenuItemInfo::~WebApplicationShortcutsMenuItemInfo() =
default;
WebApplicationShortcutsMenuItemInfo&
WebApplicationShortcutsMenuItemInfo::operator=(
const WebApplicationShortcutsMenuItemInfo&) = default;
WebApplicationShortcutsMenuItemInfo&
WebApplicationShortcutsMenuItemInfo::operator=(
WebApplicationShortcutsMenuItemInfo&&) noexcept = default;
// WebApplicationInfo
WebApplicationInfo::WebApplicationInfo() = default;
WebApplicationInfo::WebApplicationInfo(const WebApplicationInfo& other) =
default;
WebApplicationInfo::~WebApplicationInfo() = default;
bool operator==(const WebApplicationIconInfo& icon_info1,
const WebApplicationIconInfo& icon_info2) {
return std::tie(icon_info1.url, icon_info1.square_size_px,
icon_info1.purpose) == std::tie(icon_info2.url,
icon_info2.square_size_px,
icon_info2.purpose);
}
std::ostream& operator<<(std::ostream& out,
const WebApplicationIconInfo& icon_info) {
out << "url: " << icon_info.url << " square_size_px: ";
if (icon_info.square_size_px)
out << *icon_info.square_size_px;
else
out << "none";
out << " purpose: " << icon_info.purpose;
return out;
}
bool operator==(const WebApplicationShortcutsMenuItemInfo::Icon& icon1,
const WebApplicationShortcutsMenuItemInfo::Icon& icon2) {
return std::tie(icon1.url, icon1.square_size_px) ==
std::tie(icon2.url, icon2.square_size_px);
}
bool operator==(const WebApplicationShortcutsMenuItemInfo& shortcut_info1,
const WebApplicationShortcutsMenuItemInfo& shortcut_info2) {
return std::tie(shortcut_info1.name, shortcut_info1.url,
shortcut_info1.shortcut_icon_infos) ==
std::tie(shortcut_info2.name, shortcut_info2.url,
shortcut_info2.shortcut_icon_infos);
}