summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Diamantini <adjam7@gmail.com>2010-04-17 18:27:40 +0200
committerAndrea Diamantini <adjam7@gmail.com>2010-04-17 18:27:40 +0200
commit8ef95ed5f65c07020a91b9fce306eacc0309794a (patch)
tree1292b44906fddb23d368335daf32eed615a7ca70
parentBased on Lionel's merge request #80: (diff)
downloadrekonq-8ef95ed5f65c07020a91b9fce306eacc0309794a.tar.xz
Clean tab previews, not showing on loading
removed a duplicated method and save one QPixmap in WebSnap class
-rw-r--r--src/tabbar.cpp5
-rw-r--r--src/urlbar/listitem.cpp24
-rw-r--r--src/urlbar/listitem.h3
-rw-r--r--src/websnap.cpp8
-rw-r--r--src/websnap.h1
5 files changed, 12 insertions, 29 deletions
diff --git a/src/tabbar.cpp b/src/tabbar.cpp
index 518b1a96..f8da57b1 100644
--- a/src/tabbar.cpp
+++ b/src/tabbar.cpp
@@ -164,13 +164,16 @@ void TabBar::showTabPreview(int tab)
delete m_previewPopup.data();
m_previewPopup.clear();
+ if (indexedTab->progress() != 0)
+ return;
+
m_previewPopup = new KPassivePopup(this);
m_previewPopup.data()->setFrameShape(QFrame::StyledPanel);
m_previewPopup.data()->setFrameShadow(QFrame::Plain);
m_previewPopup.data()->setFixedSize(w, h);
QLabel *l = new QLabel();
- l->setPixmap( WebSnap::renderPreview( *indexedTab->page(), w, h, false) );
+ l->setPixmap( WebSnap::renderPreview( *indexedTab->page(), w, h, true) );
m_previewPopup.data()->setView(l);
m_previewPopup.data()->layout()->setAlignment(Qt::AlignTop);
diff --git a/src/urlbar/listitem.cpp b/src/urlbar/listitem.cpp
index 6f91aabd..229b43e9 100644
--- a/src/urlbar/listitem.cpp
+++ b/src/urlbar/listitem.cpp
@@ -31,6 +31,7 @@
// Local Includes
#include "urlresolver.h"
#include "application.h"
+#include "websnap.h"
// KDE Includes
#include <KIcon>
@@ -238,7 +239,8 @@ ItemPreview::ItemPreview(const QString &url, int width, int height, QWidget *par
setFixedSize(width, height);
setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
- QString path = KStandardDirs::locateLocal("cache", QString("thumbs/") + guessNameFromUrl( QUrl(url) ) + ".png", true);
+ KUrl u = WebSnap::fileForUrl( QUrl(url) );
+ QString path = u.pathOrUrl();
if(QFile::exists(path))
{
QPixmap preview;
@@ -248,26 +250,6 @@ ItemPreview::ItemPreview(const QString &url, int width, int height, QWidget *par
}
-//TODO: REMOVE DUPLICATE CODE WITH PREVIEWIMAGE
-QString ItemPreview::guessNameFromUrl(QUrl url)
-{
- QString name = url.toString( QUrl::RemoveScheme | QUrl::RemoveUserInfo | QUrl::StripTrailingSlash );
-
- // TODO learn Regular Expressions :)
- // and implement something better here..
- name.remove('/');
- name.remove('&');
- name.remove('.');
- name.remove('-');
- name.remove('_');
- name.remove('?');
- name.remove('=');
- name.remove('+');
-
- return name;
-}
-
-
// ---------------------------------------------------------------
diff --git a/src/urlbar/listitem.h b/src/urlbar/listitem.h
index 2f6f898a..8a6f520f 100644
--- a/src/urlbar/listitem.h
+++ b/src/urlbar/listitem.h
@@ -193,9 +193,6 @@ class ItemPreview : public QLabel
public:
ItemPreview(const QString &url, int width, int height, QWidget *parent = 0);
-
-private:
- static QString guessNameFromUrl(QUrl url);
};
diff --git a/src/websnap.cpp b/src/websnap.cpp
index 906bbc1e..612fdf4e 100644
--- a/src/websnap.cpp
+++ b/src/websnap.cpp
@@ -146,20 +146,22 @@ QString WebSnap::guessNameFromUrl(QUrl url)
void WebSnap::saveResult(bool ok)
{
+ QPixmap image = QPixmap();
+
// crude error-checking
if (!ok)
{
kDebug() << "Error loading site..";
m_snapTitle = "Error...";
- m_image = QPixmap();
+
}
else
{
- m_image = renderPreview(m_page, WIDTH, HEIGHT);
+ image = renderPreview(m_page, WIDTH, HEIGHT);
m_snapTitle = m_page.mainFrame()->title();
}
QFile::remove(fileForUrl(m_url).toLocalFile());
- m_image.save(fileForUrl(m_url).toLocalFile());
+ image.save(fileForUrl(m_url).toLocalFile());
NewTabPage p( m_frame );
p.snapFinished(m_previewIndex, m_url, m_snapTitle);
diff --git a/src/websnap.h b/src/websnap.h
index e7c9e593..9773b4cc 100644
--- a/src/websnap.h
+++ b/src/websnap.h
@@ -78,7 +78,6 @@ private slots:
private:
QWebPage m_page;
- QPixmap m_image;
QUrl m_url;
QString m_snapTitle;