OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 #include "chrome/browser/ui/webui/uber/uber_ui.h" | 5 #include "chrome/browser/ui/webui/uber/uber_ui.h" |
6 | 6 |
7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
10 #include "chrome/browser/ui/webui/chrome_url_data_manager.h" | 10 #include "chrome/browser/ui/webui/chrome_url_data_manager.h" |
(...skipping 11 matching lines...) Expand all Loading... |
22 using content::WebContents; | 22 using content::WebContents; |
23 | 23 |
24 namespace { | 24 namespace { |
25 | 25 |
26 ChromeWebUIDataSource* CreateUberHTMLSource() { | 26 ChromeWebUIDataSource* CreateUberHTMLSource() { |
27 ChromeWebUIDataSource* source = | 27 ChromeWebUIDataSource* source = |
28 new ChromeWebUIDataSource(chrome::kChromeUIUberHost); | 28 new ChromeWebUIDataSource(chrome::kChromeUIUberHost); |
29 | 29 |
30 source->set_json_path("strings.js"); | 30 source->set_json_path("strings.js"); |
31 source->add_resource_path("uber.js", IDR_UBER_JS); | 31 source->add_resource_path("uber.js", IDR_UBER_JS); |
| 32 source->add_resource_path("uber_utils.js", IDR_UBER_UTILS_JS); |
32 source->set_default_resource(IDR_UBER_HTML); | 33 source->set_default_resource(IDR_UBER_HTML); |
33 | 34 |
| 35 // Hack alert: continue showing "Loading..." until a real title is set. |
| 36 source->AddLocalizedString("pageTitle", IDS_TAB_LOADING_TITLE); |
| 37 |
| 38 source->AddString("settingsHost", |
| 39 ASCIIToUTF16(chrome::kChromeUISettingsHost)); |
| 40 source->AddString("extensionsHost", |
| 41 ASCIIToUTF16(chrome::kChromeUIExtensionsHost)); |
| 42 |
| 43 #if defined(OS_CHROMEOS) |
| 44 source->AddString("aboutPageHost", |
| 45 ASCIIToUTF16(chrome::kAboutOptionsSubPage)); |
| 46 #endif |
| 47 return source; |
| 48 } |
| 49 |
| 50 ChromeWebUIDataSource* CreateUberFrameHTMLSource() { |
| 51 ChromeWebUIDataSource* source = |
| 52 new ChromeWebUIDataSource(chrome::kChromeUIUberFrameHost); |
| 53 |
| 54 source->set_json_path("strings.js"); |
| 55 source->add_resource_path("uber_frame.js", IDR_UBER_FRAME_JS); |
| 56 source->set_default_resource(IDR_UBER_FRAME_HTML); |
| 57 |
34 source->AddLocalizedString("shortProductName", IDS_SHORT_PRODUCT_NAME); | 58 source->AddLocalizedString("shortProductName", IDS_SHORT_PRODUCT_NAME); |
35 | 59 |
36 source->AddString("settingsHost", | 60 source->AddString("settingsHost", |
37 ASCIIToUTF16(chrome::kChromeUISettingsHost)); | 61 ASCIIToUTF16(chrome::kChromeUISettingsHost)); |
38 source->AddLocalizedString("settingsDisplayName", IDS_SETTINGS_TITLE); | 62 source->AddLocalizedString("settingsDisplayName", IDS_SETTINGS_TITLE); |
39 source->AddString("extensionsHost", | 63 source->AddString("extensionsHost", |
40 ASCIIToUTF16(chrome::kChromeUIExtensionsHost)); | 64 ASCIIToUTF16(chrome::kChromeUIExtensionsHost)); |
41 source->AddLocalizedString("extensionsDisplayName", | 65 source->AddLocalizedString("extensionsDisplayName", |
42 IDS_MANAGE_EXTENSIONS_SETTING_WINDOWS_TITLE); | 66 IDS_MANAGE_EXTENSIONS_SETTING_WINDOWS_TITLE); |
43 | |
44 #if defined(OS_CHROMEOS) | 67 #if defined(OS_CHROMEOS) |
45 source->AddString("aboutPageHost", | 68 source->AddString("aboutPageHost", |
46 ASCIIToUTF16(chrome::kAboutOptionsSubPage)); | 69 ASCIIToUTF16(chrome::kAboutOptionsSubPage)); |
47 source->AddLocalizedString("aboutPageDisplayName", IDS_ABOUT_TAB_TITLE); | 70 source->AddLocalizedString("aboutPageDisplayName", IDS_ABOUT_TAB_TITLE); |
48 #endif | 71 #endif |
| 72 |
49 return source; | 73 return source; |
50 } | 74 } |
51 | 75 |
52 } // namespace | 76 } // namespace |
53 | 77 |
54 UberUI::UberUI(content::WebUI* web_ui) : WebUIController(web_ui) { | 78 UberUI::UberUI(content::WebUI* web_ui) : WebUIController(web_ui) { |
55 Profile* profile = Profile::FromWebUI(web_ui); | 79 Profile* profile = Profile::FromWebUI(web_ui); |
56 profile->GetChromeURLDataManager()->AddDataSource(CreateUberHTMLSource()); | 80 profile->GetChromeURLDataManager()->AddDataSource(CreateUberHTMLSource()); |
57 | 81 |
| 82 RegisterSubpage(chrome::kChromeUIUberFrameURL); |
58 RegisterSubpage(chrome::kChromeUISettingsFrameURL); | 83 RegisterSubpage(chrome::kChromeUISettingsFrameURL); |
59 RegisterSubpage(chrome::kChromeUIExtensionsFrameURL); | 84 RegisterSubpage(chrome::kChromeUIExtensionsFrameURL); |
60 #if defined(OS_CHROMEOS) | 85 #if defined(OS_CHROMEOS) |
61 RegisterSubpage(chrome::kChromeUIAboutPageFrameURL); | 86 RegisterSubpage(chrome::kChromeUIAboutPageFrameURL); |
62 #endif | 87 #endif |
63 } | 88 } |
64 | 89 |
65 UberUI::~UberUI() { | 90 UberUI::~UberUI() { |
66 STLDeleteValues(&sub_uis_); | 91 STLDeleteValues(&sub_uis_); |
67 } | 92 } |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 return false; | 131 return false; |
107 } | 132 } |
108 | 133 |
109 // The message was sent from a subpage. | 134 // The message was sent from a subpage. |
110 // TODO(jam) fix this to use interface | 135 // TODO(jam) fix this to use interface |
111 //return subpage->second->GetController()->OverrideHandleWebUIMessage( | 136 //return subpage->second->GetController()->OverrideHandleWebUIMessage( |
112 // source_url, message, args); | 137 // source_url, message, args); |
113 subpage->second->ProcessWebUIMessage(source_url, message, args); | 138 subpage->second->ProcessWebUIMessage(source_url, message, args); |
114 return true; | 139 return true; |
115 } | 140 } |
| 141 |
| 142 // UberFrameUI |
| 143 |
| 144 UberFrameUI::UberFrameUI(content::WebUI* web_ui) : WebUIController(web_ui) { |
| 145 Profile* profile = Profile::FromWebUI(web_ui); |
| 146 profile->GetChromeURLDataManager()->AddDataSource( |
| 147 CreateUberFrameHTMLSource()); |
| 148 } |
| 149 |
| 150 UberFrameUI::~UberFrameUI() { |
| 151 } |
OLD | NEW |