[regression] Dash, Launcher, Menu Bar - Unintended shadows are rendered for the Unity Launcher and Panel, when the dash is open

Bug #1043260 reported by Andrea Cimitan on 2012-08-29
38
This bug affects 8 people
Affects Status Importance Assigned to Milestone
Ayatana Design
Critical
John Lea
Unity
Fix Released
Critical
Daniel van Vugt
6.0
Fix Released
Critical
Daniel van Vugt
unity (Ubuntu)
Critical
Unassigned
Quantal
Critical
Unassigned

Bug Description

The shadows in unity staging PPA are not shown without the dash opened and shown *in the dash/unity frames* when the dash is opened, screenshot attached.

Related branches

Andrea Cimitan (cimi) wrote :
Omer Akram (om26er) on 2012-08-29
Changed in unity:
importance: Undecided → Medium
status: New → Confirmed
milestone: none → 6.4
Andrea Cimitan (cimi) wrote :

The launcher should *never* cast a shadow

Daniel van Vugt (vanvugt) wrote :

Looks like bug 1012956. Do you have that fix?

Changed in unity:
status: Confirmed → Incomplete
Changed in unity:
status: Incomplete → New
summary: - Shadows are incorrectly stacked
+ Unintended shadows are rendered for the Unity Launcher and Panel, when
+ the dash is open
Changed in compiz:
importance: Undecided → Medium
milestone: none → 0.9.8.2

@Daniel, the fix for that bug has been committed for a while? This issue appeared on trunk. My guess is if the panel shadow is fixed this may as well

Andrea Cimitan (cimi) wrote :

which commit broke the panel shadow?

Daniel van Vugt (vanvugt) wrote :

Cimi,

The bug was caused by changes to glPaint and the removal of UnityScreen::getWindowPaintList, here:
https://code.launchpad.net/~vanvugt/unity/regionalDamage/+merge/112283

But Sam's fix should work. Doesn't it?
https://code.launchpad.net/~compiz-team/compiz/compiz.fix_1012956/+merge/110954

Andrea Cimitan (cimi) wrote :

I still have the bug, unfortunately, on staging PPA. Quantal version is fine iirc.

Daniel van Vugt (vanvugt) wrote :

Fix/workaround should be:
CCSM > Window Decoration > Shadow windows =
    !(title=unity-panel) & !(title=unity-launcher)
(copied from bug 1012956)

Andrea Cimitan (cimi) wrote :

Tried, doesn't work here. It seems to ne unrelated to the decor plugin, cause I can reproduce the bug unloading decorations

tags: added: 1210b1blockers
Changed in unity:
assignee: nobody → Andrea Azzarone (andyrock)
tags: removed: 1210b1blockers
Andrea Cimitan (cimi) on 2012-08-31
tags: added: unity-visuals-quantal
Daniel van Vugt (vanvugt) wrote :

Not a compiz bug and actually not related to bug 1012956. As Cimi mentions, the problem persists even with the decor plugin unloaded. And decor is what paints compiz shadows. So this is a Unity-only rendering issue.

andyrock says:
"They're not shadows. The problem is that the panel and the launcher are now rendered in the fbo. This fbo will be used to get the blurred area"."

Changed in compiz:
status: New → Invalid
milestone: 0.9.8.2 → none
Changed in unity:
milestone: 6.4 → none
milestone: none → backlog
milestone: backlog → 6.4
status: New → Confirmed
Changed in unity:
milestone: 6.4 → 6.6
Andrea Cimitan (cimi) on 2012-09-03
Changed in unity:
importance: Medium → High
Changed in compiz:
importance: Medium → High
Omer Akram (om26er) on 2012-09-14
affects: compiz → unity (Ubuntu)
Changed in unity (Ubuntu):
status: Invalid → Confirmed
summary: - Unintended shadows are rendered for the Unity Launcher and Panel, when
- the dash is open
+ [regression] Unintended shadows are rendered for the Unity Launcher and
+ Panel, when the dash is open
Changed in unity (Ubuntu Quantal):
assignee: nobody → Andrea Azzarone (andyrock)
Changed in unity:
status: Confirmed → Triaged
Changed in unity (Ubuntu Quantal):
status: Confirmed → Triaged
Andrea Azzarone (azzar1) on 2012-09-14
Changed in unity:
assignee: Andrea Azzarone (andyrock) → nobody
Changed in unity (Ubuntu Quantal):
assignee: Andrea Azzarone (andyrock) → nobody

Increased importance to Critical as due to the massive visual impact of this regression, this is potentially a release blocker bug.

Changed in ayatana-design:
assignee: nobody → John Lea (johnlea)
importance: Undecided → Critical
Changed in unity (Ubuntu Quantal):
importance: High → Critical
Changed in unity:
importance: High → Critical
Changed in ayatana-design:
status: New → Fix Committed
tags: added: udp
summary: - [regression] Unintended shadows are rendered for the Unity Launcher and
- Panel, when the dash is open
+ [regression] Dash, Launcher, Menu Bar - Unintended shadows are rendered
+ for the Unity Launcher and Panel, when the dash is open
Omer Akram (om26er) wrote :

this is how it looks with trunk

Changed in unity:
milestone: 6.6 → 7.0
Daniel van Vugt (vanvugt) wrote :

I think I've found the problem.

The launcher, dash and panel are always separate entities painted separately. When the dash is open, they still get painted separately, each one getting blurred and then coloured (usually darkened). Unity seems to paint the launcher, then panel, then dash.

The problem is that the panel and launcher get rendered before the dash content. So the edges of the dash blur include those blurred and coloured (darkened) pixels already rendered for the launcher and panel.

