[prev in list] [next in list] [prev in thread] [next in thread]
List: kfm-devel
Subject: PATCH: BR# 71162 and BR# 65553
From: "Dawit A." <adawit () kde ! org>
Date: 2004-03-16 17:36:24
Message-ID: 200403161233.56883.adawit () kde ! org
[Download RAW message or body]
Hi,
The attached patch is intended to address the regression with dragging links
and images as described in these reports. Please test...
--
Regards,
Dawit A.
"Preach what you practice, practice what you preach"
["patch-71162.diff" (text/x-diff)]
Index: khtml_part.cpp
===================================================================
RCS file: /home/kde/kdelibs/khtml/khtml_part.cpp,v
retrieving revision 1.978
diff -u -3 -p -r1.978 khtml_part.cpp
--- khtml_part.cpp 8 Mar 2004 14:42:17 -0000 1.978
+++ khtml_part.cpp 16 Mar 2004 22:21:56 -0000
@@ -5363,6 +5367,11 @@ void KHTMLPart::khtmlMouseMoveEvent( kht
d->m_strSelectedURL = d->m_strSelectedURLTarget = QString::null;
d->m_bRightMousePressed = false;
}
+
+ DOM::DOMString url = event->url();
+ DOM::DOMString target = event->target();
+ DOM::Node innerNode = event->innerNode();
+
#ifndef QT_NO_DRAGANDDROP
if( d->m_bDnd && d->m_bMousePressed &&
( (!d->m_strSelectedURL.isEmpty() && !isEditable())
@@ -5374,23 +5383,20 @@ void KHTMLPart::khtmlMouseMoveEvent( kht
HTMLImageElementImpl *img = 0L;
QDragObject *drag = 0;
KURL u;
- if ( d->m_mousePressNode.handle() && d->m_mousePressNode.handle()->id() == ID_IMG )
- {
- // Normal image
- img = static_cast<HTMLImageElementImpl *>(d->m_mousePressNode.handle());
+
+ // qDebug("****************** Event URL: %s", url.string().latin1());
+ // qDebug("****************** Event Target: %s", target.string().latin1());
+
+ // Normal image...
+ if ( url.length() == 0 && innerNode.handle() && innerNode.handle()->id() == ID_IMG )
+ {
+ img = static_cast<HTMLImageElementImpl *>(innerNode.handle());
u = KURL( completeURL( khtml::parseURL(img->getAttribute(ATTR_SRC)).string() ) );
pix = KMimeType::mimeType("image/png")->pixmap(KIcon::Desktop);
}
- else if ( event->innerNode().handle() && event->innerNode().handle()->id() == ID_IMG )
- {
- // Image inside a link?
- img = static_cast<HTMLImageElementImpl *>(event->innerNode().handle());
- u = completeURL( d->m_strSelectedURL );
- pix = KMimeType::mimeType("image/png")->pixmap(KIcon::Desktop);
- }
else
{
- // Text link
+ // Text or image link...
u = completeURL( d->m_strSelectedURL );
pix = KMimeType::pixmapForURL(u, 0, KIcon::Desktop, KIcon::SizeMedium);
}
@@ -5422,10 +5428,6 @@ void KHTMLPart::khtmlMouseMoveEvent( kht
}
#endif
- DOM::DOMString url = event->url();
- DOM::DOMString target = event->target();
- DOM::Node innerNode = event->innerNode();
-
// Not clicked -> mouse over stuff
if ( !d->m_bMousePressed )
{
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic