[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
mjs
mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:06:32 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 12e9151b610ee1e74a8f9c07d1853ff473028703
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Oct 28 19:12:16 2003 +0000
Reviewed by Darin.
- fixed 3083264 - frame names changed by JavaScript are not reflected in WebFrame at the WebKit level
* kwq/KWQKHTMLPart.h:
* kwq/KWQKHTMLPart.mm:
(KWQKHTMLPart::setName): Make sure the name is unique. Then tell
the bridge and the superclass about it.
* kwq/KWQKPartsPart.h:
(KParts::ReadOnlyPart::setName): Made this method virtual.
* kwq/KWQKPartsPart.m: Added. Moved implementations of virtual methods here.
* kwq/WebCoreBridge.h:
* kwq/WebCoreBridge.mm:
(-[WebCoreBridge setName:]): Call the superclass method to avid
sending the name pointlessly back across the bridge.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index a923fc5..03ff819 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,21 @@
+2003-10-27 Maciej Stachowiak <mjs at apple.com>
+
+ Reviewed by Darin.
+
+ - fixed 3083264 - frame names changed by JavaScript are not reflected in WebFrame at the WebKit level
+
+ * kwq/KWQKHTMLPart.h:
+ * kwq/KWQKHTMLPart.mm:
+ (KWQKHTMLPart::setName): Make sure the name is unique. Then tell
+ the bridge and the superclass about it.
+ * kwq/KWQKPartsPart.h:
+ (KParts::ReadOnlyPart::setName): Made this method virtual.
+ * kwq/KWQKPartsPart.m: Added. Moved implementations of virtual methods here.
+ * kwq/WebCoreBridge.h:
+ * kwq/WebCoreBridge.mm:
+ (-[WebCoreBridge setName:]): Call the superclass method to avid
+ sending the name pointlessly back across the bridge.
+
2003-10-28 Darin Adler <darin at apple.com>
Reviewed by John.
diff --git a/WebCore/WebCore.pbproj/project.pbxproj b/WebCore/WebCore.pbproj/project.pbxproj
index 1d72e68..9f72da4 100644
--- a/WebCore/WebCore.pbproj/project.pbxproj
+++ b/WebCore/WebCore.pbproj/project.pbxproj
@@ -772,6 +772,7 @@
55998A5F052B59CC0017A6C1,
55998A61052B59CC0017A6C1,
65F80698054D9F86008BF776,
+ 65732B69054EF483007B42F8,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -1010,6 +1011,20 @@
//652
//653
//654
+ 65732B68054EF483007B42F8 = {
+ expectedFileType = sourcecode.cpp.objcpp;
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ path = KWQKPartsPart.mm;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ 65732B69054EF483007B42F8 = {
+ fileRef = 65732B68054EF483007B42F8;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
65A640F00533BB1F0085E777 = {
expectedFileType = sourcecode.c.h;
fileEncoding = 30;
@@ -8420,6 +8435,7 @@
F587866B02DE3B3201EA4122,
F58784F602DE375901EA4122,
F587866C02DE3B3201EA4122,
+ 65732B68054EF483007B42F8,
F587866D02DE3B3201EA4122,
);
isa = PBXGroup;
diff --git a/WebCore/kwq/KWQKHTMLPart.h b/WebCore/kwq/KWQKHTMLPart.h
index c2c89f9..4b8b6a0 100644
--- a/WebCore/kwq/KWQKHTMLPart.h
+++ b/WebCore/kwq/KWQKHTMLPart.h
@@ -228,6 +228,7 @@ public:
WebCoreKeyboardUIMode keyboardUIMode() const;
+ void setName(const QString &name);
private:
virtual void khtmlMousePressEvent(khtml::MousePressEvent *);
virtual void khtmlMouseDoubleClickEvent(khtml::MouseDoubleClickEvent *);
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index 665991e..b4df605 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -2635,3 +2635,20 @@ WebCoreKeyboardUIMode KWQKHTMLPart::keyboardUIMode() const
return WebCoreDefaultKeyboardAccess;
}
+
+void KWQKHTMLPart::setName(const QString &name)
+{
+ QString n = name;
+
+ KWQKHTMLPart *parent = KWQ(parentPart());
+
+ if (parent && (name.isEmpty() || parent->frameExists(name))) {
+ n = parent->requestFrameName();
+ }
+
+ KHTMLPart::setName(n);
+
+ KWQ_BLOCK_EXCEPTIONS;
+ [_bridge didSetName:n.getNSString()];
+ KWQ_UNBLOCK_EXCEPTIONS;
+}
diff --git a/WebCore/kwq/KWQKPartsPart.h b/WebCore/kwq/KWQKPartsPart.h
index 58f2597..a75836d 100644
--- a/WebCore/kwq/KWQKPartsPart.h
+++ b/WebCore/kwq/KWQKPartsPart.h
@@ -54,7 +54,7 @@ public:
void deref() { if (!--_ref) delete this; }
bool event(QEvent *event) { customEvent((QCustomEvent *)event); return true; }
- virtual void customEvent(QCustomEvent *) { }
+ virtual void customEvent(QCustomEvent *);
private:
QWidget *_widget;
@@ -71,7 +71,7 @@ public:
void setParent(QObject *parent) { _parent = parent; }
QObject *parent() const { return _parent; }
- void setName(const QString &name) { _name = name; }
+ virtual void setName(const QString &name);
QString name() { return _name; }
void setXMLFile(const char *) { }
diff --git a/WebCore/kwq/KWQKPartsFactory.h b/WebCore/kwq/KWQKPartsPart.mm
similarity index 91%
copy from WebCore/kwq/KWQKPartsFactory.h
copy to WebCore/kwq/KWQKPartsPart.mm
index 1bd7e39..df0d634 100644
--- a/WebCore/kwq/KWQKPartsFactory.h
+++ b/WebCore/kwq/KWQKPartsPart.mm
@@ -23,14 +23,16 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef FACTORY_H_
-#define FACTORY_H_
-
-#include "KWQKPartsPart.h"
+#import "KWQKPartsPart.h"
namespace KParts {
- class Factory;
-}
-#endif
+void Part::customEvent(QCustomEvent *)
+{
+}
+void Part::setName(const QString &name)
+{
+ _name = name;
+}
+
diff --git a/WebCore/kwq/WebCoreBridge.h b/WebCore/kwq/WebCoreBridge.h
index b37f155..cd378d2 100644
--- a/WebCore/kwq/WebCoreBridge.h
+++ b/WebCore/kwq/WebCoreBridge.h
@@ -351,6 +351,8 @@ typedef enum {
- (WebCoreKeyboardUIMode)keyboardUIMode;
+- (void)didSetName:(NSString *)name;
+
@end
// This interface definition allows those who hold a WebCoreBridge * to call all the methods
diff --git a/WebCore/kwq/WebCoreBridge.mm b/WebCore/kwq/WebCoreBridge.mm
index 0a55762..0268f67 100644
--- a/WebCore/kwq/WebCoreBridge.mm
+++ b/WebCore/kwq/WebCoreBridge.mm
@@ -923,7 +923,7 @@ static HTMLFormElementImpl *formElementFromDOMElement(id <WebDOMElement>element)
- (void)setName:(NSString *)name
{
- _part->setName(QString::fromNSString(name));
+ _part->KHTMLPart::setName(QString::fromNSString(name));
}
- (NSString *)name
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list