Tablet suspends while playing video or audio in browser

Bug #1647895 reported by sam tygier on 2016-12-07
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Canonical System Image
High
David Barth
Oxide
High
Olivier Tilloy
1.18
High
Olivier Tilloy
1.19
High
Olivier Tilloy

Bug Description

In frieza build 246 (20161206) the tablet will suspend while video or audio is playing in the browser. This did not happen in releases a few days ago.

Steps to reproduce
1) Set lock when idle to 1 minute
2) Play a youtube video
3) Tablet suspends after 1 minute, stopping the playback.

Expected result
The idle timer should not start until playback has finish

Also see Bug #1602739

Related branches

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in repowerd (Ubuntu):
status: New → Confirmed
Alexandros Frantzis (afrantzis) wrote :

Thanks for reporting. Please attach /var/log/syslog and /var/log/repowerd.log from an affected device, as these will help us debug the issue.

Olivier Tilloy (osomon) wrote :

I’m seeing this in /var/log/syslog when starting the playback of a youtube video in the browser:

Dec 7 09:51:10 ubuntu-phablet dbus[2791]: apparmor="DENIED" operation="dbus_method_call" bus="session" path="/org/freedesktop/ScreenSaver" interface="org.freedesktop.ScreenSaver" member="Inhibit" mask="send" name="org.freedesktop.ScreenSaver" pid=4647 label="webbrowser-app" peer_pid=3088 peer_label="unconfined"

It looks like oxide is using the wrong PowerSaveBlocker implementation. The corresponding code is https://git.launchpad.net/oxide/tree/shared/browser/device/power_save_blocker_linux.cc#n34.

Olivier Tilloy (osomon) wrote :

I can’t install the terminal app on my frieza at the moment, but on my arale I’m seeing the following values for those environment variables:

XDG_CURRENT_DESKTOP=Unity
DESKTOP_SESSION=ubuntu-touch
XDG_SESSION_TYPE=mir
GDMSESSION=ubuntu-touch
XDG_SESSION_DESKTOP=ubuntu-touch

Given those values, base::nix::DesktopEnvironment GetDesktopEnvironment() will return DESKTOP_ENVIRONMENT_UNITY, which explains why oxide instantiates the FDO implementation of PowerSaveBlocker.

It appears lightdm is responsible for setting XDG_CURRENT_DESKTOP, and it sets it to the value of the "X-LightDM-DesktopName" key in /usr/share/lightdm/sessions/ubuntu-touch.desktop.

I assume changing that value to e.g. "Unity8" would have lots of undesirable side effects, so we probably need to patch oxide to be cleverer at guessing the desktop environment.

Changed in oxide:
milestone: none → branch-1.20
Olivier Tilloy (osomon) on 2016-12-07
Changed in oxide:
assignee: nobody → Olivier Tilloy (osomon)
importance: Undecided → High
status: New → In Progress
no longer affects: repowerd (Ubuntu)
Olivier Tilloy (osomon) on 2016-12-07
Changed in oxide:
status: In Progress → Fix Released
Changed in canonical-devices-system-image:
assignee: nobody → David Barth (dbarth)
importance: Undecided → High
milestone: none → 15
status: New → In Progress
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers