- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / cocoa / tab_contents / favicon_util_mac.mm
1 // Copyright (c) 2012 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
5 #include "chrome/browser/ui/cocoa/tab_contents/favicon_util_mac.h"
6
7 #include "chrome/browser/favicon/favicon_tab_helper.h"
8 #include "grit/ui_resources.h"
9 #include "ui/base/resource/resource_bundle.h"
10
11 namespace mac {
12
13 NSImage* FaviconForWebContents(content::WebContents* contents) {
14   FaviconTabHelper* favicon_tab_helper =
15       contents ? FaviconTabHelper::FromWebContents(contents)
16                : NULL;
17   if (favicon_tab_helper && favicon_tab_helper->FaviconIsValid()) {
18     NSImage* image = favicon_tab_helper->GetFavicon().AsNSImage();
19     // The |image| could be nil if the bitmap is null. In that case, fallback
20     // to the default image.
21     if (image) {
22       return image;
23     }
24   }
25
26   ResourceBundle& rb = ResourceBundle::GetSharedInstance();
27   return rb.GetNativeImageNamed(IDR_DEFAULT_FAVICON).ToNSImage();
28 }
29
30 }  // namespace mac