While resizing Qt apps window contents jitter about erratically (including during animations)

Bug #1540702 reported by Daniel van Vugt
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Confirmed
Medium
Unassigned
qtmir (Ubuntu)
Confirmed
Medium
Unassigned
qtubuntu (Ubuntu)
Confirmed
Medium
Unassigned
unity8 (Ubuntu)
Invalid
Medium
Daniel d'Andrada

Bug Description

Resizing a window (Scopes) the window contents jitter about erratically. Obviously they should appear to remain stationary unless being significantly repositioned.

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: unity8 8.11+16.04.20160129-0ubuntu1
ProcVersionSignature: Ubuntu 4.4.0-2.16-generic 4.4.0
Uname: Linux 4.4.0-2-generic x86_64
ApportVersion: 2.19.4-0ubuntu2
Architecture: amd64
Date: Tue Feb 2 10:23:02 2016
InstallationDate: Installed on 2015-12-03 (60 days ago)
InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Alpha amd64 (20151202)
SourcePackage: unity8
UpgradeStatus: No upgrade log present (probably fresh install)
upstart.unity8-dash.log:
 ubuntumirclient: Got invalid serialized mime data. Ignoring it.
 ubuntumirclient: Got invalid serialized mime data. Ignoring it.
 ubuntumirclient: Got invalid serialized mime data. Ignoring it.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Hmm, resizing slowly you can also see the dash itself is to blame. It's choosing slightly different icon positions as the window size changes.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Aha! Seems the problem is limited to Unity8-dash.

QtMir is resizing my demo clients perfectly smoothly:
sudo mir_demo_client_egltriangle -m /var/run/user/1000/mir_socket -- --desktop_file_hint=unity8
sudo mir_demo_client_fingerpaint -m /var/run/user/1000/mir_socket -- --desktop_file_hint=unity8

Changed in qtmir:
status: New → Invalid
Changed in qtmir (Ubuntu):
status: New → Invalid
summary: - Resizing a window (Scopes) the window contents jitter about erratically
+ Resizing Scopes the window contents jitter about erratically
description: updated
Revision history for this message
Albert Astals Cid (aacid) wrote : Re: Resizing Scopes the window contents jitter about erratically

> It's choosing slightly different icon positions as the window size changes.
Yes, that's how resizing in the real world behaves, noone wants nor likes opaque resizing.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Nothing else in the real world resizes as poorly as the dash does. I'm not sure what you're talking about.

Moving icons by whole rows to fit new rows is fine. Moving them by single pixels during resizing is what's happening though. And that's obviously a bug.

Revision history for this message
Michał Sawicz (saviq) wrote :

We've just (as in a few hours ago) improved the performance of dash resizes, try it again please.

As for "moving by single pixels", it's rather a design decision whether you wan the items spread out evenly or on a predefined grid.

Changed in unity8 (Ubuntu):
status: New → Incomplete
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I kind of understand what you're trying to do. However it will look bad in environments where the user can live-resize the window. Leave this bug open and you'll eventually just find real users reporting the same complaint.

Sadly I can't log in to Unity8 at all today to test the new version. It's crashing instead (looks like bug 1535297 but happens immediately on login).

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

For an example of a nicer alternative, just open nautilus in Unity7 (or Windows or a Mac), set the view to icons and resize the window.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Finally got logged into Unity8. And after a full system update I can confirm nothing has improved.

Changed in unity8 (Ubuntu):
status: Incomplete → New
summary: - Resizing Scopes the window contents jitter about erratically
+ Resizing Scopes or System Settings from the bottom, window contents
+ jitter about erratically
tags: added: visual-quality
summary: - Resizing Scopes or System Settings from the bottom, window contents
- jitter about erratically
+ While resizing Qt apps window contents jitter about erratically
+ (including during animations)
Changed in unity8 (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Michal Predotka (mpredotka) wrote :

Not sure if that will be any help with fixing the bug but I've noticed the problem is only with right and bottom border of an app window. The top and left are fine whatever side I start resizing from. Also it looks like the title bar does not stutter when resizing, just the rest of the window. I've recorded a short video about it: https://youtu.be/3H48UBpXUUo

Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in unity8 (Ubuntu):
status: New → Confirmed
Revision history for this message
Daniel d'Andrada (dandrader) wrote :

Does it look any better when you resize the same app in Unity 7? If not, I would say it's a problem in Qt, that it's not repositioning and resizing its internal items as fast/smoothly as expected in response to a window resize.

Revision history for this message
Michal Predotka (mpredotka) wrote :

This is how it looks when I start an app from SDK on desktop running 16.04 and resize it: https://youtu.be/qP0ZI28wtUg So basically there's no 'live' update, the window just 'jump' to a new size.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

dandrader:

Unity7 avoids 90% of the problem and is usually smooth resizing the same Qt apps. Although 10% of the time the bug is still visible in Unity7 too.

So there are two problems:
  1. Qt apps resize much more poorly than non-Qt apps (just Ubuntu Qt apps??)
  2. Unity7 resizing any window is much smoother than Unity8 resizing the same app.

Changed in qtmir:
status: Invalid → New
Changed in qtmir (Ubuntu):
status: Invalid → New
tags: added: performance
tags: added: unity8-desktop
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in qtmir (Ubuntu):
status: New → Confirmed
Changed in qtubuntu (Ubuntu):
status: New → Confirmed
Revision history for this message
Victor gonzalez (victor-gonzalez-0) wrote :

I'm experiencing this bug on Yakkety.Video attached

Changed in qtubuntu (Ubuntu):
importance: Undecided → Medium
Changed in qtmir (Ubuntu):
importance: Undecided → Medium
Changed in qtmir:
status: New → Confirmed
Changed in canonical-devices-system-image:
status: New → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I think the web browser's resizing is uniquely broken in ways not seen in other apps. It might be better to discuss browser resizing in bug 1585278 instead.

Changed in unity8 (Ubuntu):
assignee: nobody → Daniel d'Andrada (dandrader)
tags: added: resizing
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Not a Unity8 bug. Qt apps are equally jittery in mir_proving_server.

Changed in unity8 (Ubuntu):
status: Confirmed → Invalid
Changed in canonical-devices-system-image:
importance: Undecided → Medium
Michał Sawicz (saviq)
no longer affects: qtmir
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.