← Back to team overview

ubuntu-webapps-bugs team mailing list archive

[Bug 1428754] [NEW] Persist permission request decisions for a session

 

Public bug reported:

When a user responds to a permission request in Firefox or Chrome, they allow that decision to be remembered for each site.
- Chrome seems to always permanently remember a decision (at least for geolocation and notifications).
- Firefox has the option of remembering for the rest of the session, or remembering permanently.

Ultimately, we want to be where Firefox is and we'll achieve that by
having content settings (or site settings) in Oxide. This will consist
of the permanent storage, an API for managing site settings and the
internal logic for deciding when we need to ask the embedder for a
permission.

However, currently we have no persistence in Oxide (every time a
permission is requested, we ping the embedder to ask for it). Whilst
this works ok for geolocation, it really sucks in the browser because it
means that it pops up a permission request every time a user navigates
to google.com. What's worse is that for some other permission types
(notably, notification), Chromium expects to be able to ask the embedder
via the content API if permission was granted for a site after a
permission request was responded to. This implies that there must be
some persistence in Oxide for it to work correctly.

As part of the content settings work, we should persist all permission
request decisions per-WebContext, for the life of the context. This
means that when opening the browser, it will only request geolocation
permissions for google.com once. The decision will be remembered across
tabs until the browser is closed.

Eventually we'll have a mechanism for storing decisions permanently as
well as an API for forgetting previously remembered decisions, but
that's for another bug.

** Affects: oxide
     Importance: High
     Assignee: Chris Coulson (chrisccoulson)
         Status: Triaged

** Changed in: oxide
   Importance: Undecided => High

** Changed in: oxide
       Status: New => Triaged

** Changed in: oxide
     Assignee: (unassigned) => Chris Coulson (chrisccoulson)

** Changed in: oxide
    Milestone: None => branch-1.7

-- 
You received this bug notification because you are a member of Ubuntu
WebApps bug tracking, which is subscribed to Oxide.
https://bugs.launchpad.net/bugs/1428754

Title:
  Persist permission request decisions for a session

Status in Oxide Webview:
  Triaged

Bug description:
  When a user responds to a permission request in Firefox or Chrome, they allow that decision to be remembered for each site.
  - Chrome seems to always permanently remember a decision (at least for geolocation and notifications).
  - Firefox has the option of remembering for the rest of the session, or remembering permanently.

  Ultimately, we want to be where Firefox is and we'll achieve that by
  having content settings (or site settings) in Oxide. This will consist
  of the permanent storage, an API for managing site settings and the
  internal logic for deciding when we need to ask the embedder for a
  permission.

  However, currently we have no persistence in Oxide (every time a
  permission is requested, we ping the embedder to ask for it). Whilst
  this works ok for geolocation, it really sucks in the browser because
  it means that it pops up a permission request every time a user
  navigates to google.com. What's worse is that for some other
  permission types (notably, notification), Chromium expects to be able
  to ask the embedder via the content API if permission was granted for
  a site after a permission request was responded to. This implies that
  there must be some persistence in Oxide for it to work correctly.

  As part of the content settings work, we should persist all permission
  request decisions per-WebContext, for the life of the context. This
  means that when opening the browser, it will only request geolocation
  permissions for google.com once. The decision will be remembered
  across tabs until the browser is closed.

  Eventually we'll have a mechanism for storing decisions permanently as
  well as an API for forgetting previously remembered decisions, but
  that's for another bug.

To manage notifications about this bug go to:
https://bugs.launchpad.net/oxide/+bug/1428754/+subscriptions


Follow ups

References