[SCM] KDE Base Workspace module packaging branch, kde4.8, updated. debian/4.8.3-2-17-gcb42096

José Manuel Santamaría Lema santa-guest at alioth.debian.org
Fri Jun 8 05:35:36 UTC 2012


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-sc/kdebase-workspace.git;a=commitdiff;h=2896da3

The following commit has been merged in the kde4.8 branch:
commit 2896da3b354ab8f2c3afa6fcca43f70ac1747097
Author: José Manuel Santamaría Lema <panfaust at gmail.com>
Date:   Fri Jun 8 04:36:13 2012 +0200

    Add process_table_unclickable.diff.
---
 debian/changelog                              |    1 +
 debian/patches/process_table_unclickable.diff |  240 +++++++++++++++++++++++++
 debian/patches/series                         |    1 +
 3 files changed, 242 insertions(+), 0 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index e33245c..ef73fd1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ kde-workspace (4:4.8.4-0r1) UNRELEASED; urgency=low
 
   [ José Manuel Santamaría Lema ]
   * Bump kde-sc-dev-latest build dependency to 4:4.8.4.
+  * Add process_table_unclickable.diff. 
   * Refresh patches to make them apply without any offset.
   * Confirm symbols files on more architectures with the 4.8.3 build logs.
   * Set plasma-scriptengine-googlegadgets priority to 'optional'. This fixes the
