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

Issue 2721293002: Show the Android Location Settings Dialog when sites want permission. (Closed)

Created:
3 years, 9 months ago by benwells
Modified:
3 years, 9 months ago
Reviewers:
dominickn, Ted C, raymes, qfiard
CC:
chromium-reviews, mlamouri+watch-permissions_chromium.org, mlamouri+watch-geolocation_chromium.org, raymes+watch_chromium.org, Michael van Ouwerkerk, chrome-apps-syd-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Show the Android Location Settings Dialog when sites want permission. The Location Settings Dialog (LSD) will be shown when sites which have location permission request location, but the device has location switched off. BUG=673201 Review-Url: https://codereview.chromium.org/2721293002 Cr-Commit-Position: refs/heads/master@{#454708} Committed: https://chromium.googlesource.com/chromium/src/+/e962df5122998010c9db55d0fb46993f058e7db4

Patch Set 1 #

Total comments: 8

Patch Set 2 : Updated #

Total comments: 4

Patch Set 3 : Rebase and some more stuff #

Total comments: 1

Patch Set 4 : Feedback #

Total comments: 5
Unified diffs Side-by-side diffs Delta from patch set Stats (+328 lines, -61 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/preferences/LocationSettings.java View 1 2 1 chunk +11 lines, -5 lines 0 comments Download
M chrome/browser/android/location_settings.h View 1 2 1 chunk +8 lines, -5 lines 0 comments Download
M chrome/browser/android/location_settings_impl.h View 1 2 1 chunk +3 lines, -3 lines 0 comments Download
M chrome/browser/android/location_settings_impl.cc View 1 2 1 chunk +12 lines, -2 lines 0 comments Download
M chrome/browser/android/mock_location_settings.h View 1 2 2 chunks +20 lines, -10 lines 0 comments Download
M chrome/browser/android/mock_location_settings.cc View 1 2 2 chunks +35 lines, -14 lines 0 comments Download
M chrome/browser/geolocation/geolocation_permission_context_android.h View 1 2 3 3 chunks +33 lines, -1 line 0 comments Download
M chrome/browser/geolocation/geolocation_permission_context_android.cc View 1 2 3 5 chunks +113 lines, -13 lines 5 comments Download
M chrome/browser/geolocation/geolocation_permission_context_unittest.cc View 1 2 3 6 chunks +93 lines, -8 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 38 (19 generated)
benwells
Seems like trybots aren't happy cos the dependent patch needs a rebase, but can maybe ...
3 years, 9 months ago (2017-03-01 07:36:39 UTC) #6
qfiard
lgtm I rebased my change to head today, let me know if you are still ...
3 years, 9 months ago (2017-03-01 20:38:49 UTC) #7
benwells
raymes - i think i'll add a test to this today, so maybe wait for ...
3 years, 9 months ago (2017-03-01 23:22:51 UTC) #8
raymes
Some thoughts below. Thanks! https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode85 chrome/browser/geolocation/geolocation_permission_context_android.cc:85: if (!location_settings_->CanSitesRequestLocationPermission(web_contents)) { I think ...
3 years, 9 months ago (2017-03-02 03:04:04 UTC) #9
benwells
https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode85 chrome/browser/geolocation/geolocation_permission_context_android.cc:85: if (!location_settings_->CanSitesRequestLocationPermission(web_contents)) { On 2017/03/02 03:04:04, raymes wrote: > ...
3 years, 9 months ago (2017-03-02 04:19:28 UTC) #10
raymes
https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode85 chrome/browser/geolocation/geolocation_permission_context_android.cc:85: if (!location_settings_->CanSitesRequestLocationPermission(web_contents)) { On 2017/03/02 04:19:28, benwells wrote: > ...
3 years, 9 months ago (2017-03-02 04:40:18 UTC) #11
benwells
https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode85 chrome/browser/geolocation/geolocation_permission_context_android.cc:85: if (!location_settings_->CanSitesRequestLocationPermission(web_contents)) { On 2017/03/02 04:40:18, raymes wrote: > ...
3 years, 9 months ago (2017-03-02 04:48:02 UTC) #12
raymes
I'm not sure - it's really complicated. 1) In order to return ALLOW we need ...
3 years, 9 months ago (2017-03-02 05:47:11 UTC) #13
raymes
ShouldShowPermissionInfobar will get us whether the Chrome permission is allowed. We may want to factor ...
3 years, 9 months ago (2017-03-02 05:50:39 UTC) #14
benwells
Updated based on chats today. PTAL.
3 years, 9 months ago (2017-03-02 10:54:06 UTC) #19
benwells
+dominickn as raymes is out today
3 years, 9 months ago (2017-03-02 22:47:15 UTC) #21
dominickn
lgtm https://codereview.chromium.org/2721293002/diff/20001/chrome/browser/android/mock_location_settings.h File chrome/browser/android/mock_location_settings.h (right): https://codereview.chromium.org/2721293002/diff/20001/chrome/browser/android/mock_location_settings.h#newcode17 chrome/browser/android/mock_location_settings.h:17: static void SetLocationStatus(bool android, bool system); Nit: can ...
3 years, 9 months ago (2017-03-03 00:08:23 UTC) #22
raymes
I only looked at the implementation in the permission context. It looks much better now, ...
3 years, 9 months ago (2017-03-03 01:07:59 UTC) #23
benwells
+tedchoc for chrome/browser/android and chrome/android owners review https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/1/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode159 chrome/browser/geolocation/geolocation_permission_context_android.cc:159: base::Bind( On ...
3 years, 9 months ago (2017-03-03 01:43:09 UTC) #27
Ted C
lgtm https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode150 chrome/browser/geolocation/geolocation_permission_context_android.cc:150: callback, persist, content_setting)); for my own knowledge if ...
3 years, 9 months ago (2017-03-03 19:37:26 UTC) #30
benwells
https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocation/geolocation_permission_context_android.cc File chrome/browser/geolocation/geolocation_permission_context_android.cc (right): https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocation/geolocation_permission_context_android.cc#newcode150 chrome/browser/geolocation/geolocation_permission_context_android.cc:150: callback, persist, content_setting)); On 2017/03/03 19:37:26, Ted C wrote: ...
3 years, 9 months ago (2017-03-03 23:19:13 UTC) #31
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/2721293002/60001
3 years, 9 months ago (2017-03-03 23:19:33 UTC) #34
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/e962df5122998010c9db55d0fb46993f058e7db4
3 years, 9 months ago (2017-03-03 23:28:08 UTC) #37
Ted C
3 years, 9 months ago (2017-03-03 23:41:13 UTC) #38
Message was sent while issue was closed.
https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocat...
File chrome/browser/geolocation/geolocation_permission_context_android.cc
(right):

https://codereview.chromium.org/2721293002/diff/60001/chrome/browser/geolocat...
chrome/browser/geolocation/geolocation_permission_context_android.cc:150:
callback, persist, content_setting));
On 2017/03/03 23:19:13, benwells wrote:
> On 2017/03/03 19:37:26, Ted C wrote:
> > for my own knowledge if the weakptr is dead by the time this comes back,
will
> > the callback be called?  just deleted? 
> 
> The callback won't be called, it will just deleted / cleaned up. This is what
> weak pointers are good for :)

And I guess if a caller wanted to ensure their callback was "always" called,
they'd need to override the destructor and clean up there.  Only applicable if
their timeline was longer than the geolocation permission context.

Powered by Google App Engine
This is Rietveld 408576698