Merge lp:~mterry/unity-greeter/draw-bg into lp:unity-greeter

Proposed by Michael Terry
Status: Merged
Approved by: Robert Ancell
Approved revision: 711
Merged at revision: 712
Proposed branch: lp:~mterry/unity-greeter/draw-bg
Merge into: lp:unity-greeter
Diff against target: 44 lines (+7/-4)
3 files modified
src/greeter-list.vala (+1/-1)
src/unity-greeter.vala (+5/-2)
tests/unity-greeter.vala (+1/-1)
To merge this branch: bzr merge lp:~mterry/unity-greeter/draw-bg
Reviewer Review Type Date Requested Status
Unity Greeter Development Team Pending
Review via email: mp+141763@code.launchpad.net

Description of the change

During the 12.10 cycle, there was a bit of refactoring, and I was apparently responsible for accidentally dropping a piece of code that drew the window background onto the root window before closing and starting the session.

Without this piece of code, there was a decent chance of seeing graphic corruption during login before the desktop drew itself again. (i.e. a regression in bug 931967)

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/greeter-list.vala'
2--- src/greeter-list.vala 2012-10-18 16:07:50 +0000
3+++ src/greeter-list.vala 2013-01-03 15:18:23 +0000
4@@ -844,7 +844,7 @@
5 background.draw_grid = false;
6 background.queue_draw ();
7
8- UnityGreeter.singleton.start_session (get_lightdm_session ());
9+ UnityGreeter.singleton.start_session (get_lightdm_session (), background);
10 }
11
12 public void login_complete ()
13
14=== modified file 'src/unity-greeter.vala'
15--- src/unity-greeter.vala 2012-10-09 04:49:34 +0000
16+++ src/unity-greeter.vala 2013-01-03 15:18:23 +0000
17@@ -151,9 +151,12 @@
18 return null;
19 }
20
21- public void start_session (string? session)
22+ public void start_session (string? session, Background bg)
23 {
24- /* Set the background */
25+ /* Paint our background onto the root window before we close our own window */
26+ var c = new Cairo.Context (background_surface);
27+ bg.draw_full (c, Background.DrawFlags.NONE);
28+ c = null;
29 refresh_background (Gdk.Screen.get_default (), background_surface);
30
31 if (test_mode)
32
33=== modified file 'tests/unity-greeter.vala'
34--- tests/unity-greeter.vala 2012-09-17 17:58:30 +0000
35+++ tests/unity-greeter.vala 2013-01-03 15:18:23 +0000
36@@ -92,7 +92,7 @@
37 return false;
38 }
39
40- public void start_session (string? session)
41+ public void start_session (string? session, Background bg)
42 {
43 session_started = true;
44 }

Subscribers

People subscribed via source and target branches