So it looks like there are several possible ways to fix it:
  (1) Redesign everything and paint all three blur rectangles in one function. That's messy and hard.
  (2) Ensure none of the rectangles are coloured/darkened until after ALL of them have been blurred.
  (3) Cheat. Don't grow your blur region beyond the rectangle you're painting. The edges may look slightly wrong sometimes, but it's not as bad as this bug.
  (4) Save a single copy of the original background texture (with no shell painted on it) and use that single copy as the source for all blur operations. Even better: save a single blur texture to use on all three. That should solve this and speed up active blur 3x!

I think #4 is probably most sensible.

John Lea (johnlea) wrote :

@vanvugt; thanks for looking into this, fixing this regression is super critical because it has a major visual impact.

Could you take on the task of fixing this regression and getting it included into Quantal? Please ping me if you run into any blockers. Thanks!

Changed in unity:
assignee: nobody → Daniel van Vugt (vanvugt)
Omer Akram (om26er) on 2012-09-19
Changed in unity:
status: Triaged → In Progress
Daniel van Vugt (vanvugt) wrote :

Correction: I am probably wrong about option #4 giving a 3x speedup. I was assuming all the blur textures had significant overlap, but they probably don't.

John Lea (johnlea) wrote :

@vanvugt; just having this regression fixed would be great!

Changed in unity:
status: In Progress → Fix Committed
Daniel van Vugt (vanvugt) wrote :

Fix committed into lp:unity at revision 2760

Andrea Azzarone (azzar1) on 2012-09-27
Changed in unity (Ubuntu Quantal):
status: Triaged → Fix Committed
Daniel van Vugt (vanvugt) wrote :

Fix committed into lp:unity/6.0 at revision 2742

Launchpad Janitor (janitor) wrote :
Download full text (4.2 KiB)

This bug was fixed in the package unity - 6.8.0-0ubuntu1

---------------
unity (6.8.0-0ubuntu1) quantal-proposed; urgency=low

  [ Ángel Guzmán Maeso ]
  * debian/unity-crashdb.conf:
    - Update dictionary option for follow latest apport spec

  [ Łukasz 'sil2100' Zemczak ]
  * New upstream release.
    - unity 6.8 candidate segfaults on "app expose" with low gfx mode
      (LP: #1060148)
    - [regression] Dash - Left separator is missing (LP: #1057798)
    - unity-panel-service crashed with SIGSEGV in
      panel_indicator_entry_accessible_get_n_children() from
      atk_object_get_n_accessible_children() (LP: #913324)
    - [regression] If unity is started with maximized dash, unmaximizing the
      dash does not wrap rows (LP: #1053116)
    - Dash lens buttons don't work after changing form factor to maximize on
      desktop (LP: #1053316)
    - Clicking on Workspace Switcher icon when the expo is showing, not always
      closes it 1059759 convert files list deprecated keys (LP: #1059594)
    - Unity through llvmpipe is slow (LP: #1046497)
    - compiz crashed with SIGSEGV in unity::QuicklistView::Show() from
      unity::QuicklistManager::ShowQuicklist() (LP: #1055995)
    - compiz crashed with SIGSEGV from
      unity::dash::HomeLens::Impl::LensSearchFinished() (LP: #1054219)
    - [regression] Starting an app & then locking to launcher is not persistent
      across sessions (LP: #1054645)
    - [regression] Dash, Launcher, Menu Bar - Unintended shadows are rendered
      for the Unity Launcher and Panel, when the dash is open (LP: #1043260)
    - [Unity 6.x] Active blur doesn't update if you disable CCSM > OpenGL >
      Framebuffer object (LP: #1039999)
    - Alt+Tab/Alt+grave brings other window to the front but loses focus
      entirely. (LP: #1035628)
    - Spread - Scaling all the windows is too slow (LP: #1055643)
    - Window management - Middle clicking on a window inside the spread should
      close that window (equivalent action to clicking on the close button)
      (LP: #1052821)
    - Scale window decorations don't have properly rounded corners
      (LP: #1055610)
    - Scale window decorations text does not match theme style (Radiance)
      (LP: #1055609)
    - Spread window decorations does not match the theme when changed
      (LP: #1055605)
    - scaled window decorations are sometimes wider than the window
      (LP: #1053225)
    - Launcher should not auto-hide after dragging an icon, if mouse is still
      over it (LP: #1053978)
    - unity spread window on second click not working when ibus language panel
      is shown. (LP: #1035895)
    - windows.push_back(<uninitialized value>) in
      BamfLauncherIcon::GetFocusableWindows (LP: #1053220)
    - Category emblems are blurry (LP: #1056874)
    - Rendering flaws of the dash previews (LP: #1055455)
    - [UIFe] Social Lens doesn't have authorised and meaningful icon
      (LP: #1056191)
    - [dash] Preview fade out animation hangs occasionally (LP: #1058145)
    - Dash - rendering of ribbons shouldn't be relative (LP: #1057971)
    - Horizontal alignment search box and views below (LP: #1055544)
    - Compiz crashed in cairo_save() from
      unity::Unit...

Read more...

Changed in unity (Ubuntu Quantal):
status: Fix Committed → Fix Released
John Lea (johnlea) on 2012-10-10
Changed in ayatana-design:
status: Fix Committed → Fix Released
tags: added: reviewedbydesignq
removed: udp
Stephen M. Webb (bregma) on 2013-02-17
Changed in unity:
status: Fix Committed → Fix Released
Changed in unity:
status: Fix Released → Fix Committed
Stephen M. Webb (bregma) on 2013-04-03
Changed in unity:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers