[emulator] bottom edge swipe broken

Bug #1351097 reported by Ricardo Salveti
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
android (Ubuntu)
Fix Released
Undecided
Unassigned
unity8 (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

root@ubuntu-phablet:~# system-image-cli -i
current build number: 166
device name: generic_x86
channel: ubuntu-touch/utopic-proposed
last update: 2014-07-31 17:40:46
version version: 166
version ubuntu: 20140731.1
version device: 20140728.1

Can't use the bottom edge swipe anymore.

Just open the browser and try using the bottom edge part of the screen. Same happens with dialler and messaging.

summary: - [emulator] bottom edge swap broken
+ [emulator] bottom edge swipe broken
description: updated
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

This was working on image 151 (afaik mako 149). So it could be a regression on the unity8/mir side.

tags: added: lt-blocker lt-category-visible lt-prio-high
Gerry Boland (gerboland)
Changed in unity8 (Ubuntu):
assignee: nobody → Gerry Boland (gerboland)
kevin gunn (kgunn72)
Changed in unity8 (Ubuntu):
assignee: Gerry Boland (gerboland) → Robert Carr (robertcarr)
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in android (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
Revision history for this message
Robert Carr (robertcarr) wrote :

The problem is some of the client surface size state fails to update when the surface is resized to 770 pixels tall from 800 pixels tall on start up (due to panel). In particular see qtubuntu glcontext.cpp l121. These eglQuerySurface calls will continue to return 800 pixels tall even after the mir client library reports seeing a buffer 770 pixels tall. A look in to goldfish device source shows that yes, the implemtnation of eglQuerySurface WIDTH/HEIGHT will never change.

One fix may be querying the native window for width/height at buffer swap time...but this seems incorrect and I need to think more and understand the GL translation passthrough mechanism thingy a little better.

Revision history for this message
Robert Carr (robertcarr) wrote :

In addition to querying the native window there has to be some sort of detection that width/height changed, and some sort of pass through message to the host process to resize the host surface....

Does the emulator really not support resizing EGL surfaces?!

Revision history for this message
Robert Carr (robertcarr) wrote :

Working on a temporary fix as a real fix is unlikely to be finished this week...have something prepared just waiting on android tree build to test.

Revision history for this message
Robert Carr (robertcarr) wrote :

Applying http://pastebin.ubuntu.com/7991531/ as a patch against the android device tree fixes things for me. It looks like the emulator never supported resizing EGLWindowSurfaces. The WindowSurfaceon the host side will still be the wrong size...the effects of this are hard to predict. With 5-10 minute sof playing around with the emulator image things seem to work fine...probably because we only resize bigger->smaller atm...things could get broken as we support more.

Now that I am familiar with the codebase and have a workflow for iterating on the device tree I think I will be able to provide a proper fix earyl next week, not sure if people want to take this one in the mean time.

tags: added: lt-whitelisted
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package android - 20140806-1958-0ubuntu2

---------------
android (20140806-1958-0ubuntu2) utopic; urgency=medium

  * goldfish-egl-initial-support-for-surface-resize.patch:
    - Initial support for surface resize (LP: #1351097)
 -- Ricardo Salveti de Araujo <email address hidden> Mon, 11 Aug 2014 00:11:26 -0300

Changed in android (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

Pushed the workaround for now, but would be nice to get the proper fix in place soon.

tags: removed: lt-whitelisted
Changed in unity8 (Ubuntu):
assignee: Robert Carr (robertcarr) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.