Moving windows between workspaces causes them to "jitter" / jump around

Bug #876575 reported by nimu
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Compiz Core
Fix Released
Low
Daniel van Vugt
Ubutter
Fix Released
Undecided
Unassigned
compiz (Ubuntu)
Fix Released
Low
Unassigned

Bug Description

This bug occurs in combination with window snapping

- Drag any window to the right or left side of the current workspace to make it snap at either side (fill one half of the desktop)
- activate expo mode
- try to drag the window to a different workspace
- See what happens: The mouse and the window start jumping around very fast.

This also seems to happen when moving windows between workspaces with Shift+Ctrl+Alt+<arrow-key>.

WORKAROUND:

In ccsm, go to General > OpenGL and disable "Sync To VBlank".
(To install ccsm you need to install the package "compizconfig-settings-manager")

Tags: performance

Related branches

Revision history for this message
cmat (cmat555) wrote :

Seems like the latest patches fixed this problem for me.

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

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

Revision history for this message
Sebastien Bacher (seb128) wrote :

nimu, is that fixed for you as well?

affects: unity (Ubuntu) → compiz (Ubuntu)
Changed in compiz (Ubuntu):
importance: Undecided → Low
Changed in compiz (Ubuntu):
status: New → Confirmed
affects: unity → compiz
Changed in compiz:
importance: Undecided → Low
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I can't reproduce the issue with the above instructions, but I can reproduce the problem by moving windows with Shift+Ctrl+Alt+<arrow-key>. And the problem is solved for me using this proposed fix:
lp:~vanvugt/compiz-core/fix-880707.2

@nimu, please clarify if that is the same "jitter" problem as you originally described.

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

Confirmed... I will assume I have the same bug unless proven otherwise.

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

Experimental fixes for this and related performance bugs are now available
for testing in ppa:vanvugt/compiz and ppa:vanvugt/unity. For the best
results I recommend trying both together. But testing them individually is
useful too.

IMPORTANT NOTES:

  * The fixes in ppa:vanvugt/compiz REQUIRE that "Sync To VBlank" is ENABLED
    in CompizConfig Settings Manager (OpenGL section).
    This is the default setting when Ubuntu 11.10 is installed.

  * When using ppa:vanvugt/compiz you should DISABLE the workaround
    "Force full screen redraws (buffer swap) on repaint" in
    CompizConfig Settings Manager (Workarounds section).
    This is the default setting when Ubuntu 11.10 is installed.

  * I don't claim to have fixed all tearing. I only claim that the amount of
    tearing in oneiric with the fix is no longer worse than in natty.

  * nouveau: If you are using the "nouveau" driver for NVIDIA chips you will
    need to enable sync-to-vblank support in the driver options because
    nouveau has it disabled by default. You can do this by editing
    /etc/X11/xorg.conf and adding:
       Section "Device"
           Identifier "My Graphics"
           Option "GLXVBlank" "on"
       EndSection
    Then log out and in again for it to take effect.

  * fglrx (Catalyst): The fglrx driver also disables sync-to-vBlank support
    by default. To fix this:
      1. Open Catalyst Control Center.
      2. Go to 3D > More Settings.
      3. Set "Wait for vertical refresh" to
         "On, unless application specifies".

  * Please don't try using the Benchmark plugin in compiz-plugins-extra
    because it is broken and misleading (bug 898548).

Please leave feedback in the relevant bug reports.

- Daniel

---

ppa:vanvugt/compiz | https://launchpad.net/~vanvugt/+archive/compiz
compiz (1:0.9.6+bzr20110929-0ubuntu6vv2) oneiric

  * Added proposed fix for inaccurate frame timing causing tearing and
    stuttering.
    (LP: #880707) (LP: #888039) (LP: #92599) (LP: #798868) (LP: #876575)

ppa:vanvugt/unity | https://launchpad.net/~vanvugt/+archive/unity
unity (4.24.0-0ubuntu2b1vv4) oneiric; urgency=low

  * Fix major performance regressions due to unnecessary UnityFBO binding
    (LP: #861061) (LP: #880707)
    UnityFBO was being bound even when not required. This caused major lag in
    glPaintOutput, which slowed down all rendering. This was seen in reduced
    framerates in apps (LP: #861061) and significantly worse screen tearing
    with Unity 4.x compared to 3.x (LP: #880707).

affects: compiz → compiz-core
Changed in compiz-core:
status: Confirmed → In Progress
Changed in compiz (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Attached a new branch, which smspillaz says should fix the root cause of this bug too.

Changed in compiz (Ubuntu):
assignee: Daniel van Vugt (vanvugt) → nobody
status: In Progress → Confirmed
tags: added: performance
Changed in compiz-core:
status: In Progress → Fix Committed
Changed in compiz-core:
milestone: none → 0.9.7
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Fix released in:
compiz (1:0.9.7.0~bzr2995-0ubuntu1) precise; urgency=low

Changed in compiz (Ubuntu):
status: Confirmed → Fix Released
Changed in compiz-core:
status: Fix Committed → Fix Released
Changed in ubutter:
status: New → Fix Released
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.