diff --git a/debian/patches/process_table_unclickable.diff b/debian/patches/process_table_unclickable.diff
new file mode 100644
index 0000000..60266bd
--- /dev/null
+++ b/debian/patches/process_table_unclickable.diff
@@ -0,0 +1,240 @@
+From b6fa43be9d86a577dd103dc4fa727770725e2d85 Mon Sep 17 00:00:00 2001
+From: John Tapsell <johnflux at gmail.com>
+Date: Wed, 6 Jun 2012 20:18:39 +0100
+Subject: [PATCH] Remove second invisible ProcessTable widget that was making
+ the process table tab unclickable
+
+BUG: 270402
+---
+ ksysguard/gui/ProcessTable.h |   30 ------------------------------
+ ksysguard/gui/WorkSheet.cpp  |   13 ++++++-------
+ ksysguard/gui/ksysguard.cpp  |   39 +++++++++++++++++++--------------------
+ ksysguard/gui/ksysguard.h    |    6 ++++++
+ 4 files changed, 31 insertions(+), 57 deletions(-)
+ delete mode 100644 ksysguard/gui/ProcessTable.h
+
+diff --git a/ksysguard/gui/ProcessTable.h b/ksysguard/gui/ProcessTable.h
+deleted file mode 100644
+index 97df235..0000000
+--- a/ksysguard/gui/ProcessTable.h
++++ /dev/null
+@@ -1,30 +0,0 @@
+-/*
+-    KSysGuard, the KDE System Guard
+-   
+-    Copyright (c) 2009 - John Tapsell <tapsell at kde.org>
+-    
+-    This program is free software; you can redistribute it and/or
+-    modify it under the terms of the GNU General Public
+-    License version 2 or at your option version 3 as published by
+-    the Free Software Foundation.
+-
+-    This program is distributed in the hope that it will be useful,
+-    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-    GNU General Public License for more details.
+-
+-    You should have received a copy of the GNU General Public License
+-    along with this program; if not, write to the Free Software
+-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+-
+-*/
+-
+-#ifndef PROCESS_TABLE_H_VARS__
+-#define PROCESS_TABLE_H_VARS__
+-
+-class ProcessController;
+-
+-/* This is the process list widget */
+-extern ProcessController *sLocalProcessController;
+-
+-#endif
+diff --git a/ksysguard/gui/WorkSheet.cpp b/ksysguard/gui/WorkSheet.cpp
+index 04391fe..a50019a 100644
+--- a/ksysguard/gui/WorkSheet.cpp
++++ b/ksysguard/gui/WorkSheet.cpp
+@@ -41,11 +41,11 @@
+ #include "DancingBars.h"
+ #include "DummyDisplay.h"
+ #include "FancyPlotter.h"
++#include "ksysguard.h"
+ #include "ListView.h"
+ #include "LogFile.h"
+ #include "MultiMeter.h"
+ #include "ProcessController.h"
+-#include "ProcessTable.h"
+ #include "SensorLogger.h"
+ #include "WorkSheet.h"
+ #include "WorkSheetSettings.h"
+@@ -337,13 +337,12 @@ KSGRD::SensorDisplay* WorkSheet::insertDisplay( DisplayType displayType, QString
+             break;
+         case DisplayProcessControllerRemote:
+             newDisplay = new ProcessController(this, &mSharedSettings);
++            newDisplay->setObjectName("remote process controller");
+             break;
+         case DisplayProcessControllerLocal:
+-            Q_ASSERT(sLocalProcessController);
+-            if (!sLocalProcessController->parentWidget())
+-                newDisplay = sLocalProcessController;
+-            else
+-                newDisplay = new ProcessController(this, &mSharedSettings);
++            newDisplay = new ProcessController(this, &mSharedSettings);
++            if (!Toplevel->localProcessController())
++                Toplevel->setLocalProcessController(static_cast<ProcessController *>(newDisplay));
+             break;
+         default:
+             Q_ASSERT(false);
+@@ -595,7 +594,7 @@ void WorkSheet::replaceDisplay( int index, KSGRD::SensorDisplay* newDisplay )
+         mDisplayList.append(newDisplay);
+     } else {
+         // remove the old display && sensor frame at this location
+-        if( mDisplayList[ index ] && mDisplayList[ index ] != sLocalProcessController )
++        if( mDisplayList[ index ] && mDisplayList[ index ] != Toplevel->localProcessController() )
+             delete mDisplayList[ index ];
+         mDisplayList[index] = newDisplay;
+     }
+diff --git a/ksysguard/gui/ksysguard.cpp b/ksysguard/gui/ksysguard.cpp
+index 5e9fddf..2ad34f2 100644
+--- a/ksysguard/gui/ksysguard.cpp
++++ b/ksysguard/gui/ksysguard.cpp
+@@ -60,25 +60,22 @@
+ #include "StyleEngine.h"
+ #include "HostConnector.h"
+ #include "ProcessController.h"
+-#include "ProcessTable.h"
+ #include "processui/ksysguardprocesslist.h"
+ 
+ #include "ksysguard.h"
+ 
+-
+-ProcessController *sLocalProcessController = NULL;
+-
+ //Comment out to stop ksysguard from forking.  Good for debugging
+ //#define FORK_KSYSGUARD
+ 
+ static const char Description[] = I18N_NOOP( "KDE System Monitor" );
+-TopLevel* topLevel;
++TopLevel* Toplevel;
+ 
+ TopLevel::TopLevel()
+   : KXmlGuiWindow( NULL, Qt::WindowFlags(KDE_DEFAULT_WINDOWFLAGS) | Qt::WindowContextHelpButtonHint)
+ {
+   QDBusConnection::sessionBus().registerObject("/", this, QDBusConnection::ExportScriptableSlots);
+   mTimerId = -1;
++  mLocalProcessController = NULL;
+ 
+   mSplitter = new QSplitter( this );
+   mSplitter->setOrientation( Qt::Horizontal );
+@@ -93,9 +90,6 @@ TopLevel::TopLevel()
+   connect( mWorkSpace, SIGNAL(currentChanged(int)),
+            SLOT(currentTabChanged(int)) );
+ 
+-  sLocalProcessController = new ProcessController( this, NULL);
+-  connect( sLocalProcessController, SIGNAL(processListChanged()), this, SLOT(updateProcessCount()));
+-
+   /* Create the status bar. It displays some information about the
+    * number of processes and the memory consumption of the local
+    * host. */
+@@ -149,6 +143,16 @@ TopLevel::TopLevel()
+   retranslateUi();
+ }
+ 
++void TopLevel::setLocalProcessController(ProcessController * localProcessController)
++{
++  Q_ASSERT(!mLocalProcessController);
++  mLocalProcessController = localProcessController;
++  connect( mLocalProcessController, SIGNAL(processListChanged()), this, SLOT(updateProcessCount()));
++  for(int i = 0; i < mLocalProcessController->actions().size(); i++) {
++    actionCollection()->addAction("processAction" + QString::number(i), mLocalProcessController->actions().at(i));
++  }
++}
++
+ void TopLevel::retranslateUi()
+ {
+   setPlainCaption( i18n( "System Monitor" ) );
+@@ -356,7 +360,7 @@ void TopLevel::timerEvent( QTimerEvent* )
+ }
+ 
+ void TopLevel::updateProcessCount()  {
+-    const QString s = i18np( "1 process" "\xc2\x9c" "1", "%1 processes" "\xc2\x9c" "%1", sLocalProcessController->processList()->visibleProcessesCount() );
++    const QString s = i18np( "1 process" "\xc2\x9c" "1", "%1 processes" "\xc2\x9c" "%1", mLocalProcessController->processList()->visibleProcessesCount() );
+     sbProcessCount->setText( s );
+ }
+ void TopLevel::changeEvent( QEvent * event )
+@@ -402,11 +406,6 @@ void TopLevel::readProperties( const KConfigGroup& cfg )
+   KSGRD::Style->readProperties( cfg );
+ 
+   mWorkSpace->readProperties( cfg );
+-
+-  QList<WorkSheet *> workSheets = mWorkSpace->getWorkSheets();
+-  for(int i = 0; i < sLocalProcessController->actions().size(); i++) {
+-    actionCollection()->addAction("processAction" + QString::number(i), sLocalProcessController->actions().at(i));
+-  }
+ }
+ 
+ void TopLevel::saveProperties( KConfigGroup& cfg )
+@@ -561,22 +560,22 @@ extern "C" KDE_EXPORT int kdemain( int argc, char** argv )
+   write( initpipe[ 1 ], &c, 1 );
+   close( initpipe[ 1 ] );
+ #endif
+-  topLevel = new TopLevel();
++  Toplevel = new TopLevel();
+ 
+ 
+   // create top-level widget
+-  topLevel->readProperties( KConfigGroup( KGlobal::config(), "MainWindow" ) );
++  Toplevel->readProperties( KConfigGroup( KGlobal::config(), "MainWindow" ) );
+   // setup the statusbar, toolbar etc.
+   // Note that this comes after creating the top-level widgets whcih also 
+   // sets up the various QActions that the user may have added to the toolbar
+-  topLevel->initStatusBar();
++  Toplevel->initStatusBar();
+ 
+   //There seems to be some serious bugs with the session restore code.  Disabling
+ //  if ( app->isSessionRestored() )
+-//    topLevel->restore( 1 );
++//    Toplevel->restore( 1 );
+ 
+-  topLevel->show();
+-  KSGRD::SensorMgr->setBroadcaster( topLevel );  // SensorMgr uses a QPointer for toplevel, so it is okay if topLevel is deleted first
++  Toplevel->show();
++  KSGRD::SensorMgr->setBroadcaster( Toplevel );  // SensorMgr uses a QPointer for toplevel, so it is okay if Toplevel is deleted first
+ 
+   // run the application
+   int result = app->exec();
+diff --git a/ksysguard/gui/ksysguard.h b/ksysguard/gui/ksysguard.h
+index b597a0a..bc9dc9c 100644
+--- a/ksysguard/gui/ksysguard.h
++++ b/ksysguard/gui/ksysguard.h
+@@ -30,8 +30,11 @@
+ #include <ksgrd/SensorClient.h>
+ 
+ class QSplitter;
++class QAction;
++class KAction;
+ class SensorBrowserWidget;
+ class Workspace;
++class ProcessController;
+ 
+ 
+ class TopLevel : public KXmlGuiWindow, public KSGRD::SensorClient
+@@ -48,6 +51,8 @@ class TopLevel : public KXmlGuiWindow, public KSGRD::SensorClient
+     virtual void answerReceived( int id, const QList<QByteArray> & );
+ 
+     void initStatusBar();
++    void setLocalProcessController(ProcessController * localProcessController);
++    ProcessController *localProcessController() const { return mLocalProcessController; }
+ 
+   public Q_SLOTS:
+     Q_SCRIPTABLE Q_NOREPLY void showOnCurrentDesktop();
+@@ -99,6 +104,7 @@ class TopLevel : public KXmlGuiWindow, public KSGRD::SensorClient
+     QLabel *sbCpuStat;
+     QLabel *sbMemTotal;
+     QLabel *sbSwapTotal;
++    ProcessController *mLocalProcessController;
+ 
+     QList<int> mSplitterSize;
+ };
+-- 
+1.7.10
+
diff --git a/debian/patches/series b/debian/patches/series
index d1601ab..7d380a5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -17,3 +17,4 @@ initialize_variables_crashfix.diff
 enable_dlrestrcitions.diff
 kdm_vt_switching_on_kfreebsd.diff
 nlist_ftbfs_krefreebsd.diff
+process_table_unclickable.diff

-- 
KDE Base Workspace module packaging



More information about the pkg-kde-commits mailing list