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

List:       kde-devel
Subject:    Re: Flickering problem in kicker (trunk)
From:       "=?UTF-8?Q?Rafael_Fern=C3=A1ndez_L=C3=B3pez?=" <ereslibre () gmail ! com>
Date:       2006-10-15 20:05:53
Message-ID: 93f85fee0610151305i2be9a12g2c7829d7307f7edc () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]

[Attachment #4 (text/plain)]

Oh God... my head... I attach the patch here...

Bye,
Rafael Fernández López.

[Attachment #5 (text/html)]

Oh God... my head... I attach the patch here...<br><br>Bye,<br>Rafael Fernández López.<br>

["patch.diff" (text/plain)]

Index: workspace/kicker/kicker/ui/addapplet.h
===================================================================
--- workspace/kicker/kicker/ui/addapplet.h	(revisión: 595584)
+++ workspace/kicker/kicker/ui/addapplet.h	(copia de trabajo)
@@ -62,6 +62,7 @@ class AddAppletDialog : public KDialog
     private:
         bool appletMatchesSearch(const AppletWidget* w, const QString& s);
 
+        QWidget *m_appletBox;
         AppletView *m_mainWidget;
 
         AppletInfo::List m_applets;
Index: workspace/kicker/kicker/ui/addapplet.cpp
===================================================================
--- workspace/kicker/kicker/ui/addapplet.cpp	(revisión: 595584)
+++ workspace/kicker/kicker/ui/addapplet.cpp	(copia de trabajo)
@@ -65,7 +65,7 @@ AppletWidget::AppletWidget(const AppletI
       m_selected(false)
 {
     setFocusPolicy(Qt::StrongFocus);
-    setSelected(m_selected);
+    //setSelected(m_selected); (uncomment when different than false)
 
     itemTitle->setText("<h3>" + info.name() + "</h3>");
     itemTitle->installEventFilter(this);
@@ -77,8 +77,7 @@ AppletWidget::AppletWidget(const AppletI
 
     itemDescription->installEventFilter(this);
 
-    KIconLoader * ldr = KGlobal::iconLoader();
-    QPixmap icon = ldr->loadIcon(info.icon(), K3Icon::Panel, K3Icon::SizeLarge);
+    QPixmap icon = KGlobal::iconLoader()->loadIcon(info.icon(), K3Icon::Panel, K3Icon::SizeLarge);
     itemPixmap->setPixmap(icon);
     itemPixmap->installEventFilter(this);
 }
@@ -302,14 +301,14 @@ void AddAppletDialog::closeEvent(QCloseE
 
 void AddAppletDialog::populateApplets()
 {
-    QWidget *appletBox = new QWidget(m_mainWidget->appletScrollView->viewport());
+    m_appletBox = new QWidget(m_mainWidget->appletScrollView->viewport());
     QPalette p = palette();
     p.setColor(backgroundRole(),KGlobalSettings::baseColor());
     setPalette(p);
-    m_mainWidget->appletScrollView->setWidget(appletBox);
-    appletBox->show();
+    m_mainWidget->appletScrollView->setWidget(m_appletBox);
+    m_appletBox->hide();
 
-    QVBoxLayout* layout = new QVBoxLayout(appletBox);
+    QVBoxLayout* layout = new QVBoxLayout(m_appletBox);
     layout->addStretch(1);
     layout->setMargin(0);
 
@@ -332,21 +331,27 @@ void AddAppletDialog::populateApplets()
 
     int i = 0;
     bool odd = true;
-    QWidget* prevTabWidget = m_mainWidget->appletFilter;
+    AppletInfo cpIt;
+
     for (AppletInfo::List::iterator it = appletInfoList.begin();
          !m_closing && it != appletInfoList.end();
          ++i)
     {
-        if ((*it).isHidden() || (*it).name().isEmpty() ||
-            ((*it).isUniqueApplet() &&
-             PluginManager::self()->hasInstance(*it)))
+        cpIt = *it;
+
+        if (cpIt.isHidden() || cpIt.name().isEmpty() ||
+            (cpIt.isUniqueApplet() &&
+             PluginManager::self()->hasInstance(cpIt)))
         {
             it = appletInfoList.erase(it);
             --i;
             continue;
         }
 
-        AppletWidget *itemWidget = new AppletWidget(*it, odd, appletBox);
+        AppletWidget *itemWidget = new AppletWidget(cpIt, odd, m_appletBox);
+
+        layout->insertWidget(i, itemWidget);
+        m_appletWidgetList.append(itemWidget);
 
         if (m_mainWidget->appletSearch->text().isEmpty() ||
             appletMatchesSearch(itemWidget, m_mainWidget->appletSearch->text()))
@@ -359,12 +364,6 @@ void AddAppletDialog::populateApplets()
             itemWidget->hide();
         }
 
-        layout->insertWidget(i, itemWidget);
-        itemWidget->show();
-        m_appletWidgetList.append(itemWidget);
-        setTabOrder(prevTabWidget, itemWidget);
-        prevTabWidget = itemWidget;
-
         connect(itemWidget, SIGNAL(clicked(AppletWidget*)),
                 this, SLOT(selectApplet(AppletWidget*)));
         connect(itemWidget, SIGNAL(doubleClicked(AppletWidget*)),
@@ -382,6 +381,7 @@ void AddAppletDialog::populateApplets()
     }
 
     m_mainWidget->closeButton->setEnabled(true);
+    m_appletBox->show();
 }
 
 void AddAppletDialog::selectApplet(AppletWidget *applet)
@@ -490,6 +490,8 @@ bool AddAppletDialog::appletMatchesSearc
 
 void AddAppletDialog::search(const QString &s)
 {
+    m_appletBox->hide();
+
     QList<AppletWidget*>::const_iterator itEnd = m_appletWidgetList.constEnd();
 
     bool odd = true;
@@ -509,6 +511,8 @@ void AddAppletDialog::search(const QStri
             w->hide();
         }
     }
+
+    m_appletBox->show();
 }
 
 void AddAppletDialog::filter(int i)


>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


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

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