Browse Source

Fix konsole startup on session resume when ARGB visuals are enabled

Fix konsole FTBFS if COMPOSITE extension is not available


git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1258919 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 11 years ago
parent
commit
082f536b5b
  1. 12
      konsole/konsole/konsole.cpp
  2. 32
      konsole/konsole/konsole_part.cpp
  3. 2
      konsole/konsole/main.cpp

12
konsole/konsole/konsole.cpp

@ -1634,9 +1634,15 @@ void Konsole::readProperties(KConfig* config, const TQString &schema, bool globa
if (te) {
if (sch->useTransparency())
{
if (!rootxpms[te])
rootxpms.insert( te, new KRootPixmap(te) );
rootxpms[te]->setFadeEffect(sch->tr_x(), TQColor(sch->tr_r(), sch->tr_g(), sch->tr_b()));
if (!argb_visual) {
if (!rootxpms[te])
rootxpms.insert( te, new KRootPixmap(te) );
rootxpms[te]->setFadeEffect(sch->tr_x(), TQColor(sch->tr_r(), sch->tr_g(), sch->tr_b()));
}
else {
te->setBlendColor(tqRgba(sch->tr_r(), sch->tr_g(), sch->tr_b(), int(sch->tr_x() * 255)));
te->setErasePixmap( TQPixmap() ); // make sure any background pixmap is unset
}
}
else
{

32
konsole/konsole/konsole_part.cpp

@ -586,11 +586,17 @@ void konsolePart::readProperties()
te->setColorTable(sch->table()); //FIXME: set twice here to work around a bug
if (sch->useTransparency()) {
if (!rootxpm)
rootxpm = new KRootPixmap(TQT_TQWIDGET(te));
rootxpm->setFadeEffect(sch->tr_x(), TQColor(sch->tr_r(), sch->tr_g(), sch->tr_b()));
rootxpm->start();
rootxpm->tqrepaint(true);
if (!argb_visual) {
if (!rootxpm)
rootxpm = new KRootPixmap(TQT_TQWIDGET(te));
rootxpm->setFadeEffect(sch->tr_x(), TQColor(sch->tr_r(), sch->tr_g(), sch->tr_b()));
rootxpm->start();
rootxpm->tqrepaint(true);
}
else {
te->setBlendColor(tqRgba(sch->tr_r(), sch->tr_g(), sch->tr_b(), int(sch->tr_x() * 255)));
te->setErasePixmap( TQPixmap() ); // make sure any background pixmap is unset
}
}
else {
if (rootxpm) {
@ -774,11 +780,17 @@ void konsolePart::setSchema(ColorSchema* s)
te->setColorTable(s->table()); //FIXME: set twice here to work around a bug
if (s->useTransparency()) {
if (!rootxpm)
rootxpm = new KRootPixmap(TQT_TQWIDGET(te));
rootxpm->setFadeEffect(s->tr_x(), TQColor(s->tr_r(), s->tr_g(), s->tr_b()));
rootxpm->start();
rootxpm->tqrepaint(true);
if (!argb_visual) {
if (!rootxpm)
rootxpm = new KRootPixmap(TQT_TQWIDGET(te));
rootxpm->setFadeEffect(s->tr_x(), TQColor(s->tr_r(), s->tr_g(), s->tr_b()));
rootxpm->start();
rootxpm->tqrepaint(true);
}
else {
te->setBlendColor(tqRgba(s->tr_r(), s->tr_g(), s->tr_b(), int(s->tr_x() * 255)));
te->setErasePixmap( TQPixmap() ); // make sure any background pixmap is unset
}
}
else {
if (rootxpm) {

2
konsole/konsole/main.cpp

@ -252,7 +252,7 @@ extern "C" int KDE_EXPORT kdemain(int argc, char* argv[])
a = new KApplication(KApplication::openX11RGBADisplay());
argb_visual = a->isX11CompositionAvailable();
#else
KApplication* a = new KApplication;
a = new KApplication;
#endif
TQString dataPathBase = KStandardDirs::kde_default("data").append("konsole/");

Loading…
Cancel
Save