Commit 2f2fb876 authored by Amirhossein Simjour's avatar Amirhossein Simjour Committed by Commit Bot

Update UiSuppressedElement for permission bubbles

VrTabHelper is not Android specific anymore, so I remove the
ifdef condition and DCHECK. Moreover, I added a new UiSuppressedElement
that covers the suppression of permission bubble without confusion with
suppression of the PermissionRequest.

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:linux_vr;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I7300ee5cab28d1ce5b95bf6a60e9a67b9aef94a9
Reviewed-on: https://chromium-review.googlesource.com/1175036
Commit-Queue: Amirhossein Simjour <asimjour@chromium.org>
Reviewed-by: default avatarIan Vollick <vollick@chromium.org>
Reviewed-by: default avatarDominick Ng <dominickn@chromium.org>
Cr-Commit-Position: refs/heads/master@{#584723}
parent ab6d480f
......@@ -8,7 +8,6 @@
#include "base/command_line.h"
#include "base/containers/circular_deque.h"
#include "base/feature_list.h"
#include "base/metrics/user_metrics.h"
#include "base/metrics/user_metrics_action.h"
#include "base/strings/string16.h"
......@@ -18,6 +17,7 @@
#include "chrome/browser/permissions/permission_uma_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/permission_bubble/permission_prompt.h"
#include "chrome/browser/vr/ui_suppressed_element.h"
#include "chrome/browser/vr/vr_tab_helper.h"
#include "chrome/common/chrome_switches.h"
#include "components/url_formatter/elide_url.h"
......@@ -25,9 +25,7 @@
#include "content/public/browser/navigation_handle.h"
#include "url/origin.h"
#if defined(OS_ANDROID)
#include "chrome/browser/android/chrome_feature_list.h"
#else // !defined(OS_ANDROID)
#if !defined(OS_ANDROID)
#include "chrome/browser/extensions/extension_ui_util.h"
#include "extensions/common/constants.h"
#endif
......@@ -96,11 +94,6 @@ PermissionRequestManager::~PermissionRequestManager() {
}
void PermissionRequestManager::AddRequest(PermissionRequest* request) {
#if defined(OS_ANDROID)
DCHECK(!vr::VrTabHelper::IsInVr(web_contents()) ||
base::FeatureList::IsEnabled(
chrome::android::kVrBrowsingNativeAndroidUi));
#endif
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDenyPermissionPrompts)) {
......@@ -109,6 +102,13 @@ void PermissionRequestManager::AddRequest(PermissionRequest* request) {
return;
}
if (vr::VrTabHelper::IsUiSuppressedInVr(
web_contents(), vr::UiSuppressedElement::kPermissionBubbleRequest)) {
request->PermissionDenied();
request->RequestFinished();
return;
}
// TODO(tsergeant): change the UMA to no longer mention bubbles.
base::RecordAction(base::UserMetricsAction("PermissionBubbleRequest"));
......
......@@ -26,6 +26,7 @@ enum class UiSuppressedElement : int {
kSslClientCertificate,
kMediaRouterPresentationRequest,
kContextMenu,
kPermissionBubbleRequest,
// This must be last.
kCount,
......
......@@ -86,6 +86,7 @@ bool VrTabHelper::IsUiSuppressedInVr(content::WebContents* contents,
case UiSuppressedElement::kJavascriptDialog:
case UiSuppressedElement::kMediaPermission:
case UiSuppressedElement::kQuotaPermission:
case UiSuppressedElement::kPermissionBubbleRequest:
#if defined(OS_ANDROID)
suppress = !base::FeatureList::IsEnabled(
chrome::android::kVrBrowsingNativeAndroidUi);
......
......@@ -49703,6 +49703,7 @@ Full version information for the fingerprint enum values:
<int value="13"
label="Media router presentation request dialog was suppressed in VR"/>
<int value="14" label="Context menu was suppressed in VR"/>
<int value="15" label="Permission Bubble was suppressed in VR"/>
</enum>
<enum name="VRUnsupportedMode">
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment