[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