summaryrefslogtreecommitdiffstats
path: root/kdesktop/lock/autologout.cc
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-09-12 00:34:54 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-09-12 00:34:54 +0000
commit9925fc58bcca4faf6f6a356ace24acdf19556560 (patch)
treeba039e157eb6838fcfe0e2d178c92e1f86e2d08e /kdesktop/lock/autologout.cc
parent1f40ada72d693d681ec6a32c2ef717e8dd73b5bb (diff)
downloadtdebase-9925fc58bcca4faf6f6a356ace24acdf19556560.tar.gz
tdebase-9925fc58bcca4faf6f6a356ace24acdf19556560.zip
Fix system modal dialogs
Fix shutdown background Add code to make the desktop locking system use the system window decorations and generally use the same theme and style as the active desktop This code is disabled for now, but can be enabled via the two new static variables in kdesktop/lock/main.cc git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1252900 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdesktop/lock/autologout.cc')
-rw-r--r--kdesktop/lock/autologout.cc19
1 files changed, 17 insertions, 2 deletions
diff --git a/kdesktop/lock/autologout.cc b/kdesktop/lock/autologout.cc
index 3dbb3ac6b..7a9cc9e66 100644
--- a/kdesktop/lock/autologout.cc
+++ b/kdesktop/lock/autologout.cc
@@ -25,12 +25,27 @@
#include <tqdialog.h>
#include <tqprogressbar.h>
+#include <X11/Xatom.h>
+
#define COUNTDOWN 30
-AutoLogout::AutoLogout(LockProcess *parent) : TQDialog(parent, "password dialog", true, (WFlags)WX11BypassWM)
+extern bool trinity_desktop_lock_use_system_modal_dialogs;
+
+AutoLogout::AutoLogout(LockProcess *parent) : TQDialog(parent, "password dialog", true, (trinity_desktop_lock_use_system_modal_dialogs?((WFlags)WStyle_StaysOnTop):((WFlags)WX11BypassWM)))
{
+ if (trinity_desktop_lock_use_system_modal_dialogs) {
+ // Signal that we do not want any window controls to be shown at all
+ Atom kde_wm_system_modal_notification;
+ kde_wm_system_modal_notification = XInternAtom(qt_xdisplay(), "_KDE_WM_MODAL_SYS_NOTIFICATION", False);
+ XChangeProperty(qt_xdisplay(), winId(), kde_wm_system_modal_notification, XA_INTEGER, 32, PropModeReplace, (unsigned char *) "TRUE", 1L);
+ }
+ setCaption(i18n("Automatic Logout Notification"));
+
frame = new TQFrame(this);
- frame->setFrameStyle(TQFrame::Panel | TQFrame::Raised);
+ if (trinity_desktop_lock_use_system_modal_dialogs)
+ frame->setFrameStyle( TQFrame::NoFrame );
+ else
+ frame->setFrameStyle(TQFrame::Panel | TQFrame::Raised);
frame->setLineWidth(2);
TQLabel *pixLabel = new TQLabel( frame, "pixlabel" );