[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 61277] crash when clicking on the splashscreen
From:       Ravikiran Rajagopal <ravi () kde ! org>
Date:       2003-07-20 22:02:08
[Download RAW message or body]

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
     
http://bugs.kde.org/show_bug.cgi?id=61277     
ravi@kde.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED



------- Additional Comments From ravi@kde.org  2003-07-21 00:02 -------
Subject: kdebase/ksplashml

CVS commit by ravi: 

* Better theme resource location
* Properly handle closing on mouse click

CCMAIL: 61277-done@bugs.kde.org


  M +16 -2     wndmain.cpp   1.15
  M +4 -2      wndmain.h   1.6


--- kdebase/ksplashml/wndmain.cpp  #1.14:1.15
@@ -55,4 +55,8 @@ KSplash::KSplash(const char *name)
   mCurrentAction = mActionList.first();
 
+  config->setGroup( "General" );
+  if ( config->readBoolEntry( "CloseOnClick", TRUE ) )
+    mThemeEngine->installEventFilter( this );
+
   connect( mThemeEngine, SIGNAL(destroyed()), this, SLOT(close()) );
   connect( this, SIGNAL(stepsChanged(int)), SLOT(slotUpdateSteps(int)) );
@@ -222,5 +226,5 @@ void KSplash::upAndRunning( QString s )
     mStep = 9;
     mTimeToGo = true;
-    if(!mSessMgrCalled) emit nextIcon();
+    //if(!mSessMgrCalled) emit nextIcon();
     nextIcon();
   }
@@ -290,5 +294,5 @@ ThemeEngine *KSplash::_loadThemeEngine( 
   // either, we assume that we have been called by startkde. In this case, we simply \
try to load the library whose name should  // conform to the following specification:
-  //       QString("libksplash") + pluginName.lower()
+  //       QString("ksplash") + pluginName.lower()
   // The object should be called as follows:
   //       QString("Theme") + pluginName
@@ -361,2 +365,12 @@ QPtrList<Action> KSplash::actionList()
 }
 
+bool KSplash::eventFilter( QObject *o, QEvent *e )
+{
+  if ( ( e->type() == QEvent::MouseButtonRelease ) && ( o == mThemeEngine ) )
+  {
+    QTimer::singleShot( 200, this, SLOT(close()));
+    return TRUE;
+  }
+  else
+    return FALSE;
+}

--- kdebase/ksplashml/wndmain.h  #1.5:1.6
@@ -1,6 +1,5 @@
 /***************************************************************************
  *   Copyright Brian Ledbetter 2001-2003 <brian@shadowcom.net>             *
- *   Copyright Ravikiran Rajagopal 2003                                    *
- *   ravi@ee.eng.ohio-state.edu                                            *
+ *   Copyright Ravikiran Rajagopal 2003 <ravi@kde.org>                     *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -58,4 +57,7 @@ signals:
   void progressChanged(int);
   void actionListChanged();
+
+protected:
+  bool eventFilter( QObject *o, QEvent *e );
 
 private slots:


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic