summaryrefslogtreecommitdiffstats
path: root/libtdescreensaver/main.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-20 16:02:24 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-20 16:02:24 -0500
commitc2692e04d18f85d7214bbc19231b7c3cf488d3fe (patch)
tree166c5b5e9510a9e627e48fd66092bc85a7426c9a /libtdescreensaver/main.cpp
parent142e058e79d37ea387aaf7b469cee7383ee35556 (diff)
downloadtdelibs-c2692e04d18f85d7214bbc19231b7c3cf488d3fe.tar.gz
tdelibs-c2692e04d18f85d7214bbc19231b7c3cf488d3fe.zip
Properly initialize ARGB mode in libtdescreensaver
This resolves an unreported bug whereby many screensavers do not appear when using a compositor
Diffstat (limited to 'libtdescreensaver/main.cpp')
-rw-r--r--libtdescreensaver/main.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/libtdescreensaver/main.cpp b/libtdescreensaver/main.cpp
index 073d7845d..2260f25fd 100644
--- a/libtdescreensaver/main.cpp
+++ b/libtdescreensaver/main.cpp
@@ -34,6 +34,8 @@
#include "tdescreensaver.h"
#include "tdescreensaver_vroot.h"
+bool argb_visual = FALSE;
+
extern "C"
{
extern const char *kss_applicationName;
@@ -98,7 +100,12 @@ KDE_EXPORT int main(int argc, char *argv[])
TDECmdLineArgs::addCmdLineOptions(options);
+#ifdef HAVE_XCOMPOSITE
+ TDEApplication app(TDEApplication::openX11RGBADisplay());
+ argb_visual = app.isX11CompositionAvailable();
+#else
TDEApplication app;
+#endif
TDECrash::setCrashHandler( crashHandler );
TDEGlobal::locale()->insertCatalogue("klock");