| 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() {
 | 
| 
 |