[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

rjw rjw at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:24:35 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit b25b72c977e27e4873a44601c77cd59cca5d7661
Author: rjw <rjw at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jul 15 21:22:12 2002 +0000

            Added isFrameSet method.
    
            * WebCore.pbproj/project.pbxproj:
            * khtml/khtml_part.cpp:
            (KHTMLPart::isFrameSet):
            * khtml/khtml_part.h:
            * kwq/KWQKHTMLPart.mm:
            * kwq/KWQKHTMLPartImpl.cpp: Added.
            (KWQKHTMLPartImpl::isFrameSet):
            * kwq/KWQKHTMLPartImpl.h:
            * kwq/WebCoreBridge.h:
            * kwq/WebCoreBridge.mm:
            (-[WebCoreBridge isFrameSet]):
    
            Only adjustFrames in parent if parent is a frame set.
            (Anywhere from 2% to 6% gain, depending on what you believe.)
            * WebView.subproj/IFWebFramePrivate.mm:
            (-[IFWebFrame _isLoadComplete]):
    
            * WebView.subproj/IFPreferences.mm:
            (+[IFPreferences load]):
            Increment initial layout from 1.5 seconds to 1.85 seconds.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index 451d806..d09cdab 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,19 @@
+2002-07-15  Richard Williamson (Home)  <rjw at apple.com>
+
+        Added isFrameSet method.
+        
+        * WebCore.pbproj/project.pbxproj:
+        * khtml/khtml_part.cpp:
+        (KHTMLPart::isFrameSet):
+        * khtml/khtml_part.h:
+        * kwq/KWQKHTMLPart.mm:
+        * kwq/KWQKHTMLPartImpl.cpp: Added.
+        (KWQKHTMLPartImpl::isFrameSet):
+        * kwq/KWQKHTMLPartImpl.h:
+        * kwq/WebCoreBridge.h:
+        * kwq/WebCoreBridge.mm:
+        (-[WebCoreBridge isFrameSet]):
+
 2002-07-15  Darin Adler  <darin at apple.com>
 
         * WebCore.pbproj/project.pbxproj: Removed KWQKPrinter.mm.
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 451d806..d09cdab 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,19 @@
+2002-07-15  Richard Williamson (Home)  <rjw at apple.com>
+
+        Added isFrameSet method.
+        
+        * WebCore.pbproj/project.pbxproj:
+        * khtml/khtml_part.cpp:
+        (KHTMLPart::isFrameSet):
+        * khtml/khtml_part.h:
+        * kwq/KWQKHTMLPart.mm:
+        * kwq/KWQKHTMLPartImpl.cpp: Added.
+        (KWQKHTMLPartImpl::isFrameSet):
+        * kwq/KWQKHTMLPartImpl.h:
+        * kwq/WebCoreBridge.h:
+        * kwq/WebCoreBridge.mm:
+        (-[WebCoreBridge isFrameSet]):
+
 2002-07-15  Darin Adler  <darin at apple.com>
 
         * WebCore.pbproj/project.pbxproj: Removed KWQKPrinter.mm.
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 451d806..d09cdab 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,19 @@
+2002-07-15  Richard Williamson (Home)  <rjw at apple.com>
+
+        Added isFrameSet method.
+        
+        * WebCore.pbproj/project.pbxproj:
+        * khtml/khtml_part.cpp:
+        (KHTMLPart::isFrameSet):
+        * khtml/khtml_part.h:
+        * kwq/KWQKHTMLPart.mm:
+        * kwq/KWQKHTMLPartImpl.cpp: Added.
+        (KWQKHTMLPartImpl::isFrameSet):
+        * kwq/KWQKHTMLPartImpl.h:
+        * kwq/WebCoreBridge.h:
+        * kwq/WebCoreBridge.mm:
+        (-[WebCoreBridge isFrameSet]):
+
 2002-07-15  Darin Adler  <darin at apple.com>
 
         * WebCore.pbproj/project.pbxproj: Removed KWQKPrinter.mm.
diff --git a/WebCore/WebCore.pbproj/project.pbxproj b/WebCore/WebCore.pbproj/project.pbxproj
index 2d2495b..0470cc5 100644
--- a/WebCore/WebCore.pbproj/project.pbxproj
+++ b/WebCore/WebCore.pbproj/project.pbxproj
@@ -709,6 +709,7 @@
 				F550D71002E132BB018635CA,
 				F5B2A4FF02E2220F018635CB,
 				F5B2A52E02E22573018635CB,
+				F54A61D402E3523B01A80180,
 			);
 			isa = PBXSourcesBuildPhase;
 			runOnlyForDeploymentPostprocessing = 0;
