← Back to team overview

ubuntu-webapps-bugs team mailing list archive

[Bug 1486645] [NEW] Use QCoreApplication::applicationName for the token used to request access to microphone

 

Public bug reported:

(originally reported at
https://bugs.launchpad.net/oxide/+bug/1410996/comments/6)

I just did a quick test by modifying the webview implementation in the
browser to always accept media access permission requests:

    WebView {
        onMediaAccessPermissionRequested: request.allow()
    }

And this is enough to make audio recording just work (successfully
tested with https://voice-memos.appspot.com/).

The first time the browser requests access to the microphone, I get a trust prompt saying: "Chrome input wants to record audio.".
This decision is remembered, but when I go to system-settings>security>access>mic, there is an empty entry for the browser (chrome input). The contents of /home/phablet/.local/share/PulseAudio/trust.db is as follows:

    sqlite> select * from requests;
    Id|ApplicationId|Feature|Timestamp|Answer
    1|Chrome input|0|1439981817195438084|1

This is not very user friendly, I guess system settings try to match the
application ID ("Chrome input") with an existing app, and failing to do
that it displays an empty entry.

Oxide should use the application name (as exposed by
QCoreApplication::applicationName) for the access token.

This will probably require patching chromium, as the token is hardcoded
in src/media/audio/pulse/audio_manager_pulse.cc.

** Affects: oxide
     Importance: Undecided
         Status: New

-- 
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/1486645

Title:
  Use QCoreApplication::applicationName for the token used to request
  access to microphone

Status in Oxide:
  New

Bug description:
  (originally reported at
  https://bugs.launchpad.net/oxide/+bug/1410996/comments/6)

  I just did a quick test by modifying the webview implementation in the
  browser to always accept media access permission requests:

      WebView {
          onMediaAccessPermissionRequested: request.allow()
      }

  And this is enough to make audio recording just work (successfully
  tested with https://voice-memos.appspot.com/).

  The first time the browser requests access to the microphone, I get a trust prompt saying: "Chrome input wants to record audio.".
  This decision is remembered, but when I go to system-settings>security>access>mic, there is an empty entry for the browser (chrome input). The contents of /home/phablet/.local/share/PulseAudio/trust.db is as follows:

      sqlite> select * from requests;
      Id|ApplicationId|Feature|Timestamp|Answer
      1|Chrome input|0|1439981817195438084|1

  This is not very user friendly, I guess system settings try to match
  the application ID ("Chrome input") with an existing app, and failing
  to do that it displays an empty entry.

  Oxide should use the application name (as exposed by
  QCoreApplication::applicationName) for the access token.

  This will probably require patching chromium, as the token is
  hardcoded in src/media/audio/pulse/audio_manager_pulse.cc.

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


Follow ups