diff options
Diffstat (limited to 'src/daemon/daemon.cpp')
| -rw-r--r-- | src/daemon/daemon.cpp | 74 | 
1 files changed, 4 insertions, 70 deletions
| diff --git a/src/daemon/daemon.cpp b/src/daemon/daemon.cpp index 1c582ab..957541e 100644 --- a/src/daemon/daemon.cpp +++ b/src/daemon/daemon.cpp @@ -35,6 +35,7 @@  #include <tdeapplication.h>  #include <kiconloader.h>  #include <tdeglobalsettings.h> +#include <tdepassivepopupstack.h>  #include <stdlib.h>  #include <errno.h> @@ -43,77 +44,9 @@  #include "daemon.h" -NotifierContainer* GTKNotifierContainer = NULL; +TDEPassivePopupStackContainer* GTKNotifierContainer = NULL;  void real_handleGTKMain(); -NotifierContainer::NotifierContainer() : TQWidget() { -	mPopupList.clear(); - -	// Determine bottom of desktop -	TQPoint cursorPos = TQCursor::pos(); -	TQRect r = TDEGlobalSettings::desktopGeometry(cursorPos); -	mTopOfStack = r.height(); -	mRightOfStack = r.width(); -} - -NotifierContainer::~NotifierContainer() { -} - -void NotifierContainer::handleGTKMain() { -	real_handleGTKMain(); -} - -void NotifierContainer::displayMessage(TQString title, TQString message, TQString icon, int x, int y) { -	TQPixmap px; -	TDEIconLoader* il = TDEGlobal::iconLoader(); -	px = il->loadIcon( icon, TDEIcon::NoGroup ); -// 	if (px.isNull()) { -// 		px = il->loadIcon( "gnome_apps", TDEIcon::NoGroup ); -// 	} - -	KPassivePopup *pop = new KPassivePopup( KPassivePopup::Boxed, this, "" ); -	pop->setAutoDelete( true ); -	pop->setView( title, message, icon ); -	pop->setTimeout( -1 ); -	TQPoint leftCorner( x, y); -	if (leftCorner.isNull()) { -		if (mPopupList.isEmpty()) { -			// Determine bottom of desktop -			TQPoint cursorPos = TQCursor::pos(); -			TQRect r = TDEGlobalSettings::desktopGeometry(cursorPos); -			mTopOfStack = r.height(); -			mRightOfStack = r.width(); -		} -		TQSize popupSize = pop->sizeHint(); -		mTopOfStack = mTopOfStack-popupSize.height(); -		if (mTopOfStack < 0) mTopOfStack = 0; -		leftCorner.setX(mRightOfStack-popupSize.width()); -		leftCorner.setY(mTopOfStack); -	} -	connect(pop, SIGNAL(hidden(KPassivePopup*)), this, SLOT(popupClosed(KPassivePopup*))); -	mPopupList.append(pop); -	pop->show(leftCorner); - -	processEvents(); -} - -void NotifierContainer::processEvents() { -	tqApp->processEvents(); -} - -void NotifierContainer::popupClosed(KPassivePopup* popup) { -	// Remove the popup from our list of popups -	mPopupList.remove(popup); - -	if (mPopupList.isEmpty()) { -		// Determine bottom of desktop -		TQPoint cursorPos = TQCursor::pos(); -		TQRect r = TDEGlobalSettings::desktopGeometry(cursorPos); -		mTopOfStack = r.height(); -		mRightOfStack = r.width(); -	} -} -  #undef signals  #include <dbus/dbus.h> @@ -235,6 +168,7 @@ notify_daemon_notify_handler(NotifyDaemon *daemon,  	TQString messageText = TQString::fromLocal8Bit(body);  	GTKNotifierContainer->displayMessage(messageCaption, messageText, TQString(icon), x, y); +	GTKNotifierContainer->processEvents();  	return_id = 0; @@ -353,7 +287,7 @@ main(int argc, char **argv)  	TDECmdLineArgs::init(argc, argv, &aboutData);  	TDEApplication app; -	NotifierContainer nc; +	TDEPassivePopupStackContainer nc;  	app.setMainWidget(&nc);  	GTKNotifierContainer = &nc;  	TQTimer *gtkEventProcessor = new TQTimer( &app ); | 
