-
Notifications
You must be signed in to change notification settings - Fork 6.7k
/
chrome_content_settings_utils.h
71 lines (57 loc) · 2.65 KB
/
chrome_content_settings_utils.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright (c) 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_CONTENT_SETTINGS_CHROME_CONTENT_SETTINGS_UTILS_H_
#define CHROME_BROWSER_CONTENT_SETTINGS_CHROME_CONTENT_SETTINGS_UTILS_H_
#include "build/build_config.h"
#include "components/content_settings/core/common/content_settings.h"
// Put utility functions only used by //chrome code here. If a function declared
// here would be meaningfully shared with other platforms, consider moving it to
// components/content_settings/core/browser/content_settings_utils.h.
class GURL;
class Profile;
enum class ContentSettingsType;
namespace content {
class WebContents;
} // namespace content
namespace content_settings {
// UMA histogram for the plugins broken puzzle piece. The enum values
// correspond to histogram entries, so do not remove any existing values.
enum PluginsAction {
PLUGINS_ACTION_TOTAL_NAVIGATIONS = 0,
PLUGINS_ACTION_DISPLAYED_BLOCKED_ICON_IN_OMNIBOX,
PLUGINS_ACTION_DISPLAYED_BUBBLE,
PLUGINS_ACTION_CLICKED_RUN_ALL_PLUGINS_THIS_TIME,
PLUGINS_ACTION_CLICKED_ALWAYS_ALLOW_PLUGINS_ON_ORIGIN,
PLUGINS_ACTION_CLICKED_MANAGE_PLUGIN_BLOCKING,
PLUGINS_ACTION_CLICKED_LEARN_MORE,
PLUGINS_ACTION_COUNT
};
void RecordPluginsAction(PluginsAction action);
// UMA histogram for actions that a user can perform on the pop-up blocked page
// action in the omnibox. The enum values correspond to histogram entries, so do
// not remove any existing values.
enum PopupsAction {
POPUPS_ACTION_DISPLAYED_BLOCKED_ICON_IN_OMNIBOX = 0,
POPUPS_ACTION_DISPLAYED_BUBBLE,
POPUPS_ACTION_SELECTED_ALWAYS_ALLOW_POPUPS_FROM,
POPUPS_ACTION_CLICKED_LIST_ITEM_CLICKED,
POPUPS_ACTION_CLICKED_MANAGE_POPUPS_BLOCKING,
POPUPS_ACTION_DISPLAYED_INFOBAR_ON_MOBILE,
POPUPS_ACTION_CLICKED_ALWAYS_SHOW_ON_MOBILE,
POPUPS_ACTION_COUNT
};
void RecordPopupsAction(PopupsAction action);
// Calls UpdateContentSettingsIcons on the |LocationBar| for |web_contents|.
void UpdateLocationBarUiForWebContents(content::WebContents* web_contents);
#if !defined(OS_ANDROID)
// Returns a string for display alongside UI that describes the given content
// setting in `profile`. This string gives extra, pertinent details about the
// content setting. `url` represents the site for which the given setting
// applies.
std::u16string GetPermissionDetailString(Profile* profile,
ContentSettingsType content_type,
const GURL& url);
#endif
} // namespace content_settings
#endif // CHROME_BROWSER_CONTENT_SETTINGS_CHROME_CONTENT_SETTINGS_UTILS_H_