Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Side by Side Diff: chrome/browser/custom_home_pages_table_model.h

Issue 3028030: Remove static caching of default favicon in CustomHomePagesTableModel (Closed)
Patch Set: Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | chrome/browser/custom_home_pages_table_model.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_ 5 #ifndef CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_
6 #define CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_ 6 #define CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
12 #include "app/table_model.h" 12 #include "app/table_model.h"
13 #include "base/scoped_ptr.h"
13 #include "chrome/browser/history/history.h" 14 #include "chrome/browser/history/history.h"
14 #include "chrome/browser/favicon_service.h" 15 #include "chrome/browser/favicon_service.h"
15 #include "googleurl/src/gurl.h" 16 #include "googleurl/src/gurl.h"
16 #include "third_party/skia/include/core/SkBitmap.h" 17 #include "third_party/skia/include/core/SkBitmap.h"
17 18
18 class Profile; 19 class Profile;
19 class TableModelObserver; 20 class TableModelObserver;
20 21
21 // CustomHomePagesTableModel is the model for the TableView showing the list 22 // CustomHomePagesTableModel is the model for the TableView showing the list
22 // of pages the user wants opened on startup. 23 // of pages the user wants opened on startup.
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 // Icon for the page. 65 // Icon for the page.
65 SkBitmap icon; 66 SkBitmap icon;
66 67
67 // If non-zero, indicates we're loading the title for the page. 68 // If non-zero, indicates we're loading the title for the page.
68 HistoryService::Handle title_handle; 69 HistoryService::Handle title_handle;
69 70
70 // If non-zero, indicates we're loading the favicon for the page. 71 // If non-zero, indicates we're loading the favicon for the page.
71 FaviconService::Handle fav_icon_handle; 72 FaviconService::Handle fav_icon_handle;
72 }; 73 };
73 74
74 static void InitClass();
75
76 // Loads the title and favicon for the specified entry. 75 // Loads the title and favicon for the specified entry.
77 void LoadTitleAndFavIcon(Entry* entry); 76 void LoadTitleAndFavIcon(Entry* entry);
78 77
79 // Callback from history service. Updates the title of the Entry whose 78 // Callback from history service. Updates the title of the Entry whose
80 // |title_handle| matches |handle| and notifies the observer of the change. 79 // |title_handle| matches |handle| and notifies the observer of the change.
81 void OnGotTitle(HistoryService::Handle handle, 80 void OnGotTitle(HistoryService::Handle handle,
82 bool found_url, 81 bool found_url,
83 const history::URLRow* row, 82 const history::URLRow* row,
84 history::VisitVector* visits); 83 history::VisitVector* visits);
85 84
(...skipping 16 matching lines...) Expand all
102 Entry* GetEntryByFavIconHandle(FaviconService::Handle handle, 101 Entry* GetEntryByFavIconHandle(FaviconService::Handle handle,
103 int* entry_index); 102 int* entry_index);
104 103
105 // Returns the URL for a particular row, formatted for display to the user. 104 // Returns the URL for a particular row, formatted for display to the user.
106 std::wstring FormattedURL(int row) const; 105 std::wstring FormattedURL(int row) const;
107 106
108 // Set of entries we're showing. 107 // Set of entries we're showing.
109 std::vector<Entry> entries_; 108 std::vector<Entry> entries_;
110 109
111 // Default icon to show when one can't be found for the URL. 110 // Default icon to show when one can't be found for the URL.
112 static SkBitmap default_favicon_; 111 SkBitmap* default_favicon_;
113 112
114 // Profile used to load titles and icons. 113 // Profile used to load titles and icons.
115 Profile* profile_; 114 Profile* profile_;
116 115
117 TableModelObserver* observer_; 116 TableModelObserver* observer_;
118 117
119 // Used in loading titles and favicons. 118 // Used in loading titles and favicons.
120 CancelableRequestConsumer query_consumer_; 119 CancelableRequestConsumer query_consumer_;
121 120
122 DISALLOW_COPY_AND_ASSIGN(CustomHomePagesTableModel); 121 DISALLOW_COPY_AND_ASSIGN(CustomHomePagesTableModel);
123 }; 122 };
124 123
125 #endif // CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_ 124 #endif // CHROME_BROWSER_CUSTOM_HOME_PAGES_TABLE_MODEL_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/custom_home_pages_table_model.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698