// Copyright 2024 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_WEB_APPLICATIONS_WEB_APP_ICON_OPERATIONS_H_ #define CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_ICON_OPERATIONS_H_ #include <tuple> #include "base/containers/flat_set.h" #include "chrome/browser/web_applications/web_app_install_info.h" #include "ui/gfx/geometry/size.h" #include "url/gurl.h" namespace gfx { class Size; } // namespace gfx namespace web_app { // A size of (0,0) means unspecified width & height. Use // CreateForUnspecifiedSize() to construct the icon metadata for those // use-cases, otherwise Create() will crash. struct IconUrlWithSize { … }; IconUrlSizeSet; // Form a list of icons and their sizes to download: Remove icons with invalid // urls. IconUrlSizeSet GetValidIconUrlsToDownload( const WebAppInstallInfo& web_app_info); } // namespace web_app #endif // CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_ICON_OPERATIONS_H_