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

Unified Diff: chrome/browser/ui/webui/fileicon_source.h

Issue 11881055: Simplify WebUI data sources. Currently WebUI data sources implement a URLDataSourceDelegate interfa… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: fix issue in about_ui exposed by cros tests Created 7 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/fileicon_source.h
===================================================================
--- chrome/browser/ui/webui/fileicon_source.h (revision 176942)
+++ chrome/browser/ui/webui/fileicon_source.h (working copy)
@@ -10,7 +10,7 @@
#include "base/file_path.h"
#include "chrome/browser/icon_manager.h"
#include "chrome/common/cancelable_task_tracker.h"
-#include "content/public/browser/url_data_source_delegate.h"
+#include "content/public/browser/url_data_source.h"
#include "ui/base/layout.h"
namespace gfx {
@@ -19,15 +19,16 @@
// FileIconSource is the gateway between network-level chrome:
// requests for favicons and the history backend that serves these.
-class FileIconSource : public content::URLDataSourceDelegate {
+class FileIconSource : public content::URLDataSource {
public:
explicit FileIconSource();
- // content::URLDataSourceDelegate implementation.
+ // content::URLDataSource implementation.
virtual std::string GetSource() OVERRIDE;
- virtual void StartDataRequest(const std::string& path,
- bool is_incognito,
- int request_id) OVERRIDE;
+ virtual void StartDataRequest(
+ const std::string& path,
+ bool is_incognito,
+ const content::URLDataSource::GotDataCallback& callback) OVERRIDE;
virtual std::string GetMimeType(const std::string&) const OVERRIDE;
protected:
@@ -36,17 +37,21 @@
// Once the |path| and |icon_size| has been determined from the request, this
// function is called to perform the actual fetch. Declared as virtual for
// testing.
- virtual void FetchFileIcon(const FilePath& path,
- ui::ScaleFactor scale_factor,
- IconLoader::IconSize icon_size,
- int request_id);
+ virtual void FetchFileIcon(
+ const FilePath& path,
+ ui::ScaleFactor scale_factor,
+ IconLoader::IconSize icon_size,
+ const content::URLDataSource::GotDataCallback& callback);
private:
// Contains the necessary information for completing an icon fetch request.
struct IconRequestDetails {
- // The request id corresponding to these details.
- int request_id;
+ IconRequestDetails();
+ ~IconRequestDetails();
+ // The callback to run with the response.
+ content::URLDataSource::GotDataCallback callback;
+
// The requested scale factor to respond with.
ui::ScaleFactor scale_factor;
};

Powered by Google App Engine
This is Rietveld 408576698