[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