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 "content/browser/media/media_internals_ui.h" 6 7 #include "base/command_line.h" 8 #include "content/browser/media/media_internals_handler.h" 9 #include "content/public/browser/web_contents.h" 10 #include "content/public/browser/web_ui.h" 11 #include "content/public/browser/web_ui_data_source.h" 12 #include "content/public/common/content_switches.h" 13 #include "content/public/common/url_constants.h" 14 #include "grit/content_resources.h" 15 16 namespace content { 17 namespace { 18 19 WebUIDataSource* CreateMediaInternalsHTMLSource() { 20 WebUIDataSource* source = 21 WebUIDataSource::Create(kChromeUIMediaInternalsHost); 22 23 source->SetJsonPath("strings.js"); 24 25 source->AddResourcePath("media_internals.js", IDR_MEDIA_INTERNALS_JS); 26 source->SetDefaultResource(IDR_MEDIA_INTERNALS_HTML); 27 return source; 28 } 29 30 } // namespace 31 32 //////////////////////////////////////////////////////////////////////////////// 33 // 34 // MediaInternalsUI 35 // 36 //////////////////////////////////////////////////////////////////////////////// 37 38 MediaInternalsUI::MediaInternalsUI(WebUI* web_ui) 39 : WebUIController(web_ui) { 40 web_ui->AddMessageHandler(new MediaInternalsMessageHandler()); 41 42 BrowserContext* browser_context = 43 web_ui->GetWebContents()->GetBrowserContext(); 44 WebUIDataSource::Add(browser_context, CreateMediaInternalsHTMLSource()); 45 } 46 47 } // namespace content 48