From cbbc7ca17e0e5edccf44bb448839982fc42ca5de Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Thu, 8 Oct 2009 01:36:09 +0200 Subject: TONS of events ignored to let homepage no more crash! Hopefully... I hope I also not have removed some rekonq features this way. It seems not, anyway (obviously) it needs tests --- src/homepage.cpp | 4 ++-- src/previewimage.cpp | 20 ++++++++++++++++++++ src/previewimage.h | 5 ++++- src/websnap.cpp | 9 +++++++-- src/websnap.h | 1 + src/webview.cpp | 9 +++++++++ src/webview.h | 1 + 7 files changed, 44 insertions(+), 5 deletions(-) diff --git a/src/homepage.cpp b/src/homepage.cpp index 6aef42a9..3cc908a9 100644 --- a/src/homepage.cpp +++ b/src/homepage.cpp @@ -120,7 +120,7 @@ QString HomePage::fillFavorites() speed += ""; speed += ""; - speed += "

"; + speed += "
"; speed += "" + text + ""; } @@ -154,7 +154,7 @@ QString HomePage::lastVisitedSites() last += ""; last += ""; - last += "

"; + last += "
"; last += "" + text + ""; sites++; } diff --git a/src/previewimage.cpp b/src/previewimage.cpp index 07eca1b0..7c3752cc 100644 --- a/src/previewimage.cpp +++ b/src/previewimage.cpp @@ -71,6 +71,7 @@ PreviewImage::PreviewImage(const QUrl &url) PreviewImage::~PreviewImage() { + delete ws; } @@ -87,6 +88,19 @@ void PreviewImage::setSiteImage() } +void PreviewImage::mouseDoubleClickEvent(QMouseEvent *event) +{ + Q_UNUSED(event); +} + + +void PreviewImage::mouseMoveEvent(QMouseEvent *event) +{ + kDebug() << "moving mouse over preview image"; + Q_UNUSED(event) +} + + void PreviewImage::mousePressEvent(QMouseEvent *event) { switch(event->button()) @@ -103,6 +117,12 @@ void PreviewImage::mousePressEvent(QMouseEvent *event) } +void PreviewImage::mouseReleaseEvent(QMouseEvent *event) +{ + Q_UNUSED(event) +} + + QString PreviewImage::guessNameFromUrl(QUrl url) { QString name = url.toString( QUrl::RemoveScheme | QUrl::RemoveUserInfo | QUrl::StripTrailingSlash ); diff --git a/src/previewimage.h b/src/previewimage.h index b3f184aa..6ccc5c97 100644 --- a/src/previewimage.h +++ b/src/previewimage.h @@ -49,8 +49,11 @@ public slots: void setSiteImage(); protected: + void mouseDoubleClickEvent(QMouseEvent *event); + void mouseMoveEvent(QMouseEvent *event); void mousePressEvent(QMouseEvent *event); - + void mouseReleaseEvent(QMouseEvent *event); + private: QPixmap m_pixmap; WebSnap *ws; diff --git a/src/websnap.cpp b/src/websnap.cpp index 35f1cd39..9e7108b0 100644 --- a/src/websnap.cpp +++ b/src/websnap.cpp @@ -63,6 +63,11 @@ WebSnap::WebSnap(const QUrl &url) } +WebSnap::~WebSnap() +{ +} + + void WebSnap::load() { m_page.mainFrame()->load(m_url); @@ -72,8 +77,8 @@ void WebSnap::load() QPixmap WebSnap::renderPreview(const QWebPage &page,int w, int h) { // prepare page - page.mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); //Why it doesn't work with one setScrollBarPolicy ? bug in qtwebkit ? - page.mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); + page.mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); // Why it doesn't work with one setScrollBarPolicy? + page.mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); // bug in qtwebkit ? page.mainFrame()->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); page.mainFrame()->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); diff --git a/src/websnap.h b/src/websnap.h index 7417456b..9a41f65d 100644 --- a/src/websnap.h +++ b/src/websnap.h @@ -48,6 +48,7 @@ class WebSnap : public QObject public: WebSnap(const QUrl &url); + ~WebSnap(); QPixmap previewImage(); static QPixmap renderPreview(const QWebPage &page, int w, int h); diff --git a/src/webview.cpp b/src/webview.cpp index 1c46041c..68311315 100644 --- a/src/webview.cpp +++ b/src/webview.cpp @@ -341,6 +341,15 @@ void WebView::mousePressEvent(QMouseEvent *event) } +void WebView::mouseMoveEvent(QMouseEvent *event) +{ + if( url().protocol() != "rekonq" ) + { + QWebView::mouseMoveEvent(event); + } +} + + void WebView::wheelEvent(QWheelEvent *event) { if (QApplication::keyboardModifiers() & Qt::ControlModifier) diff --git a/src/webview.h b/src/webview.h index 4dc7306d..0b4614a1 100644 --- a/src/webview.h +++ b/src/webview.h @@ -55,6 +55,7 @@ public: protected: void contextMenuEvent(QContextMenuEvent *event); void mousePressEvent(QMouseEvent *event); + void mouseMoveEvent(QMouseEvent *event); void wheelEvent(QWheelEvent *event); private slots: -- cgit v1.2.1