parent
6d4bf0b7b6
commit
865f39ca00
@ -0,0 +1,22 @@
|
|||||||
|
--- kdebase-3.5.12/kdesktop/lock/lockprocess.cc.ORI 2011-12-21 18:40:05.553301746 +0100
|
||||||
|
+++ kdebase-3.5.12/kdesktop/lock/lockprocess.cc 2011-12-21 18:43:01.643590270 +0100
|
||||||
|
@@ -1045,17 +1045,13 @@
|
||||||
|
mHackProc << word;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (!mForbidden)
|
||||||
|
+ if (!mForbidden && mHackProc.start() == true)
|
||||||
|
{
|
||||||
|
-
|
||||||
|
- if (mHackProc.start() == true)
|
||||||
|
- {
|
||||||
|
#ifdef HAVE_SETPRIORITY
|
||||||
|
setpriority(PRIO_PROCESS, mHackProc.pid(), mPriority);
|
||||||
|
#endif
|
||||||
|
//bitBlt(this, 0, 0, &mOriginal);
|
||||||
|
return true;
|
||||||
|
- }
|
||||||
|
}
|
||||||
|
else
|
||||||
|
// we aren't allowed to start the specified screensaver either because it didn't run for some reason
|
||||||
|
|
@ -0,0 +1,297 @@
|
|||||||
|
Index: kdesktop/lock/lockdlg.cc
|
||||||
|
===================================================================
|
||||||
|
--- kdesktop/lock/lockdlg.cc (revision 1261452)
|
||||||
|
+++ kdesktop/lock/lockdlg.cc (working copy)
|
||||||
|
@@ -115,7 +115,7 @@
|
||||||
|
frame->setFrameStyle( TQFrame::Panel | TQFrame::Raised );
|
||||||
|
frame->setLineWidth( 2 );
|
||||||
|
|
||||||
|
- TQLabel *pixLabel;
|
||||||
|
+ TQLabel *pixLabel = NULL;
|
||||||
|
if (!trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
pixLabel = new TQLabel( frame, "pixlabel" );
|
||||||
|
pixLabel->setPixmap(DesktopIcon("lock"));
|
||||||
|
@@ -134,7 +134,7 @@
|
||||||
|
i18n("<nobr><b>The session was locked by %1</b><br>").arg( user.fullName() ), frame );
|
||||||
|
}
|
||||||
|
|
||||||
|
- TQLabel *lockDTLabel;
|
||||||
|
+ TQLabel *lockDTLabel = NULL;
|
||||||
|
if ((trinity_desktop_lock_use_system_modal_dialogs) && (!m_lockStartDT.isNull())) {
|
||||||
|
lockDTLabel = new TQLabel(i18n("This session has been locked since %1").arg(m_lockStartDT.toString()), frame);
|
||||||
|
}
|
||||||
|
Index: kdesktop/lock/lockprocess.cc
|
||||||
|
===================================================================
|
||||||
|
--- kdesktop/lock/lockprocess.cc (revision 1261452)
|
||||||
|
+++ kdesktop/lock/lockprocess.cc (working copy)
|
||||||
|
@@ -173,6 +173,7 @@
|
||||||
|
mDialogControlLock(false),
|
||||||
|
mForceReject(false),
|
||||||
|
currentDialog(NULL),
|
||||||
|
+ mEnsureScreenHiddenTimer(NULL),
|
||||||
|
mForceContinualLockDisplayTimer(NULL),
|
||||||
|
mEnsureVRootWindowSecurityTimer(NULL),
|
||||||
|
mHackDelayStartupTimer(NULL),
|
||||||
|
@@ -288,6 +289,10 @@
|
||||||
|
hackResumeTimer->stop();
|
||||||
|
delete hackResumeTimer;
|
||||||
|
}
|
||||||
|
+ if (mEnsureScreenHiddenTimer != NULL) {
|
||||||
|
+ mEnsureScreenHiddenTimer->stop();
|
||||||
|
+ delete mEnsureScreenHiddenTimer;
|
||||||
|
+ }
|
||||||
|
if (mForceContinualLockDisplayTimer != NULL) {
|
||||||
|
mForceContinualLockDisplayTimer->stop();
|
||||||
|
delete mForceContinualLockDisplayTimer;
|
||||||
|
@@ -410,7 +415,7 @@
|
||||||
|
if (numread > 0) {
|
||||||
|
if (readbuf[0] == 'C') {
|
||||||
|
mInfoMessageDisplayed=false;
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
if (currentDialog != NULL) {
|
||||||
|
mForceReject = true;
|
||||||
|
@@ -423,7 +428,7 @@
|
||||||
|
to_display = to_display.remove(0,1);
|
||||||
|
// Lock out password dialogs and close any active dialog
|
||||||
|
mInfoMessageDisplayed=true;
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
if (currentDialog != NULL) {
|
||||||
|
mForceReject = true;
|
||||||
|
@@ -444,7 +449,7 @@
|
||||||
|
to_display = to_display.remove(0,1);
|
||||||
|
// Lock out password dialogs and close any active dialog
|
||||||
|
mInfoMessageDisplayed=true;
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
if (currentDialog != NULL) {
|
||||||
|
mForceReject = true;
|
||||||
|
@@ -468,7 +473,7 @@
|
||||||
|
to_display = to_display.remove(0,1);
|
||||||
|
// Lock out password dialogs and close any active dialog
|
||||||
|
mInfoMessageDisplayed=true;
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
if (currentDialog != NULL) {
|
||||||
|
mForceReject = true;
|
||||||
|
@@ -887,8 +892,13 @@
|
||||||
|
mRootWidth = rootAttr.width;
|
||||||
|
mRootHeight = rootAttr.height;
|
||||||
|
|
||||||
|
+ // Resize the background widget
|
||||||
|
setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
|
||||||
|
+ // Black out the background widget to hide ugly resize tiling artifacts
|
||||||
|
+ setBackgroundColor(black);
|
||||||
|
+ erase();
|
||||||
|
+
|
||||||
|
// This slot needs to be able to execute very rapidly so as to prevent the user's desktop from ever
|
||||||
|
// being displayed, so we finish the hack restarting/display prettying operations in a separate timed slot
|
||||||
|
if (resizeTimer == NULL) {
|
||||||
|
@@ -902,7 +912,7 @@
|
||||||
|
{
|
||||||
|
stopHack();
|
||||||
|
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
if (closeCurrentWindow()) {
|
||||||
|
TQTimer::singleShot( 0, this, SLOT(doDesktopResizeFinish()) );
|
||||||
|
@@ -911,7 +921,13 @@
|
||||||
|
mDialogControlLock = false;
|
||||||
|
|
||||||
|
// Restart the hack as the window size is now different
|
||||||
|
- startHack();
|
||||||
|
+ if (trinity_desktop_lock_delay_screensaver_start && trinity_desktop_lock_forced && trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
+ ENABLE_CONTINUOUS_LOCKDLG_DISPLAY
|
||||||
|
+ if (mHackStartupEnabled) mHackDelayStartupTimer->start(mHackDelayStartupTimeout, TRUE);
|
||||||
|
+ }
|
||||||
|
+ else {
|
||||||
|
+ startHack();
|
||||||
|
+ }
|
||||||
|
|
||||||
|
mBusy = false;
|
||||||
|
}
|
||||||
|
@@ -1064,7 +1080,7 @@
|
||||||
|
|
||||||
|
if (!grabKeyboard())
|
||||||
|
{
|
||||||
|
- sleep(1);
|
||||||
|
+ usleep(100000);
|
||||||
|
if (!grabKeyboard())
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
@@ -1073,7 +1089,7 @@
|
||||||
|
|
||||||
|
if (!grabMouse())
|
||||||
|
{
|
||||||
|
- sleep(1);
|
||||||
|
+ usleep(100000);
|
||||||
|
if (!grabMouse())
|
||||||
|
{
|
||||||
|
XUngrabKeyboard(qt_xdisplay(), CurrentTime);
|
||||||
|
@@ -1117,7 +1133,7 @@
|
||||||
|
m_grayImage.fill(0); // Set the alpha buffer to 0 (fully transparent)
|
||||||
|
m_grayImage.setAlphaBuffer(true);
|
||||||
|
TQPixmap m_root;
|
||||||
|
- m_root.resize( TQApplication::desktop()->geometry().width(), TQApplication::desktop()->geometry().height() );
|
||||||
|
+ m_root.resize(mRootWidth, mRootHeight);
|
||||||
|
TQPainter p;
|
||||||
|
p.begin( &m_root );
|
||||||
|
m_grayImage.setAlphaBuffer(false);
|
||||||
|
@@ -1144,14 +1160,21 @@
|
||||||
|
setBackgroundColor(black);
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
}
|
||||||
|
if (trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
// Try to get the root pixmap
|
||||||
|
- m_rootPixmap = new KRootPixmap(this);
|
||||||
|
+ if (!m_rootPixmap) m_rootPixmap = new KRootPixmap(this);
|
||||||
|
m_rootPixmap->setCustomPainting(true);
|
||||||
|
connect(m_rootPixmap, TQT_SIGNAL(backgroundUpdated(const TQPixmap &)), this, TQT_SLOT(slotPaintBackground(const TQPixmap &)));
|
||||||
|
m_rootPixmap->start();
|
||||||
|
+ // Sometimes KRootPixmap fails...make sure the desktop is hidden regardless
|
||||||
|
+ if (!mEnsureScreenHiddenTimer) {
|
||||||
|
+ mEnsureScreenHiddenTimer = new TQTimer( this );
|
||||||
|
+ connect( mEnsureScreenHiddenTimer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotForcePaintBackground()) );
|
||||||
|
+ }
|
||||||
|
+ mEnsureScreenHiddenTimer->start(2000, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (trinity_desktop_lock_in_sec_dlg == FALSE) {
|
||||||
|
@@ -1275,6 +1298,7 @@
|
||||||
|
if (!mHackProc.isRunning()) {
|
||||||
|
if (backingPixmap.isNull()) {
|
||||||
|
setBackgroundColor(black);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
@@ -1298,6 +1322,7 @@
|
||||||
|
setBackgroundColor(black);
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
@@ -1344,6 +1369,7 @@
|
||||||
|
setBackgroundColor(black);
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
mSuspended = false;
|
||||||
|
}
|
||||||
|
@@ -1377,7 +1403,10 @@
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
}
|
||||||
|
- if (backingPixmap.isNull()) erase();
|
||||||
|
+ if (backingPixmap.isNull()) {
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
+ erase();
|
||||||
|
+ }
|
||||||
|
else bitBlt(this, 0, 0, &backingPixmap);
|
||||||
|
if (trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
ENABLE_CONTINUOUS_LOCKDLG_DISPLAY
|
||||||
|
@@ -1416,7 +1445,10 @@
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
}
|
||||||
|
- if (backingPixmap.isNull()) erase();
|
||||||
|
+ if (backingPixmap.isNull()) {
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
+ erase();
|
||||||
|
+ }
|
||||||
|
else bitBlt(this, 0, 0, &backingPixmap);
|
||||||
|
if (!mSuspended) {
|
||||||
|
if (trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
@@ -1492,6 +1524,7 @@
|
||||||
|
setBackgroundColor(black);
|
||||||
|
else
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@@ -1597,10 +1630,13 @@
|
||||||
|
}
|
||||||
|
mDialogs.prepend( dlg );
|
||||||
|
fakeFocusIn( dlg->winId());
|
||||||
|
- if (backingPixmap.isNull() && trinity_desktop_lock_use_system_modal_dialogs) erase();
|
||||||
|
+ if (backingPixmap.isNull() && trinity_desktop_lock_use_system_modal_dialogs) {
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
+ erase();
|
||||||
|
+ }
|
||||||
|
else bitBlt(this, 0, 0, &backingPixmap);
|
||||||
|
int rt = dlg->exec();
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
currentDialog = NULL;
|
||||||
|
mDialogs.remove( dlg );
|
||||||
|
if( mDialogs.isEmpty() ) {
|
||||||
|
@@ -1624,8 +1660,18 @@
|
||||||
|
return rt;
|
||||||
|
}
|
||||||
|
|
||||||
|
+void LockProcess::slotForcePaintBackground()
|
||||||
|
+{
|
||||||
|
+ TQPixmap blankPixmap(mRootWidth, mRootHeight);
|
||||||
|
+ blankPixmap.fill(Qt::black);
|
||||||
|
+ slotPaintBackground(blankPixmap);
|
||||||
|
+ printf("[WARNING] Unable to obtain desktop wallpaper in a timely manner. High system load or possibly a TDE bug!\n\r"); fflush(stdout);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void LockProcess::slotPaintBackground(const TQPixmap &rpm)
|
||||||
|
{
|
||||||
|
+ mEnsureScreenHiddenTimer->stop();
|
||||||
|
+
|
||||||
|
TQPixmap pm = rpm;
|
||||||
|
|
||||||
|
if (TQPaintDevice::x11AppDepth() == 32) {
|
||||||
|
@@ -1652,6 +1698,7 @@
|
||||||
|
backingPixmap = pm;
|
||||||
|
if (trinity_desktop_lock_delay_screensaver_start && trinity_desktop_lock_forced) {
|
||||||
|
setBackgroundPixmap(backingPixmap);
|
||||||
|
+ setGeometry(0, 0, mRootWidth, mRootHeight);
|
||||||
|
erase();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -1677,7 +1724,7 @@
|
||||||
|
mBusy=true;
|
||||||
|
TQTimer::singleShot(1000, this, TQT_SLOT(slotDeadTimePassed()));
|
||||||
|
if (mkeyCode == XKeysymToKeycode(qt_xdisplay(), XF86XK_Display)) {
|
||||||
|
- while (mDialogControlLock == true) sleep(1);
|
||||||
|
+ while (mDialogControlLock == true) usleep(100000);
|
||||||
|
mDialogControlLock = true;
|
||||||
|
currentDialog->close(); // DO NOT use closeCurrentWindow() here!
|
||||||
|
mDialogControlLock = false;
|
||||||
|
Index: kdesktop/lock/lockprocess.h
|
||||||
|
===================================================================
|
||||||
|
--- kdesktop/lock/lockprocess.h (revision 1261452)
|
||||||
|
+++ kdesktop/lock/lockprocess.h (working copy)
|
||||||
|
@@ -74,6 +74,7 @@
|
||||||
|
void doDesktopResizeFinish();
|
||||||
|
void doFunctionKeyBroadcast();
|
||||||
|
void slotPaintBackground(const TQPixmap &pm);
|
||||||
|
+ void slotForcePaintBackground();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual bool x11Event(XEvent *);
|
||||||
|
@@ -181,6 +182,7 @@
|
||||||
|
bool mForceReject;
|
||||||
|
TQDialog *currentDialog;
|
||||||
|
|
||||||
|
+ TQTimer* mEnsureScreenHiddenTimer;
|
||||||
|
TQTimer* mForceContinualLockDisplayTimer;
|
||||||
|
TQTimer* mEnsureVRootWindowSecurityTimer;
|
||||||
|
TQTimer* mHackDelayStartupTimer;
|
@ -0,0 +1,11 @@
|
|||||||
|
--- kdebase/kdesu/kdesu/kdesu.cpp.orig 2011-10-26 21:06:48.000000000 +0200
|
||||||
|
+++ kdebase/kdesu/kdesu/kdesu.cpp 2012-01-01 16:54:11.468303046 +0100
|
||||||
|
@@ -274,7 +274,7 @@
|
||||||
|
|
||||||
|
// Try to exec the command with kdesud.
|
||||||
|
bool keep = !args->isSet("n") && have_daemon;
|
||||||
|
- bool terminal = true;
|
||||||
|
+ bool terminal = args->isSet("t");
|
||||||
|
bool new_dcop = args->isSet("newdcop");
|
||||||
|
bool withIgnoreButton = args->isSet("ignorebutton");
|
||||||
|
|
@ -0,0 +1,19 @@
|
|||||||
|
diff -urN /dev/shm/kdebase/konqueror/listview/konq_listviewwidget.cc /dev/shm/kdebase.new/konqueror/listview/konq_listviewwidget.cc
|
||||||
|
--- /dev/shm/kdebase/konqueror/listview/konq_listviewwidget.cc 2011-08-11 00:25:51.000000000 -0500
|
||||||
|
+++ /dev/shm/kdebase.new/konqueror/listview/konq_listviewwidget.cc 2011-12-03 20:55:00.000000000 -0600
|
||||||
|
@@ -1009,10 +1009,11 @@
|
||||||
|
// gather pixmap
|
||||||
|
TQPixmap *pix = new TQPixmap(*(_item->pixmap(0)));
|
||||||
|
|
||||||
|
- // call the icon effect
|
||||||
|
- KIconEffect::visualActivate(viewport(), rect, pix);
|
||||||
|
-
|
||||||
|
- delete(pix);
|
||||||
|
+ // call the icon effect if enabled
|
||||||
|
+ if (KGlobalSettings::showKonqIconActivationEffect() == true) {
|
||||||
|
+ KIconEffect::visualActivate(viewport(), rect, pix);
|
||||||
|
+ delete(pix);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
@ -0,0 +1,41 @@
|
|||||||
|
diff -urN kdebase/kpersonalizer/kospage.cpp kdebase.new2/kpersonalizer/kospage.cpp
|
||||||
|
--- kdebase/kpersonalizer/kospage.cpp 2011-08-21 02:08:16.000000000 -0500
|
||||||
|
+++ kdebase.new2/kpersonalizer/kospage.cpp 2011-12-22 09:27:39.000000000 -0600
|
||||||
|
@@ -142,7 +142,7 @@
|
||||||
|
ckcmdisplay->writeEntry("macStyle", false, true, true);
|
||||||
|
|
||||||
|
cglobal->setGroup("KDE");
|
||||||
|
- cglobal->writeEntry("SingleClick", true, true, true);
|
||||||
|
+ cglobal->writeEntry("SingleClick", false, true, true);
|
||||||
|
|
||||||
|
claunch->setGroup("FeedbackStyle");
|
||||||
|
claunch->writeEntry("BusyCursor", false);
|
||||||
|
@@ -351,8 +351,8 @@
|
||||||
|
textview_ospage->setText(i18n(
|
||||||
|
"<b>Window activation:</b> <i>Focus on click</i><br>"
|
||||||
|
"<b>Titlebar double-click:</b> <i>Shade window</i><br>"
|
||||||
|
- "<b>Mouse selection:</b> <i>Single click</i><br>"
|
||||||
|
- "<b>Application startup notification:</b> <i>busy cursor</i><br>"
|
||||||
|
+ "<b>Mouse selection:</b> <i>Double click</i><br>"
|
||||||
|
+ "<b>Application startup notification:</b> <i>none</i><br>"
|
||||||
|
"<b>Keyboard scheme:</b> <i>Trinity default</i><br>"
|
||||||
|
));
|
||||||
|
}
|
||||||
|
@@ -376,7 +376,7 @@
|
||||||
|
"<b>Window activation:</b> <i>Focus on click</i><br>"
|
||||||
|
"<b>Titlebar double-click:</b> <i>Maximize window</i><br>"
|
||||||
|
"<b>Mouse selection:</b> <i>Double click</i><br>"
|
||||||
|
- "<b>Application startup notification:</b> <i>busy cursor</i><br>"
|
||||||
|
+ "<b>Application startup notification:</b> <i>none</i><br>"
|
||||||
|
"<b>Keyboard scheme:</b> <i>Windows</i><br>"
|
||||||
|
));
|
||||||
|
}
|
||||||
|
@@ -400,7 +400,7 @@
|
||||||
|
b_MacMenuBar = ckcmdisplay->readBoolEntry("macStyle", false);
|
||||||
|
|
||||||
|
cglobal->setGroup("KDE");
|
||||||
|
- b_SingleClick = cglobal->readBoolEntry("SingleClick", true);
|
||||||
|
+ b_SingleClick = cglobal->readBoolEntry("SingleClick", false);
|
||||||
|
|
||||||
|
claunch->setGroup("FeedbackStyle");
|
||||||
|
b_BusyCursor = claunch->readBoolEntry("BusyCursor", false);
|
@ -0,0 +1,51 @@
|
|||||||
|
Index: krandrapp.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kcontrol/randr/krandrapp.cpp (revision 1261452)
|
||||||
|
+++ kcontrol/randr/krandrapp.cpp (working copy)
|
||||||
|
@@ -28,13 +28,20 @@
|
||||||
|
KRandRApp::KRandRApp()
|
||||||
|
: m_tray(new KRandRSystemTray(0L, "RANDRTray"))
|
||||||
|
{
|
||||||
|
+ connect(&m_eventMergingTimer, TQT_SIGNAL(timeout()), this, TQT_SLOT(handleX11ConfigChangeEvent()));
|
||||||
|
m_tray->show();
|
||||||
|
}
|
||||||
|
|
||||||
|
+void KRandRApp::handleX11ConfigChangeEvent()
|
||||||
|
+{
|
||||||
|
+ m_eventMergingTimer.stop();
|
||||||
|
+ m_tray->configChanged();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
bool KRandRApp::x11EventFilter(XEvent* e)
|
||||||
|
{
|
||||||
|
if (e->type == m_tray->screenChangeNotifyEvent()) {
|
||||||
|
- m_tray->configChanged();
|
||||||
|
+ m_eventMergingTimer.start(1000, TRUE);
|
||||||
|
}
|
||||||
|
return KApplication::x11EventFilter( e );
|
||||||
|
}
|
||||||
|
Index: krandrapp.h
|
||||||
|
===================================================================
|
||||||
|
--- kcontrol/randr/krandrapp.h (revision 1261452)
|
||||||
|
+++ kcontrol/randr/krandrapp.h (working copy)
|
||||||
|
@@ -19,6 +19,7 @@
|
||||||
|
#ifndef KRANDRAPP_H
|
||||||
|
#define KRANDRAPP_H
|
||||||
|
|
||||||
|
+#include <tqtimer.h>
|
||||||
|
#include <kuniqueapplication.h>
|
||||||
|
|
||||||
|
class KRandRSystemTray;
|
||||||
|
@@ -32,8 +33,12 @@
|
||||||
|
|
||||||
|
virtual bool x11EventFilter(XEvent * e);
|
||||||
|
|
||||||
|
+private slots:
|
||||||
|
+ void handleX11ConfigChangeEvent();
|
||||||
|
+
|
||||||
|
private:
|
||||||
|
KRandRSystemTray* m_tray;
|
||||||
|
+ TQTimer m_eventMergingTimer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,51 @@
|
|||||||
|
Index: krandrapp.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kcontrol/randr/krandrapp.cpp (revision 1261452)
|
||||||
|
+++ kcontrol/randr/krandrapp.cpp (working copy)
|
||||||
|
@@ -28,13 +28,20 @@
|
||||||
|
KRandRApp::KRandRApp()
|
||||||
|
: m_tray(new KRandRSystemTray(0L, "RANDRTray"))
|
||||||
|
{
|
||||||
|
+ connect(&m_eventMergingTimer, TQT_SIGNAL(timeout()), this, TQT_SLOT(handleX11ConfigChangeEvent()));
|
||||||
|
m_tray->show();
|
||||||
|
}
|
||||||
|
|
||||||
|
+void KRandRApp::handleX11ConfigChangeEvent()
|
||||||
|
+{
|
||||||
|
+ m_eventMergingTimer.stop();
|
||||||
|
+ m_tray->configChanged();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
bool KRandRApp::x11EventFilter(XEvent* e)
|
||||||
|
{
|
||||||
|
if (e->type == m_tray->screenChangeNotifyEvent()) {
|
||||||
|
- m_tray->configChanged();
|
||||||
|
+ m_eventMergingTimer.start(1000, TRUE);
|
||||||
|
}
|
||||||
|
return KApplication::x11EventFilter( e );
|
||||||
|
}
|
||||||
|
Index: krandrapp.h
|
||||||
|
===================================================================
|
||||||
|
--- kcontrol/randr/krandrapp.h (revision 1261452)
|
||||||
|
+++ kcontrol/randr/krandrapp.h (working copy)
|
||||||
|
@@ -19,6 +19,7 @@
|
||||||
|
#ifndef KRANDRAPP_H
|
||||||
|
#define KRANDRAPP_H
|
||||||
|
|
||||||
|
+#include <tqtimer.h>
|
||||||
|
#include <kuniqueapplication.h>
|
||||||
|
|
||||||
|
class KRandRSystemTray;
|
||||||
|
@@ -32,8 +33,12 @@
|
||||||
|
|
||||||
|
virtual bool x11EventFilter(XEvent * e);
|
||||||
|
|
||||||
|
+private slots:
|
||||||
|
+ void handleX11ConfigChangeEvent();
|
||||||
|
+
|
||||||
|
private:
|
||||||
|
KRandRSystemTray* m_tray;
|
||||||
|
+ TQTimer m_eventMergingTimer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,104 @@
|
|||||||
|
Index: kicker/applets/systemtray/systemtrayapplet.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kicker/applets/systemtray/systemtrayapplet.cpp (revision 1262481)
|
||||||
|
+++ kicker/applets/systemtray/systemtrayapplet.cpp (working copy)
|
||||||
|
@@ -34,6 +34,7 @@
|
||||||
|
#include <tqstyle.h>
|
||||||
|
#include <tqgrid.h>
|
||||||
|
#include <tqpainter.h>
|
||||||
|
+#include <tqimage.h>
|
||||||
|
|
||||||
|
#include <dcopclient.h>
|
||||||
|
#include <kapplication.h>
|
||||||
|
Index: kicker/applets/clock/clock.h
|
||||||
|
===================================================================
|
||||||
|
--- kicker/applets/clock/clock.h (revision 1262481)
|
||||||
|
+++ kicker/applets/clock/clock.h (working copy)
|
||||||
|
@@ -41,7 +41,6 @@
|
||||||
|
|
||||||
|
#include <kickertip.h>
|
||||||
|
#include "settings.h"
|
||||||
|
-#include "kshadowengine.h"
|
||||||
|
|
||||||
|
class TQTimer;
|
||||||
|
class TQBoxLayout;
|
||||||
|
@@ -283,8 +282,6 @@
|
||||||
|
TQDate clockGetDate();
|
||||||
|
|
||||||
|
virtual void updateKickerTip(KickerTip::Data&);
|
||||||
|
-
|
||||||
|
- KTextShadowEngine *shadowEngine();
|
||||||
|
|
||||||
|
k_dcop:
|
||||||
|
void reconfigure();
|
||||||
|
@@ -344,7 +341,6 @@
|
||||||
|
TQStringList _remotezonelist;
|
||||||
|
KPopupMenu* menu;
|
||||||
|
ClockAppletToolTip m_tooltip;
|
||||||
|
- KTextShadowEngine *m_shadowEngine;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Index: kicker/applets/clock/clock.cpp
|
||||||
|
===================================================================
|
||||||
|
--- kicker/applets/clock/clock.cpp (revision 1262481)
|
||||||
|
+++ kicker/applets/clock/clock.cpp (working copy)
|
||||||
|
@@ -277,10 +277,7 @@
|
||||||
|
{
|
||||||
|
TQRect tr(0, 0, width(), height());
|
||||||
|
|
||||||
|
- if (!KickerSettings::transparent())
|
||||||
|
- p->drawText(tr, AlignCenter, _timeStr);
|
||||||
|
- else
|
||||||
|
- _applet->shadowEngine()->drawText(*p, tr, AlignCenter, _timeStr, size());
|
||||||
|
+ p->drawText(tr, AlignCenter, _timeStr);
|
||||||
|
}
|
||||||
|
|
||||||
|
//************************************************************
|
||||||
|
@@ -862,10 +859,7 @@
|
||||||
|
else
|
||||||
|
tr = TQRect(4, 2, width() - 8, height() - 4);
|
||||||
|
|
||||||
|
- if (!KickerSettings::transparent())
|
||||||
|
- p->drawText(tr, AlignCenter, _timeStr);
|
||||||
|
- else
|
||||||
|
- _applet->shadowEngine()->drawText(*p, tr, AlignCenter, _timeStr, size());
|
||||||
|
+ p->drawText(tr, AlignCenter, _timeStr);
|
||||||
|
|
||||||
|
alreadyDrawing = false;
|
||||||
|
}
|
||||||
|
@@ -899,8 +893,7 @@
|
||||||
|
_prefs(new Prefs(sharedConfig())),
|
||||||
|
zone(new Zone(config())),
|
||||||
|
menu(0),
|
||||||
|
- m_tooltip(this),
|
||||||
|
- m_shadowEngine(0)
|
||||||
|
+ m_tooltip(this)
|
||||||
|
{
|
||||||
|
DCOPObject::setObjId("ClockApplet");
|
||||||
|
_prefs->readConfig();
|
||||||
|
@@ -938,7 +931,6 @@
|
||||||
|
|
||||||
|
ClockApplet::~ClockApplet()
|
||||||
|
{
|
||||||
|
- delete m_shadowEngine;
|
||||||
|
//reverse for the moment
|
||||||
|
KGlobal::locale()->removeCatalogue("clockapplet");
|
||||||
|
KGlobal::locale()->removeCatalogue("timezones"); // For time zone translations
|
||||||
|
@@ -959,15 +951,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-KTextShadowEngine *ClockApplet::shadowEngine()
|
||||||
|
-{
|
||||||
|
- if (!m_shadowEngine)
|
||||||
|
- m_shadowEngine = new KTextShadowEngine();
|
||||||
|
|
||||||
|
- return m_shadowEngine;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-
|
||||||
|
int ClockApplet::widthForHeight(int h) const
|
||||||
|
{
|
||||||
|
if (orientation() == Qt::Vertical)
|
||||||
|
|
@ -0,0 +1,118 @@
|
|||||||
|
--- kdebase/startkde.ORI 2011-12-12 20:09:21.984162840 +0100
|
||||||
|
+++ kdebase/startkde 2011-12-12 20:08:27.922834925 +0100
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
#
|
||||||
|
|
||||||
|
echo "[startkde] Starting startkde." 1>&2
|
||||||
|
+export KDEDIR="/opt/trinity"
|
||||||
|
|
||||||
|
# When the X server dies we get a HUP signal from xinit. We must ignore it
|
||||||
|
# because we still need to do some cleanup.
|
||||||
|
@@ -74,39 +75,10 @@
|
||||||
|
echo "[startkde] KDEHOME is preset to $KDEHOME." 1>&2
|
||||||
|
export KDEHOME=$KDEHOME
|
||||||
|
else
|
||||||
|
- # $KDEHOME is NOT already preset in the environment. Try to help.
|
||||||
|
- # This might be overkill but does provide flexibility.
|
||||||
|
+ # $KDEHOME is NOT already preset in the environment.
|
||||||
|
+ # We always use ~/.trinity as default.
|
||||||
|
echo "[startkde] KDEHOME is not set." 1>&2
|
||||||
|
- if [ -d $HOME/.trinity ]; then
|
||||||
|
- # OK, this one is obvious.
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- elif [ -d $HOME/.trinity ]; then
|
||||||
|
- # Looks like the user had an old version of Trinity installed at last login
|
||||||
|
- echo "[startkde] Migrating old ~/.trinity directory to new ~/.trinity name." 1>&2
|
||||||
|
- mv $HOME/.trinity $HOME/.trinity
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- elif [ -f /usr/bin/kde4-config ]; then
|
||||||
|
- # Looks like KDE4 is installed.
|
||||||
|
- if [ -d $HOME/.kde ] && [ ! -d $HOME/.trinity ]; then
|
||||||
|
- # Presume $HOME/.kde is being used for KDE4 as it already exists.
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- else
|
||||||
|
- # Presume $HOME/.kde is being used for KDE4 to be on the safe side.
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- fi
|
||||||
|
- elif [ -f /opt/trinity/bin/kde-config ]; then
|
||||||
|
- # Looks like KDE3 or Trinity is installed and playing second fiddle to KDE4.
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- elif [ -f /opt/trinity/bin/kde-config ]; then
|
||||||
|
- # Looks like KDE3 or Trinity is installed and playing second fiddle to KDE4.
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- elif [ -f /usr/bin/kde-config ] && [ -d $HOME/.kde ]; then
|
||||||
|
- # Looks like KDE3 or Trinity is installed and not playing second fiddle to KDE4.
|
||||||
|
- export KDEHOME=$HOME/.kde
|
||||||
|
- else
|
||||||
|
- # Resort to this and hope for the best!
|
||||||
|
- export KDEHOME=$HOME/.trinity
|
||||||
|
- fi
|
||||||
|
+ export KDEHOME=$HOME/.trinity
|
||||||
|
echo "[startkde] Set KDEHOME to $KDEHOME." 1>&2
|
||||||
|
fi
|
||||||
|
|
||||||
|
@@ -117,51 +89,25 @@
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Modify the following environment variables only as necessary.
|
||||||
|
-if [ -d /opt/trinity/games ]; then
|
||||||
|
- export PATH=/opt/trinity/games:$PATH
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity/bin ]; then
|
||||||
|
- export PATH=/opt/trinity/bin:$PATH
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity/games ]; then
|
||||||
|
- export PATH=/opt/trinity/games:$PATH
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity/bin ]; then
|
||||||
|
- export PATH=/opt/trinity/bin:$PATH
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity/share ]; then
|
||||||
|
- export XDG_DATA_DIRS=$XDG_DATA_DIRS:/opt/trinity/share/:/usr/share/
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity/share ]; then
|
||||||
|
- export XDG_DATA_DIRS=$XDG_DATA_DIRS:/opt/trinity/share/:/usr/share/
|
||||||
|
+if [ -d ${KDEDIR}/games ]; then
|
||||||
|
+ export PATH=${KDEDIR}/games:$PATH
|
||||||
|
fi
|
||||||
|
-if [ -d /opt/trinity/etc/xdg ]; then
|
||||||
|
- export XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:/opt/trinity/etc/xdg/:/etc/xdg/
|
||||||
|
+if [ -d ${KDEDIR}/bin ]; then
|
||||||
|
+ export PATH=${KDEDIR}/bin:$PATH
|
||||||
|
fi
|
||||||
|
-if [ -d /opt/trinity/etc/xdg ]; then
|
||||||
|
- export XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:/opt/trinity/etc/xdg/:/etc/xdg/
|
||||||
|
+if [ -d ${KDEDIR}/share ]; then
|
||||||
|
+ export XDG_DATA_DIRS=$XDG_DATA_DIRS:${KDEDIR}/share/:/usr/share/
|
||||||
|
fi
|
||||||
|
-if [ -d /opt/trinity/share/man ]; then
|
||||||
|
- export MANPATH=/opt/trinity/share/man:$MANPATH
|
||||||
|
+if [ -d ${KDEDIR}/etc/xdg ]; then
|
||||||
|
+ export XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:${KDEDIR}/etc/xdg/:/etc/xdg/
|
||||||
|
fi
|
||||||
|
-if [ -d /opt/trinity/share/man ]; then
|
||||||
|
- export MANPATH=/opt/trinity/share/man:$MANPATH
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity ]; then
|
||||||
|
- if [ -n "$KDEDIRS" ]; then
|
||||||
|
- export KDEDIRS=$KDEDIRS:/opt/trinity/:/usr/
|
||||||
|
- else
|
||||||
|
- export KDEDIRS=/opt/trinity/:/usr/
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-if [ -d /opt/trinity ]; then
|
||||||
|
- if [ -n "$KDEDIRS" ]; then
|
||||||
|
- export KDEDIRS=$KDEDIRS:/opt/trinity/:/usr/
|
||||||
|
- else
|
||||||
|
- export KDEDIRS=/opt/trinity/:/usr/
|
||||||
|
- fi
|
||||||
|
+if [ -d ${KDEDIR}/share/man ]; then
|
||||||
|
+ export MANPATH=${KDEDIR}/share/man:$MANPATH
|
||||||
|
fi
|
||||||
|
|
||||||
|
+# The TDE directory must be first in $KDEDIRS
|
||||||
|
+export KDEDIRS=${KDEDIR}/:$KDEDIRS:/usr/
|
||||||
|
+
|
||||||
|
test -n "$KDEHOME" && kdehome=`echo "$KDEHOME" | sed "s,^~/,$HOME/,"`
|
||||||
|
echo "[startkde] kdehome: $kdehome" 1>&2
|
||||||
|
|
Loading…
Reference in new issue