blob: 7fb2f2394b6c679bb815b0395abd10da0a5af9cf [file] [log] [blame]
// Copyright 2020 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.
#ifndef COMPONENTS_FAVICON_CONTENT_LARGE_FAVICON_PROVIDER_GETTER_H_
#define COMPONENTS_FAVICON_CONTENT_LARGE_FAVICON_PROVIDER_GETTER_H_
#include "base/callback.h"
namespace content {
class BrowserContext;
}
namespace favicon {
class LargeFaviconProvider;
using LargeFaviconProviderGetter =
base::RepeatingCallback<LargeFaviconProvider*(content::BrowserContext*)>;
// Sets a callback that returns the LargeIconProvider for a given
// BrowserContext. This allows code in //components, such as LargeIconBridge, to
// obtain an implementation of LargeIconProvider even though the
// implementation's factory is unique to each embedder.
void SetLargeFaviconProviderGetter(const LargeFaviconProviderGetter& getter);
LargeFaviconProvider* GetLargeFaviconProvider(content::BrowserContext* context);
} // namespace favicon
#endif // COMPONENTS_FAVICON_CONTENT_LARGE_FAVICON_PROVIDER_GETTER_H_