~ilja-smoli/do/gtg

« back to all changes in this revision

Viewing changes to GNOME-Session/src/PowerManagement.cs

  • Committer: Chris S.
  • Date: 2009-10-25 20:04:16 UTC
  • Revision ID: chris@szikszoy.com-20091025200416-huysjltv82ez7w56
Lock the screen before suspending or hibernating

Show diffs side-by-side

added added

removed removed

Lines of Context:
81
81
                {
82
82
                        try {
83
83
                                object instance = BusInstance;
84
 
                                if (instance is IDeviceKitPower)
 
84
                                if (instance is IDeviceKitPower) {
 
85
                                        ScreenSaver.Lock ();
85
86
                                        (instance as IDeviceKitPower).Hibernate ();
86
 
                                else if (instance is IPowerManagement)
 
87
                                } else if (instance is IPowerManagement) {
87
88
                                        (instance as IPowerManagement).Hibernate ();
 
89
                                }
88
90
                        } catch (Exception e) {
89
91
                                Log<PowerManagement>.Error ("Could not hibernate: {0}", e.Message);
90
92
                                Log<PowerManagement>.Debug (e.StackTrace);
95
97
                {
96
98
                        try {
97
99
                                object instance = BusInstance;
98
 
                                if (instance is IDeviceKitPower)
 
100
                                if (instance is IDeviceKitPower) {
 
101
                                        ScreenSaver.Lock ();
99
102
                                        (instance as IDeviceKitPower).Suspend ();
100
 
                                else if (instance is IPowerManagement)
 
103
                                } else if (instance is IPowerManagement) {
101
104
                                        (instance as IPowerManagement).Suspend ();
 
105
                                }
102
106
                        } catch (Exception e) {
103
107
                                Log<PowerManagement>.Error ("Could not suspend: {0}", e.Message);
104
108
                                Log<PowerManagement>.Debug (e.StackTrace);