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

Issue 2853803002: Make PermissionRequestManager::requests_ correspond to the active prompt (Closed)

Created:
3 years, 7 months ago by Timothy Loh
Modified:
3 years, 7 months ago
Reviewers:
Robert Sesek, raymes
CC:
chromium-reviews, mlamouri+watch-permissions_chromium.org, tfarina, raymes+watch_chromium.org, mac-reviews_chromium.org, chrome-apps-syd-reviews_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Make PermissionRequestManager::requests_ correspond to the active prompt This patch reworks the usage of the PermissionRequest* vectors in the PermissionRequestManager so that requests_ correponds the the active prompt, if any. In particular, the vector remains empty while requests arrive and is populated immediately before actually creating the prompt UI. We also remove PermissionPrompt::IsVisible() which is no longer needed as we can just check whether the vector is empty. Currently AddRequest() calls immediately push to requests_ if it is empty and otherwise queue the request. TriggerShowBubble() also already has logic to use the queued requests if requests_ is empty. This patch makes AddRequest() only queue requests and leaves moving them to the requests_ vector to TriggerShowBubble(). This patch is preparation for making the vector of requests available to the PermissionPrompt subclasses via the Delegate object, so that on Android we won't need to store a copy of this vector, which can be problematic when requests are cancelled. BUG=606138 Review-Url: https://codereview.chromium.org/2853803002 Cr-Commit-Position: refs/heads/master@{#470158} Committed: https://chromium.googlesource.com/chromium/src/+/86d8eaf62f5dfd8c4d3d9d542d6c4a859ca595fe

Patch Set 1 #

Patch Set 2 : still wip #

Patch Set 3 : zzz #

Patch Set 4 : fix it? :D #

Total comments: 14

Patch Set 5 : address comments #

Patch Set 6 : rebase #

Total comments: 1

Patch Set 7 : SetUpUrl #

Unified diffs Side-by-side diffs Delta from patch set Stats (+83 lines, -81 lines) Patch
M chrome/browser/permissions/permission_context_base_unittest.cc View 1 2 3 4 5 6 11 chunks +33 lines, -20 lines 0 comments Download
M chrome/browser/permissions/permission_prompt_android.h View 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/permissions/permission_prompt_android.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M chrome/browser/permissions/permission_request_manager.h View 1 2 3 4 5 1 chunk +6 lines, -3 lines 0 comments Download
M chrome/browser/permissions/permission_request_manager.cc View 1 2 3 4 5 6 chunks +37 lines, -34 lines 0 comments Download
M chrome/browser/ui/cocoa/permission_bubble/permission_bubble_cocoa.h View 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/ui/cocoa/permission_bubble/permission_bubble_cocoa.mm View 1 chunk +0 lines, -4 lines 0 comments Download
M chrome/browser/ui/permission_bubble/mock_permission_prompt.h View 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/ui/permission_bubble/mock_permission_prompt.cc View 1 2 3 4 5 2 chunks +4 lines, -4 lines 0 comments Download
M chrome/browser/ui/permission_bubble/permission_prompt.h View 1 chunk +0 lines, -3 lines 0 comments Download
M chrome/browser/ui/views/permission_bubble/permission_prompt_impl.h View 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc View 1 chunk +1 line, -5 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 49 (38 generated)
Timothy Loh
3 years, 7 months ago (2017-05-03 06:57:01 UTC) #19
raymes
https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc File chrome/browser/permissions/permission_context_base_unittest.cc (right): https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc#newcode256 chrome/browser/permissions/permission_context_base_unittest.cc:256: decision = AutoResponseType::DENY_ALL; perhaps add else NOTREACHED(); to maintain ...
3 years, 7 months ago (2017-05-04 05:00:05 UTC) #21
Timothy Loh
https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc File chrome/browser/permissions/permission_context_base_unittest.cc (right): https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc#newcode256 chrome/browser/permissions/permission_context_base_unittest.cc:256: decision = AutoResponseType::DENY_ALL; On 2017/05/04 05:00:04, raymes wrote: > ...
3 years, 7 months ago (2017-05-04 08:22:31 UTC) #24
raymes
lgtm with the change to the test below https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc File chrome/browser/permissions/permission_context_base_unittest.cc (right): https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc#newcode267 chrome/browser/permissions/permission_context_base_unittest.cc:267: LoadCompleted(); ...
3 years, 7 months ago (2017-05-08 03:14:26 UTC) #31
Timothy Loh
https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc File chrome/browser/permissions/permission_context_base_unittest.cc (right): https://codereview.chromium.org/2853803002/diff/60001/chrome/browser/permissions/permission_context_base_unittest.cc#newcode267 chrome/browser/permissions/permission_context_base_unittest.cc:267: LoadCompleted(); On 2017/05/08 03:14:26, raymes wrote: > On 2017/05/04 ...
3 years, 7 months ago (2017-05-08 04:06:52 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2853803002/120001
3 years, 7 months ago (2017-05-08 06:02:51 UTC) #39
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/429562)
3 years, 7 months ago (2017-05-08 06:10:03 UTC) #41
Timothy Loh
+rsesek@, can you have a look or stamp for chrome/browser/ui/cocoa/permission_bubble/permission_bubble_cocoa.h/mm? Thanks!
3 years, 7 months ago (2017-05-08 07:25:06 UTC) #43
Robert Sesek
lgtm
3 years, 7 months ago (2017-05-08 14:47:45 UTC) #44
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2853803002/120001
3 years, 7 months ago (2017-05-09 01:18:20 UTC) #46
commit-bot: I haz the power
3 years, 7 months ago (2017-05-09 03:43:27 UTC) #49
Message was sent while issue was closed.
Committed patchset #7 (id:120001) as
https://chromium.googlesource.com/chromium/src/+/86d8eaf62f5dfd8c4d3d9d542d6c...

Powered by Google App Engine
This is Rietveld 408576698