@@ -837,6 +838,7 @@
 				F587854102DE375901EA4122,
 				F587854302DE375901EA4122,
 				F587854402DE375901EA4122,
+				F54A61D302E3523B01A80180,
 			);
 			isa = PBXGroup;
 			name = other;
@@ -3780,6 +3782,18 @@
 			settings = {
 			};
 		};
+		F54A61D302E3523B01A80180 = {
+			isa = PBXFileReference;
+			name = KWQKHTMLPartImpl.cpp;
+			path = kwq/KWQKHTMLPartImpl.cpp;
+			refType = 2;
+		};
+		F54A61D402E3523B01A80180 = {
+			fileRef = F54A61D302E3523B01A80180;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
 		F550D70902E13281018635CA = {
 			isa = PBXFileReference;
 			name = KWQCharsetData.c;
diff --git a/WebCore/khtml/khtml_part.cpp b/WebCore/khtml/khtml_part.cpp
index 18a0662..cf95d6d 100644
--- a/WebCore/khtml/khtml_part.cpp
+++ b/WebCore/khtml/khtml_part.cpp
@@ -4727,6 +4727,11 @@ void KHTMLPart::setTitle(const DOMString &title)
     impl->setTitle(title);
 }
 
+bool KHTMLPart::isFrameSet()
+{
+    return impl->isFrameSet();
+}
+
 void KHTMLPart::setStatusBarText(const QString &status)
 {
     impl->setStatusBarText(status);
diff --git a/WebCore/khtml/khtml_part.h b/WebCore/khtml/khtml_part.h
index 9432316..c9beae6 100644
--- a/WebCore/khtml/khtml_part.h
+++ b/WebCore/khtml/khtml_part.h
@@ -1091,6 +1091,7 @@ private:
 
 #ifdef APPLE_CHANGES
 public:
+  bool isFrameSet();
   void setTitle(const DOM::DOMString &);
   void detachView(); 
   void setStatusBarText(const QString &);
diff --git a/WebCore/kwq/KWQFrame.mm b/WebCore/kwq/KWQKHTMLPart.cpp
similarity index 67%
copy from WebCore/kwq/KWQFrame.mm
copy to WebCore/kwq/KWQKHTMLPart.cpp
index e3dc57b..75ee543 100644
--- a/WebCore/kwq/KWQFrame.mm
+++ b/WebCore/kwq/KWQKHTMLPart.cpp
@@ -22,21 +22,32 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
+#include <KWQKHTMLPartImpl.h>
+#include <khtmlpart_p.h>
 
-#import <qframe.h>
+#include <dom_nodeimpl.h>
+#include <htmltokenizer.h>
+#include <html_documentimpl.h>
+#include <html_elementimpl.h>
+#include <render_root.h>
 
-#import <kwqdebug.h>
+using namespace DOM;
+using namespace khtml;
 
-QFrame::QFrame(QWidget *parent)
-    : QWidget(parent)
+bool KWQKHTMLPartImpl::isFrameSet()
 {
-}
+    DOM::DocumentImpl *document = d->m_doc;
+    khtml::RenderRoot* root = static_cast<khtml::RenderRoot *>(document->renderer());
 
-void QFrame::setFrameStyle(int)
-{
-}
+    if ( !root )
+        return 0;
 
-int QFrame::frameWidth() const
-{
+    if (document->isHTMLDocument()) {
+        NodeImpl *body = static_cast<HTMLDocumentImpl*>(document)->body();
+        if(body && body->renderer() && body->id() == ID_FRAMESET) {
+            return 1;
+        }
+    }
+    
     return 0;
 }
diff --git a/WebCore/kwq/KWQKHTMLPart.h b/WebCore/kwq/KWQKHTMLPart.h
index fe89157..e6b5b62 100644
--- a/WebCore/kwq/KWQKHTMLPart.h
+++ b/WebCore/kwq/KWQKHTMLPart.h
@@ -81,6 +81,9 @@ public:
     void close();
 
     void unfocusWindow();
+
+    bool isFrameSet();
+
 private:
     KHTMLPart *part;
     KHTMLPartPrivate *d;
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index 7d0b138..a7eb376 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -27,6 +27,7 @@
 
 #import <htmltokenizer.h>
 #import <html_documentimpl.h>
+#import <render_root.h>
 #import <render_frames.h>
 #import <khtmlpart_p.h>
 #import <khtmlview.h>
@@ -671,3 +672,4 @@ void KWQKHTMLPartImpl::unfocusWindow()
 {
     [bridge unfocusWindow];
 }
+
diff --git a/WebCore/kwq/KWQFrame.mm b/WebCore/kwq/KWQKHTMLPartImpl.cpp
similarity index 67%
copy from WebCore/kwq/KWQFrame.mm
copy to WebCore/kwq/KWQKHTMLPartImpl.cpp
index e3dc57b..75ee543 100644
--- a/WebCore/kwq/KWQFrame.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.cpp
@@ -22,21 +22,32 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
+#include <KWQKHTMLPartImpl.h>
+#include <khtmlpart_p.h>
 
-#import <qframe.h>
+#include <dom_nodeimpl.h>
+#include <htmltokenizer.h>
+#include <html_documentimpl.h>
+#include <html_elementimpl.h>
+#include <render_root.h>
 
-#import <kwqdebug.h>
+using namespace DOM;
+using namespace khtml;
 
-QFrame::QFrame(QWidget *parent)
-    : QWidget(parent)
+bool KWQKHTMLPartImpl::isFrameSet()
 {
-}
+    DOM::DocumentImpl *document = d->m_doc;
+    khtml::RenderRoot* root = static_cast<khtml::RenderRoot *>(document->renderer());
 
-void QFrame::setFrameStyle(int)
-{
-}
+    if ( !root )
+        return 0;
 
-int QFrame::frameWidth() const
-{
+    if (document->isHTMLDocument()) {
+        NodeImpl *body = static_cast<HTMLDocumentImpl*>(document)->body();
+        if(body && body->renderer() && body->id() == ID_FRAMESET) {
+            return 1;
+        }
+    }
+    
     return 0;
 }
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.h b/WebCore/kwq/KWQKHTMLPartImpl.h
index fe89157..e6b5b62 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.h
+++ b/WebCore/kwq/KWQKHTMLPartImpl.h
@@ -81,6 +81,9 @@ public:
     void close();
 
     void unfocusWindow();
+
+    bool isFrameSet();
+
 private:
     KHTMLPart *part;
     KHTMLPartPrivate *d;
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.mm b/WebCore/kwq/KWQKHTMLPartImpl.mm
index 7d0b138..a7eb376 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.mm
@@ -27,6 +27,7 @@
 
 #import <htmltokenizer.h>
 #import <html_documentimpl.h>
+#import <render_root.h>
 #import <render_frames.h>
 #import <khtmlpart_p.h>
 #import <khtmlview.h>
@@ -671,3 +672,4 @@ void KWQKHTMLPartImpl::unfocusWindow()
 {
     [bridge unfocusWindow];
 }
+
diff --git a/WebCore/kwq/WebCoreBridge.h b/WebCore/kwq/WebCoreBridge.h
index 4c0e1ad..a92159a 100644
--- a/WebCore/kwq/WebCoreBridge.h
+++ b/WebCore/kwq/WebCoreBridge.h
@@ -91,6 +91,8 @@ typedef khtml::RenderPart KHTMLRenderPart;
 - (NSString *)selectedText;
 - (void)selectAll;
 
+- (BOOL)isFrameSet;
+
 - (void)reapplyStyles;
 - (void)forceLayout;
 - (void)adjustFrames:(NSRect)rect;
diff --git a/WebCore/kwq/WebCoreBridge.mm b/WebCore/kwq/WebCoreBridge.mm
index e673e67..e83f522 100644
--- a/WebCore/kwq/WebCoreBridge.mm
+++ b/WebCore/kwq/WebCoreBridge.mm
@@ -30,7 +30,10 @@
 #import <KWQKHTMLPartImpl.h>
 #import <khtmlview.h>
 #import <dom_docimpl.h>
+#import <render_root.h>
 #import <render_frames.h>
+#include <html/html_documentimpl.h>
+#include <xml/dom_nodeimpl.h>
 
 @implementation WebCoreBridge
 
@@ -128,6 +131,11 @@
     part->selectAll();
 }
 
+- (BOOL)isFrameSet
+{
+    return part->isFrameSet();
+}
+
 - (void)reapplyStyles
 {
     DOM::DocumentImpl *doc = part->xmlDocImpl();
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 408fc0f..d31cca1 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,14 @@
+2002-07-15  Richard Williamson (Home)  <rjw at apple.com>
+
+        Only adjustFrames in parent if parent is a frame set.
+        (Anywhere from 2% to 6% gain, depending on what you believe.)
+        * WebView.subproj/IFWebFramePrivate.mm:
+        (-[IFWebFrame _isLoadComplete]):
+        
+        * WebView.subproj/IFPreferences.mm:
+        (+[IFPreferences load]):
+        Increment initial layout from 1.5 seconds to 1.85 seconds.
+
 2002-07-15  Darin Adler  <darin at apple.com>
 
         * WebView.subproj/IFMainURLHandleClient.mm:
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 408fc0f..d31cca1 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,14 @@
+2002-07-15  Richard Williamson (Home)  <rjw at apple.com>
+
+        Only adjustFrames in parent if parent is a frame set.
+        (Anywhere from 2% to 6% gain, depending on what you believe.)
+        * WebView.subproj/IFWebFramePrivate.mm:
+        (-[IFWebFrame _isLoadComplete]):
+        
+        * WebView.subproj/IFPreferences.mm:
+        (+[IFPreferences load]):
+        Increment initial layout from 1.5 seconds to 1.85 seconds.
+
 2002-07-15  Darin Adler  <darin at apple.com>
 
         * WebView.subproj/IFMainURLHandleClient.mm:
diff --git a/WebKit/WebView.subproj/IFPreferences.mm b/WebKit/WebView.subproj/IFPreferences.mm
index 4cdf6a0..1397ea8 100644
--- a/WebKit/WebView.subproj/IFPreferences.mm
+++ b/WebKit/WebView.subproj/IFPreferences.mm
@@ -65,9 +65,9 @@ static IFPreferences *_standardPreferences = nil;
         @"Papyrus", 			WebKitFantasyFontPreferenceKey,
         @"6", 				WebKitMinimumFontSizePreferenceKey,
         @"11", 				WebKitMediumFontSizePreferenceKey,
-        @"1.5",		 		WebKitInitialTimedLayoutDelayPreferenceKey,
+        @"1.85",		 	WebKitInitialTimedLayoutDelayPreferenceKey,
         @"4096", 			WebKitInitialTimedLayoutSizePreferenceKey,
-        @"1.5", 			WebKitResourceTimedLayoutDelayPreferenceKey,
+        @"1.85", 			WebKitResourceTimedLayoutDelayPreferenceKey,
         timedLayoutEnabled,		WebKitInitialTimedLayoutEnabledPreferenceKey,
         resourceTimedLayoutEnabled,	WebKitResourceTimedLayoutEnabledPreferenceKey,
         javaEnabled,			WebKitJavaEnabledPreferenceKey,
diff --git a/WebKit/WebView.subproj/IFWebFramePrivate.mm b/WebKit/WebView.subproj/IFWebFramePrivate.mm
index 24cd672..e291e13 100644
--- a/WebKit/WebView.subproj/IFWebFramePrivate.mm
+++ b/WebKit/WebView.subproj/IFWebFramePrivate.mm
@@ -342,9 +342,12 @@ static const char * const stateNames[6] = {
                 // Unfortunately we have to get our parent to adjust the frames in this
                 // frameset so this frame's geometry is set correctly.  This should
                 // be a reasonably inexpensive operation.
-                id parentWebView = [[[ds parent] webFrame] webView];
-                if ([parentWebView isDocumentHTML])
-                    [[parentWebView documentView] _adjustFrames];
+                id parentDS = [[[ds parent] webFrame] dataSource];
+                if ([[parentDS _bridge] isFrameSet]){
+                    id parentWebView = [[[ds parent] webFrame] webView];
+                    if ([parentWebView isDocumentHTML])
+                        [[parentWebView documentView] _adjustFrames];
+                }
 
                 // Tell the just loaded document to layout.  This may be necessary
                 // for non-html content that needs a layout message.
@@ -355,7 +358,10 @@ static const char * const stateNames[6] = {
                 [thisDocumentView layout];
 
                 // Unfortunately if this frame has children we have to lay them
-                // out too.
+                // out too.  This could be an expensive operation.
+                // FIXME:  If we can figure out how to avoid the layout of children,
+                // (just need for iframe placement/sizing) we could get a few percent
+                // speed improvement.
                 [ds _layoutChildren];
 
                 [thisDocumentView setNeedsDisplay: YES];
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index 24cd672..e291e13 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -342,9 +342,12 @@ static const char * const stateNames[6] = {
                 // Unfortunately we have to get our parent to adjust the frames in this
                 // frameset so this frame's geometry is set correctly.  This should
                 // be a reasonably inexpensive operation.
-                id parentWebView = [[[ds parent] webFrame] webView];
-                if ([parentWebView isDocumentHTML])
-                    [[parentWebView documentView] _adjustFrames];
+                id parentDS = [[[ds parent] webFrame] dataSource];
+                if ([[parentDS _bridge] isFrameSet]){
+                    id parentWebView = [[[ds parent] webFrame] webView];
+                    if ([parentWebView isDocumentHTML])
+                        [[parentWebView documentView] _adjustFrames];
+                }
 
                 // Tell the just loaded document to layout.  This may be necessary
                 // for non-html content that needs a layout message.
@@ -355,7 +358,10 @@ static const char * const stateNames[6] = {
                 [thisDocumentView layout];
 
                 // Unfortunately if this frame has children we have to lay them
-                // out too.
+                // out too.  This could be an expensive operation.
+                // FIXME:  If we can figure out how to avoid the layout of children,
+                // (just need for iframe placement/sizing) we could get a few percent
+                // speed improvement.
                 [ds _layoutChildren];
 
                 [thisDocumentView setNeedsDisplay: YES];
diff --git a/WebKit/WebView.subproj/WebPreferences.m b/WebKit/WebView.subproj/WebPreferences.m
index 4cdf6a0..1397ea8 100644
--- a/WebKit/WebView.subproj/WebPreferences.m
+++ b/WebKit/WebView.subproj/WebPreferences.m
@@ -65,9 +65,9 @@ static IFPreferences *_standardPreferences = nil;
         @"Papyrus", 			WebKitFantasyFontPreferenceKey,
         @"6", 				WebKitMinimumFontSizePreferenceKey,
         @"11", 				WebKitMediumFontSizePreferenceKey,
-        @"1.5",		 		WebKitInitialTimedLayoutDelayPreferenceKey,
+        @"1.85",		 	WebKitInitialTimedLayoutDelayPreferenceKey,
         @"4096", 			WebKitInitialTimedLayoutSizePreferenceKey,
-        @"1.5", 			WebKitResourceTimedLayoutDelayPreferenceKey,
+        @"1.85", 			WebKitResourceTimedLayoutDelayPreferenceKey,
         timedLayoutEnabled,		WebKitInitialTimedLayoutEnabledPreferenceKey,
         resourceTimedLayoutEnabled,	WebKitResourceTimedLayoutEnabledPreferenceKey,
         javaEnabled,			WebKitJavaEnabledPreferenceKey,

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list