1 //===========================================================================
3 // This file is part of the KDE project
5 // Copyright (c) 1999 Martin R. Jones <mjones@kde.org>
6 // Copyright (c) 2003 Oswald Buddenhagen <ossi@kde.org>
12 #include <kgreeterplugin.h>
14 #include <k3process.h>
20 #include <QMessageBox>
28 struct GreeterPluginHandle
{
30 kgreeterplugin_info
*info
;
33 //===========================================================================
35 // Screen saver handling process. Handles screensaver window,
36 // starting screensaver hacks, and password entry.
43 LockProcess(bool child_saver
= false, bool useBlankOnly
= false);
52 void setChildren(QList
<int> children
) { child_sockets
= children
; }
53 void setParent(int fd
) { mParent
= fd
; }
55 void msgBox( QMessageBox::Icon type
, const QString
&txt
);
56 int execDialog( QDialog
* dlg
);
64 virtual bool x11Event(XEvent
*);
65 virtual void timerEvent(QTimerEvent
*);
68 void hackExited(K3Process
*);
69 void signalPipeSignal();
72 void checkDPMSActive();
73 void slotDeadTimePassed();
78 void createSaverWindow();
79 void hideSaverWindow();
81 void setVRoot(Window win
, Window rw
);
82 void removeVRoot(Window win
);
87 void cantLock(const QString
&reason
);
97 void resume( bool force
);
98 static QVariant
getConf(void *ctx
, const char *key
, const QVariant
&dflt
);
111 QList
<int> child_sockets
;
115 QTimer mSuspendTimer
;
119 QStack
< QWidget
* > mDialogs
;
120 bool mRestoreXF86Lock
;
122 QStringList mPlugins
, mPluginOptions
;
124 GreeterPluginHandle greetPlugin
;
125 QPixmap mSavedScreen
;
126 int mAutoLogoutTimerId
;
127 int mAutoLogoutTimeout
;