Merge lp://qastaging/~3v1n0/unity/fix-690143 into lp://qastaging/unity

Proposed by Marco Trevisan (Treviño)
Status: Merged
Merged at revision: 1462
Proposed branch: lp://qastaging/~3v1n0/unity/fix-690143
Merge into: lp://qastaging/unity
Diff against target: 554 lines (+169/-33)
13 files modified
plugins/unityshell/src/AbstractIconRenderer.h (+2/-0)
plugins/unityshell/src/BamfLauncherIcon.cpp (+40/-1)
plugins/unityshell/src/BamfLauncherIcon.h (+1/-0)
plugins/unityshell/src/IconRenderer.cpp (+5/-6)
plugins/unityshell/src/Launcher.cpp (+52/-3)
plugins/unityshell/src/Launcher.h (+7/-0)
plugins/unityshell/src/PluginAdapter.cpp (+24/-0)
plugins/unityshell/src/PluginAdapter.h (+3/-0)
plugins/unityshell/src/WindowManager.cpp (+5/-0)
plugins/unityshell/src/WindowManager.h (+6/-0)
plugins/unityshell/src/compizminimizedwindowhandler.h (+14/-6)
plugins/unityshell/src/unityshell.cpp (+1/-16)
plugins/unityshell/unityshell.xml.in (+9/-1)
To merge this branch: bzr merge lp://qastaging/~3v1n0/unity/fix-690143
Reviewer Review Type Date Requested Status
Jason Smith (community) Approve
Review via email: mp+73430@code.qastaging.launchpad.net

This proposal supersedes a proposal from 2011-07-29.

Description of the change

Proposal of merge resubmitted after the update of the branch against the newest unity trunk.
I never experienced the crash that Jason found on my test with this version (as I never found one with the previous one), and it also fixes a new bug introduced by the CompizMinimizedWindowHandler that caused unity not to be notified for some events like the viewport switch (and this was causing some visual issues, like the launcher hiding during the vp switch).

Old merge request message (still valid)
=======================================

Fixed bug #690143 as requested by the design team specifications.

To get this I had to get signals from Compiz related to the viewport switch, so to achive this and to keep the implementation clean, I decided to implement the new PluginAdapter signals compiz_screen_viewport_switch_{started,ended}. They are emitted using the PluginAdapter::NotifyCompizEvent function that is called directly by unityshell (UnityScreen).

So now both Launcher and BamfLauncherIcon are listening to these signals to perform their operations. In particular BamfLauncherIcon uses it to check if, after a viewport switch (or a scale terminate), all the windows of the given Icon are viewable in the current workspace and to update the icon indicator accordingly.

Plus I decided to give also another Icon backlight coloring option, and after talking with JohnLea on #ayatana I also added two more options to the "Backlight Mode":
 - Edge Illumination Toggles: illuminate only the edge of the icons linked to
                              running applications.
 - Backlight and Edge Illumination Toggles: illuminate the background of the
                                            icons linked to running
                                            applications; if the windows
                                            of this application are all in
                                            a non viewable workspace, then
                                            only the edge of the icon is
                                            illuminated.

You can see a working example of the "Backlight and Edge Illumination Toggles" option on this screenshot [1].

[1] https://bugs.launchpad.net/unity/+bug/690143/+attachment/2240766/+files/Unity-Unactive-Icons.png

To post a comment you must log in.
Revision history for this message
Jason Smith (jassmith) wrote : Posted in a previous version of this proposal

Crashes in current trunk

review: Needs Fixing
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote : Posted in a previous version of this proposal

Mhmhm... Maybe I've worked with a too old version but it was working fine. However I'll retry with the current trunk.

Thank you!

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote : Posted in a previous version of this proposal

It seems to work fine here also after merging with upstream, so I'm waiting for a crash log to fix it.

Revision history for this message
Jason Smith (jassmith) wrote :

Works great now

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.