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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java

Issue 2458453002: [sensors] Add Permission guard to the generic sensor apis.
Patch Set: rebase + blink reformat Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java
index f2480c39121b16ba931a9395ac9a1f1d93ac7543..1f705399ad566f46ef0dd4ac16800dc3648c11e4 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/WebsitePermissionsFetcher.java
@@ -53,6 +53,8 @@ public class WebsitePermissionsFetcher {
queue.add(new GeolocationInfoFetcher());
// Midi sysex access permission is per-origin and per-embedder.
queue.add(new MidiInfoFetcher());
+ // Sensor access permission is per-origin and per-embedder.
+ queue.add(new SensorInfoFetcher());
// Cookies are stored per-host.
queue.add(new CookieExceptionInfoFetcher());
// Local storage info is per-origin.
@@ -254,6 +256,18 @@ public class WebsitePermissionsFetcher {
}
}
+ private class SensorInfoFetcher extends Task {
+ @Override
+ public void run() {
+ for (SensorInfo info : WebsitePreferenceBridge.getSensorInfo()) {
+ WebsiteAddress origin = WebsiteAddress.create(info.getOrigin());
+ if (origin == null) continue;
+ WebsiteAddress embedder = WebsiteAddress.create(info.getEmbedder());
+ findOrCreateSite(origin, embedder).setSensorInfo(info);
+ }
+ }
+ }
+
private class PopupExceptionInfoFetcher extends Task {
@Override
public void run() {

Powered by Google App Engine
This is Rietveld 408576698