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

Unified Diff: chrome/browser/ui/webui/theme_source.cc

Issue 11885021: Don't derive from ChromeURLDataManager::DataSource, and instead have these classes implement a dele… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: nits 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/theme_source.cc
===================================================================
--- chrome/browser/ui/webui/theme_source.cc (revision 176443)
+++ chrome/browser/ui/webui/theme_source.cc (working copy)
@@ -11,6 +11,7 @@
#include "chrome/browser/resources_util.h"
#include "chrome/browser/themes/theme_service.h"
#include "chrome/browser/themes/theme_service_factory.h"
+#include "chrome/browser/ui/webui/chrome_url_data_manager.h"
#include "chrome/browser/ui/webui/ntp/ntp_resource_cache.h"
#include "chrome/browser/ui/webui/ntp/ntp_resource_cache_factory.h"
#include "chrome/browser/ui/webui/web_ui_util.h"
@@ -40,8 +41,7 @@
// ThemeSource, public:
ThemeSource::ThemeSource(Profile* profile)
- : DataSource(chrome::kChromeUIThemePath, MessageLoop::current()),
- profile_(profile->GetOriginalProfile()) {
+ : profile_(profile->GetOriginalProfile()) {
css_bytes_ = NTPResourceCacheFactory::GetForProfile(profile)->GetNewTabCSS(
profile->IsOffTheRecord());
}
@@ -49,6 +49,10 @@
ThemeSource::~ThemeSource() {
}
+std::string ThemeSource::GetSource() {
+ return chrome::kChromeUIThemePath;
+}
+
void ThemeSource::StartDataRequest(const std::string& path,
bool is_incognito,
int request_id) {
@@ -65,17 +69,19 @@
DCHECK((uncached_path == kNewTabCSSPath && !is_incognito) ||
(uncached_path == kNewIncognitoTabCSSPath && is_incognito));
- SendResponse(request_id, css_bytes_);
+ url_data_source()->SendResponse(request_id, css_bytes_);
return;
- } else {
- int resource_id = ResourcesUtil::GetThemeResourceId(uncached_path);
- if (resource_id != -1) {
- SendThemeBitmap(request_id, resource_id, scale_factor);
- return;
- }
}
+
+
+ int resource_id = ResourcesUtil::GetThemeResourceId(uncached_path);
+ if (resource_id != -1) {
+ SendThemeBitmap(request_id, resource_id, scale_factor);
+ return;
+ }
+
// We don't have any data to send back.
- SendResponse(request_id, NULL);
+ url_data_source()->SendResponse(request_id, NULL);
}
std::string ThemeSource::GetMimeType(const std::string& path) const {
@@ -109,7 +115,7 @@
if (!ThemeService::IsThemeableImage(resource_id))
return NULL;
- return DataSource::MessageLoopForRequestPath(path);
+ return content::URLDataSourceDelegate::MessageLoopForRequestPath(path);
}
bool ThemeSource::ShouldReplaceExistingSource() const {
@@ -131,11 +137,11 @@
scoped_refptr<base::RefCountedMemory> image_data(tp->GetRawData(
resource_id, scale_factor));
- SendResponse(request_id, image_data);
+ url_data_source()->SendResponse(request_id, image_data);
} else {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
const ResourceBundle& rb = ResourceBundle::GetSharedInstance();
- SendResponse(
+ url_data_source()->SendResponse(
request_id,
rb.LoadDataResourceBytesForScale(resource_id, scale_factor));
}

Powered by Google App Engine
This is Rietveld 408576698