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

Side by Side Diff: chrome/browser/ui/webui/plugins/plugins_ui.cc

Issue 2630443002: Plugins: Remove chrome://plugins (Closed)
Patch Set: remove test Created 3 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/ui/webui/plugins/plugins_ui.h ('k') | chrome/test/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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 "chrome/browser/ui/webui/plugins/plugins_ui.h"
6
7 #include <stddef.h>
8
9 #include <algorithm>
10
11 #include "base/macros.h"
12 #include "base/memory/ref_counted_memory.h"
13 #include "build/build_config.h"
14 #include "chrome/browser/profiles/profile.h"
15 #include "chrome/browser/ui/webui/plugins/plugins_handler.h"
16 #include "chrome/common/pref_names.h"
17 #include "chrome/common/url_constants.h"
18 #include "chrome/grit/browser_resources.h"
19 #include "chrome/grit/generated_resources.h"
20 #include "chrome/grit/theme_resources.h"
21 #include "components/pref_registry/pref_registry_syncable.h"
22 #include "content/public/browser/web_ui.h"
23 #include "content/public/browser/web_ui_data_source.h"
24 #include "ui/base/resource/resource_bundle.h"
25
26 #if defined(OS_CHROMEOS)
27 #include "chrome/browser/ui/webui/chromeos/ui_account_tweaks.h"
28 #endif
29
30 namespace {
31
32 content::WebUIDataSource* CreatePluginsUIHTMLSource(Profile* profile) {
33 content::WebUIDataSource* source =
34 content::WebUIDataSource::Create(chrome::kChromeUIPluginsHost);
35
36 source->AddLocalizedString("pluginsTitle", IDS_PLUGINS_TITLE);
37 source->AddLocalizedString("pluginsDetailsModeLink",
38 IDS_PLUGINS_DETAILS_MODE_LINK);
39 source->AddLocalizedString("pluginsNoneInstalled",
40 IDS_PLUGINS_NONE_INSTALLED);
41 source->AddLocalizedString("pluginDisabled", IDS_PLUGINS_DISABLED_PLUGIN);
42 source->AddLocalizedString("pluginDisabledByPolicy",
43 IDS_PLUGINS_DISABLED_BY_POLICY_PLUGIN);
44 source->AddLocalizedString("pluginEnabledByPolicy",
45 IDS_PLUGINS_ENABLED_BY_POLICY_PLUGIN);
46 source->AddLocalizedString("pluginGroupManagedByPolicy",
47 IDS_PLUGINS_GROUP_MANAGED_BY_POLICY);
48 source->AddLocalizedString("pluginDownload", IDS_PLUGINS_DOWNLOAD);
49 source->AddLocalizedString("pluginName", IDS_PLUGINS_NAME);
50 source->AddLocalizedString("pluginVersion", IDS_PLUGINS_VERSION);
51 source->AddLocalizedString("pluginDescription", IDS_PLUGINS_DESCRIPTION);
52 source->AddLocalizedString("pluginPath", IDS_PLUGINS_PATH);
53 source->AddLocalizedString("pluginType", IDS_PLUGINS_TYPE);
54 source->AddLocalizedString("pluginMimeTypes", IDS_PLUGINS_MIME_TYPES);
55 source->AddLocalizedString("pluginMimeTypesMimeType",
56 IDS_PLUGINS_MIME_TYPES_MIME_TYPE);
57 source->AddLocalizedString("pluginMimeTypesDescription",
58 IDS_PLUGINS_MIME_TYPES_DESCRIPTION);
59 source->AddLocalizedString("pluginMimeTypesFileExtensions",
60 IDS_PLUGINS_MIME_TYPES_FILE_EXTENSIONS);
61 source->AddLocalizedString("alwaysAllowed", IDS_PLUGINS_ALWAYS_ALLOWED);
62 source->AddLocalizedString("noPlugins", IDS_PLUGINS_NO_PLUGINS);
63
64 source->SetJsonPath("strings.js");
65 source->AddResourcePath("plugins.js", IDR_PLUGINS_JS);
66 source->SetDefaultResource(IDR_PLUGINS_HTML);
67 #if defined(OS_CHROMEOS)
68 chromeos::AddAccountUITweaksLocalizedValues(source, profile);
69 #endif
70 source->AddResourcePath("chrome/browser/ui/webui/plugins/plugins.mojom",
71 IDR_PLUGINS_MOJO_JS);
72
73 return source;
74 }
75
76 } // namespace
77
78 PluginsUI::PluginsUI(content::WebUI* web_ui) : MojoWebUIController(web_ui) {
79 // Set up the chrome://plugins/ source.
80 Profile* profile = Profile::FromWebUI(web_ui);
81 content::WebUIDataSource::Add(profile, CreatePluginsUIHTMLSource(profile));
82 }
83
84 PluginsUI::~PluginsUI() {}
85
86 // static
87 base::RefCountedMemory* PluginsUI::GetFaviconResourceBytes(
88 ui::ScaleFactor scale_factor) {
89 return ResourceBundle::GetSharedInstance().LoadDataResourceBytesForScale(
90 IDR_PLUGINS_FAVICON, scale_factor);
91 }
92
93 // static
94 void PluginsUI::RegisterProfilePrefs(
95 user_prefs::PrefRegistrySyncable* registry) {
96 registry->RegisterBooleanPref(prefs::kPluginsShowDetails, false);
97 registry->RegisterDictionaryPref(
98 prefs::kContentSettingsPluginWhitelist,
99 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
100 }
101
102 void PluginsUI::BindUIHandler(
103 mojo::InterfaceRequest<mojom::PluginsPageHandler> request) {
104 plugins_handler_.reset(new PluginsPageHandler(web_ui(), std::move(request)));
105 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/plugins/plugins_ui.h ('k') | chrome/test/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698