rpms/kdebase-workspace/F-11 kdebase-workspace-4.2.4-krunner-tab.patch, NONE, 1.1 kdebase-workspace.spec, 1.221, 1.222

Lukas Tinkl ltinkl at fedoraproject.org
Mon May 18 13:41:31 UTC 2009


Author: ltinkl

Update of /cvs/extras/rpms/kdebase-workspace/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv30524/F-11

Modified Files:
	kdebase-workspace.spec 
Added Files:
	kdebase-workspace-4.2.4-krunner-tab.patch 
Log Message:
fix TAB completion in krunner


kdebase-workspace-4.2.4-krunner-tab.patch:

--- NEW FILE kdebase-workspace-4.2.4-krunner-tab.patch ---
Index: workspace/krunner/interfaces/default/interface.cpp
===================================================================
--- workspace/krunner/interfaces/default/interface.cpp	(revision 964128)
+++ workspace/krunner/interfaces/default/interface.cpp	(revision 964129)
@@ -120,13 +120,13 @@
     KLineEdit *lineEdit = new KLineEdit(m_searchTerm);
     QAction *focusEdit = new QAction(this);
     focusEdit->setShortcut(Qt::Key_F6);
-
+    
     // in therory, the widget should detect the direction from the content
     // but this is not available in Qt4.4/KDE 4.2, so the best default for this widget
     // is LTR: as it's more or less a "command line interface"
     // FIXME remove this code when KLineEdit has automatic direction detection of the "paragraph"
     m_searchTerm->setLayoutDirection( Qt::LeftToRight );
-
+    
     connect(focusEdit, SIGNAL(triggered(bool)), lineEdit, SLOT(setFocus()));
     addAction(focusEdit);
 
@@ -179,7 +179,7 @@
     m_resultsView->setAlignment(Qt::AlignLeft | Qt::AlignTop);
 
     //kDebug() << "size:" << m_resultsView->size() << m_resultsView->minimumSize();
-    m_resultsScene = new ResultScene(runnerManager, m_searchTerm, this);
+    m_resultsScene = new ResultScene(runnerManager, this);
     m_resultsView->setScene(m_resultsScene);
     m_resultsView->setMinimumSize(m_resultsScene->minimumSizeHint());
     connect(m_resultsScene, SIGNAL(matchCountChanged(int)), this, SLOT(matchCountChanged(int)));
Index: workspace/krunner/interfaces/default/resultscene.h
===================================================================
--- workspace/krunner/interfaces/default/resultscene.h	(revision 964128)
+++ workspace/krunner/interfaces/default/resultscene.h	(revision 964129)
@@ -45,7 +45,7 @@
     Q_OBJECT
 
     public:
-        explicit ResultScene(Plasma::RunnerManager *runnerManager, QWidget * focusBase, QObject *parent = 0);
+        explicit ResultScene(Plasma::RunnerManager *runnerManager, QObject *parent = 0);
         ~ResultScene();
 
         void resize(int width, int height);
@@ -80,7 +80,6 @@
     private:
         ResultItem* addQueryMatch(const Plasma::QueryMatch &match, bool useAnyId);
         void performResize(int width, int height);
-        bool canMoveItemFocus() const;
 
         Plasma::RunnerManager *m_runnerManager;
 
@@ -106,8 +105,6 @@
         uint m_currentPage;
         Plasma::FrameSvg *m_frame;
 
-        QWidget *m_focusBase;
-	
     private slots:
         void layoutIcons();
         void slotArrowResultItemPressed();
Index: workspace/krunner/interfaces/default/resultscene.cpp
===================================================================
--- workspace/krunner/interfaces/default/resultscene.cpp	(revision 964128)
+++ workspace/krunner/interfaces/default/resultscene.cpp	(revision 964129)
@@ -41,15 +41,14 @@
 
 #include "resultitem.h"
 
-ResultScene::ResultScene(Plasma::RunnerManager *manager, QWidget * focusBase, QObject *parent)
+ResultScene::ResultScene(Plasma::RunnerManager *manager, QObject *parent)
     : QGraphicsScene(parent),
       m_runnerManager(manager),
       m_cIndex(0),
       m_rowStride(0),
       m_pageStride(0),
       m_pageCount(0),
-      m_currentPage(0),
-      m_focusBase(focusBase)
+      m_currentPage(0)
 {
     setItemIndexMethod(NoIndex);
 
@@ -123,15 +122,6 @@
     emit matchCountChanged(0);
 }
 
-bool ResultScene::canMoveItemFocus() const
-{
-    // We prevent a late query result from stealing the item focus from the user
-    // The item focus can be moved only if the focusBase widget (the khistorycombobox)
-    // has focus (i.e. the user is still typing or waiting) or if there is no item currently focused
-
-    return m_focusBase->hasFocus() || (!focusItem());
-}
-
 void ResultScene::setQueryMatches(const QList<Plasma::QueryMatch> &m)
 {
     // kDebug() << "============================" << endl << "matches retrieved: " << m.count();
@@ -194,15 +184,15 @@
         item->setIndex(i);
 
         // it is vital that focus is set *after* the index
-        if (i == 0 && canMoveItemFocus()) {
+        if (i == 0) {
             setFocusItem(item);
-            emit itemHoverEnter(item);
         }
 
         ++i;
         tab = item;
     }
 
+    emit itemHoverEnter(m_items.at(0));
 }
 
 ResultItem* ResultScene::addQueryMatch(const Plasma::QueryMatch &match, bool useAnyId)


Index: kdebase-workspace.spec
===================================================================
RCS file: /cvs/extras/rpms/kdebase-workspace/F-11/kdebase-workspace.spec,v
retrieving revision 1.221
retrieving revision 1.222
diff -u -p -r1.221 -r1.222
--- kdebase-workspace.spec	14 May 2009 02:38:22 -0000	1.221
+++ kdebase-workspace.spec	18 May 2009 13:41:00 -0000	1.222
@@ -8,7 +8,7 @@ Summary: K Desktop Environment - Workspa
 Name: kdebase-workspace
 Version: 4.2.3
 
-Release: 3%{?dist}
+Release: 4%{?dist}
 Source0: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/kdebase-workspace-%{version}.tar.bz2
 License: GPLv2
 Group: User Interface/Desktops
@@ -46,6 +46,9 @@ Patch103: kdebase-workspace-4.2.0-kde#18
 Patch105: kdebase-workspace-4.3.0-desktopnumbers.patch
 # from 4.3: check for network avail. through Solid/NM in the weather dataengine
 Patch106: kdebase-workspace-4.2.3-weather-dataengine-nm.patch
+# Fix krunner TAB completion
+# http://websvn.kde.org/?view=rev&revision=961314
+Patch107: kdebase-workspace-4.2.4-krunner-tab.patch
 
 
 # FIXME: Should we restore this now that kdebase no longer depends on kdebase-workspace?
@@ -242,6 +245,7 @@ popd
 %patch103 -p1 -b .kde#180576
 %patch105 -p0 -b .desktopnumbers
 %patch106 -p1 -b .weather-dataengine-nm
+%patch107 -p1 -b .krunner-tab
 
 %build
 
@@ -516,6 +520,9 @@ fi
 
 
 %changelog
+* Mon May 18 2009 Lukáš Tinkl <ltinkl at redhat.com> - 4.2.3-4
+- fix TAB completion in krunner
+
 * Thu May 14 2009 Kevin Kofler <Kevin at tigcc.ticalc.org> - 4.2.3-3
 - check for network availability through Solid/NM in the weather dataengine
 




More information about the scm-commits mailing list