Chromium Code Reviews| Index: ios/chrome/browser/favicon/favicon_attributes_provider.h |
| diff --git a/ios/chrome/browser/favicon/favicon_attributes_provider.h b/ios/chrome/browser/favicon/favicon_attributes_provider.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..49fc52371a9d9b9850f47f099a104dc3717f19e9 |
| --- /dev/null |
| +++ b/ios/chrome/browser/favicon/favicon_attributes_provider.h |
| @@ -0,0 +1,44 @@ |
| +// Copyright 2016 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 IOS_CHROME_BROWSER_FAVICON_FAVICON_ATTRIBUTES_PROVIDER_H_ |
| +#define IOS_CHROME_BROWSER_FAVICON_FAVICON_ATTRIBUTES_PROVIDER_H_ |
| + |
| +#import <UIKit/UIKit.h> |
| +#import "ios/chrome/browser/favicon/favicon_attributes.h" |
|
noyau (Ping after 24h)
2016/10/04 12:05:58
Probably not needed, could be replaced by @class.
|
| + |
| +namespace favicon { |
| +class LargeIconService; |
| +} // namespace favicon |
| + |
| +@class FaviconViewProvider; |
| +class GURL; |
| + |
| +// Object to fetch favicon attributes by URL - an image or a fallback icon if |
| +// there is no favicon image available with large enough resolution. |
| +@interface FaviconAttributesProvider : NSObject |
|
noyau (Ping after 24h)
2016/10/03 14:52:10
Can't this object be C++?
stkhapugin
2016/10/04 11:47:18
This is basically a UIKit-friendly ObjC wrapper fo
noyau (Ping after 24h)
2016/10/04 12:05:58
I'm not arguing the utility of this class, which h
|
| +// Favicon attributes associated with |URL| will be fetched using |
| +// |largeIconService|. The favicon will be rendered with height and width equal |
| +// to |faviconSize|, and the image will be fetched if the source size is greater |
| +// than or equal to |minFaviconSize|. |
| +- (instancetype)initWithFaviconSize:(CGFloat)faviconSize |
| + minFaviconSize:(CGFloat)minFaviconSize |
| + largeIconService:(favicon::LargeIconService*)largeIconService |
| + NS_DESIGNATED_INITIALIZER; |
| +- (instancetype)init NS_UNAVAILABLE; |
| + |
| +// Fetches favicon attributes and calls the completion block. |
| +- (void)fetchFaviconAttributesForURL:(const GURL&)URL |
| + completion:(void (^)(FaviconAttributes*))completion; |
| + |
| +// LargeIconService used to fetch favicons. |
| +@property(nonatomic, readonly) favicon::LargeIconService* largeIconService; |
| +// Minimal acceptable favicon size. Below that, will fall back to a monogram. |
| +@property(nonatomic, readonly) CGFloat minSize; |
| +// Expected favicon size (in points). Will downscale favicon to this. |
| +@property(nonatomic, readonly) CGFloat faviconSize; |
| + |
| +@end |
| + |
| +#endif // IOS_CHROME_BROWSER_FAVICON_FAVICON_ATTRIBUTES_PROVIDER_H_ |