[webkit-changes] cvs commit: WebCore/kwq KWQPoint.mm
KWQPointArray.h WebCoreBridge.mm
Timothy
thatcher at opensource.apple.com
Mon Dec 5 11:57:34 PST 2005
thatcher 05/12/05 11:57:34
Modified: . Tag: Safari-2-0-branch ChangeLog
kwq Tag: Safari-2-0-branch KWQPoint.mm KWQPointArray.h
WebCoreBridge.mm
Log:
Merged fix from TOT to Safari-2-0-branch
2005-12-05 Vicki Murley <vicki at apple.com>
Reviewed by John.
- fix <rdar://problem/4363132> Regression: status bar shows wrong text when mousing over links
in wacky frameset at directory.apple.com
* kwq/WebCoreBridge.mm:
(-[WebCoreBridge elementAtPoint:]): reuse point to work with nested frames; add the overflow clip to
accommodate any scrolling
Revision Changes Path
No revision
No revision
1.1.2.94 +15 -0 WebCore/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/WebCore/ChangeLog,v
retrieving revision 1.1.2.93
retrieving revision 1.1.2.94
diff -u -r1.1.2.93 -r1.1.2.94
--- ChangeLog 4 Dec 2005 23:07:24 -0000 1.1.2.93
+++ ChangeLog 5 Dec 2005 19:57:25 -0000 1.1.2.94
@@ -1,3 +1,18 @@
+2005-12-05 Timothy Hatcher <timothy at apple.com>
+
+ Merged fix from TOT to Safari-2-0-branch
+
+ 2005-12-05 Vicki Murley <vicki at apple.com>
+
+ Reviewed by John.
+
+ - fix <rdar://problem/4363132> Regression: status bar shows wrong text when mousing over links
+ in wacky frameset at directory.apple.com
+
+ * kwq/WebCoreBridge.mm:
+ (-[WebCoreBridge elementAtPoint:]): reuse point to work with nested frames; add the overflow clip to
+ accommodate any scrolling
+
=== WebCore-417.9 ===
2005-12-04 Timothy Hatcher <timothy at apple.com>
No revision
No revision
1.9.18.1 +5 -0 WebCore/kwq/KWQPoint.mm
Index: KWQPoint.mm
===================================================================
RCS file: /cvs/root/WebCore/kwq/KWQPoint.mm,v
retrieving revision 1.9
retrieving revision 1.9.18.1
diff -u -r1.9 -r1.9.18.1
--- KWQPoint.mm 4 May 2004 16:29:50 -0000 1.9
+++ KWQPoint.mm 5 Dec 2005 19:57:32 -0000 1.9.18.1
@@ -52,6 +52,11 @@
return QPoint(a.xCoord - b.xCoord, a.yCoord - b.yCoord);
}
+const QPoint operator*(const QPoint &p, double s)
+{
+ return QPoint((int)(p.xCoord * s), (int)(p.yCoord * s));
+}
+
#ifdef _KWQ_IOSTREAM_
std::ostream &operator<<(std::ostream &o, const QPoint &p)
{
1.26.18.2 +5 -0 WebCore/kwq/KWQPointArray.h
Index: KWQPointArray.h
===================================================================
RCS file: /cvs/root/WebCore/kwq/KWQPointArray.h,v
retrieving revision 1.26.18.1
retrieving revision 1.26.18.2
diff -u -r1.26.18.1 -r1.26.18.2
--- KWQPointArray.h 30 Sep 2005 04:57:25 -0000 1.26.18.1
+++ KWQPointArray.h 5 Dec 2005 19:57:32 -0000 1.26.18.2
@@ -48,7 +48,12 @@
int x() const { return xCoord; }
int y() const { return yCoord; }
+
+ void setX(int x) { xCoord = x; }
+ void setY(int y) { yCoord = y; }
+ QPoint &operator -=(const QPoint &two) { xCoord -= two.xCoord; yCoord -= two.yCoord; return *this; }
+ friend const QPoint operator*(const QPoint &p, double s);
friend QPoint operator+(const QPoint &, const QPoint &);
friend QPoint operator-(const QPoint &, const QPoint &);
1.382.2.16 +8 -5 WebCore/kwq/WebCoreBridge.mm
Index: WebCoreBridge.mm
===================================================================
RCS file: /cvs/root/WebCore/kwq/WebCoreBridge.mm,v
retrieving revision 1.382.2.15
retrieving revision 1.382.2.16
diff -u -r1.382.2.15 -r1.382.2.16
--- WebCoreBridge.mm 19 Nov 2005 02:35:44 -0000 1.382.2.15
+++ WebCoreBridge.mm 5 Dec 2005 19:57:32 -0000 1.382.2.16
@@ -1035,6 +1035,7 @@
NodeImpl *n;
QWidget *widget = 0;
+ QPoint widgetPoint(point);
while (true) {
n = nodeInfo.innerNode();
@@ -1046,12 +1047,14 @@
KHTMLPart *kpart = static_cast<DOM::HTMLFrameElementImpl *>(n)->contentPart();
if (!kpart || !static_cast<KWQKHTMLPart *>(kpart)->renderer())
break;
- int _x, _y;
- n->renderer()->absolutePosition(_x, _y, true);
- _x = (int)point.x - _x;
- _y = (int)point.y - _y;
+ int absX, absY;
+ n->renderer()->absolutePosition(absX, absY, true);
+ KHTMLView *view = static_cast<KHTMLView *>(widget);
+ widgetPoint.setX(widgetPoint.x() - absX + view->contentsX());
+ widgetPoint.setY(widgetPoint.y() - absY + view->contentsY());
+
RenderObject::NodeInfo widgetNodeInfo(true, true);
- static_cast<KWQKHTMLPart *>(kpart)->renderer()->layer()->hitTest(widgetNodeInfo, _x, _y);
+ static_cast<KWQKHTMLPart *>(kpart)->renderer()->layer()->hitTest(widgetNodeInfo, widgetPoint.x(), widgetPoint.y());
nodeInfo = widgetNodeInfo;
}
More information about the webkit-changes
mailing list