[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 05:56:51 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit c480374638c738c5ac8e35e2c0275a28f2571019
Author: rjw <rjw at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Mar 6 02:06:12 2002 +0000

            Streamlined layout and drawing.  We now do the minimum amount of drawing and
            layout.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 8e23c97..1a06a67 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,14 @@
+2002-03-05  Richard Williamson  <rjw at apple.com>
+
+        Streamlined layout and drawing.  We now do the minimum amount of drawing and
+        layout.
+        
+	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
+	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
+	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
+	(-[IFWebView drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView
+	windowResized:]):
+
 2002-03-05  John Sullivan  <sullivan at apple.com>
 
 	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 8e23c97..1a06a67 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,14 @@
+2002-03-05  Richard Williamson  <rjw at apple.com>
+
+        Streamlined layout and drawing.  We now do the minimum amount of drawing and
+        layout.
+        
+	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
+	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
+	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
+	(-[IFWebView drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView
+	windowResized:]):
+
 2002-03-05  John Sullivan  <sullivan at apple.com>
 
 	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
diff --git a/WebKit/WebView.subproj/IFWebFramePrivate.mm b/WebKit/WebView.subproj/IFWebFramePrivate.mm
index fac21f2..4c847dd 100644
--- a/WebKit/WebView.subproj/IFWebFramePrivate.mm
+++ b/WebKit/WebView.subproj/IFWebFramePrivate.mm
@@ -163,6 +163,10 @@
         [self _setState: IFWEBFRAMESTATE_COMPLETE];
         [[self view] setNeedsLayout: YES];
         [[self view] setNeedsDisplay: YES];
+        if ([[self controller] mainFrame] == self){
+            [[self view] layout];
+            [[self view] display];
+        }
         [[self controller] locationChangeDone: nil forFrame: self];
         return YES;
     }
diff --git a/WebKit/WebView.subproj/IFWebView.mm b/WebKit/WebView.subproj/IFWebView.mm
index 980492f..cf0c15c 100644
--- a/WebKit/WebView.subproj/IFWebView.mm
+++ b/WebKit/WebView.subproj/IFWebView.mm
@@ -29,6 +29,8 @@
     ((IFWebViewPrivate *)_viewPrivate)->isFlipped = YES;
     ((IFWebViewPrivate *)_viewPrivate)->needsLayout = YES;
 
+    [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(windowResized:) name: NSWindowDidResizeNotification object: nil];
+    
     return self;
 }
 
@@ -109,6 +111,7 @@
     if (widget->part()->xmlDocImpl() && 
         widget->part()->xmlDocImpl()->renderer()){
         if (((IFWebViewPrivate *)_viewPrivate)->needsLayout){
+            //WEBKITDEBUGLEVEL (0x100, "doing layout\n");
             //double start = CFAbsoluteTimeGetCurrent();
             widget->layout(TRUE);
             //WebKitDebugAtLevel (0x200, "layout time %e\n", CFAbsoluteTimeGetCurrent() - start);
@@ -272,9 +275,16 @@
 }
 #endif
 
+- (void)setNeedsDisplay:(BOOL)flag
+{
+    //WEBKITDEBUGLEVEL (0x100, "setNeedsDisplay:\n");
+    [super setNeedsDisplay: flag];
+}
+
 
 - (void)setNeedsLayout: (bool)flag
 {
+    //WEBKITDEBUGLEVEL (0x100, "setNeedsLayout:\n");
     ((IFWebViewPrivate *)_viewPrivate)->needsLayout = flag;
 }
 
@@ -283,7 +293,9 @@
 - (void)drawRect:(NSRect)rect {
     KHTMLView *widget = ((IFWebViewPrivate *)_viewPrivate)->widget;
 
+    //WEBKITDEBUGLEVEL (0x100, "drawRect:\n");
     if (widget != 0l){        
+        //WEBKITDEBUGLEVEL (0x100, "drawRect: drawing\n");
         [self layout];
 
 #ifdef _KWQ_TIMING        
@@ -344,7 +356,13 @@
 - (void)setFrame:(NSRect)frameRect
 {
     [super setFrame:frameRect];
-    [self setNeedsLayout: YES];
+    //[self setNeedsLayout: YES];
+}
+
+- (void)windowResized: (NSNotification *)notification
+{
+    if ([notification object] == [self window])
+        [self setNeedsLayout: YES];
 }
 
 
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index fac21f2..4c847dd 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -163,6 +163,10 @@
         [self _setState: IFWEBFRAMESTATE_COMPLETE];
         [[self view] setNeedsLayout: YES];
         [[self view] setNeedsDisplay: YES];
+        if ([[self controller] mainFrame] == self){
+            [[self view] layout];
+            [[self view] display];
+        }
         [[self controller] locationChangeDone: nil forFrame: self];
         return YES;
     }
diff --git a/WebKit/WebView.subproj/WebFrameView.m b/WebKit/WebView.subproj/WebFrameView.m
index 980492f..cf0c15c 100644
--- a/WebKit/WebView.subproj/WebFrameView.m
+++ b/WebKit/WebView.subproj/WebFrameView.m
@@ -29,6 +29,8 @@
     ((IFWebViewPrivate *)_viewPrivate)->isFlipped = YES;
     ((IFWebViewPrivate *)_viewPrivate)->needsLayout = YES;
 
+    [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(windowResized:) name: NSWindowDidResizeNotification object: nil];
+    
     return self;
 }
 
@@ -109,6 +111,7 @@
     if (widget->part()->xmlDocImpl() && 
         widget->part()->xmlDocImpl()->renderer()){
         if (((IFWebViewPrivate *)_viewPrivate)->needsLayout){
+            //WEBKITDEBUGLEVEL (0x100, "doing layout\n");
             //double start = CFAbsoluteTimeGetCurrent();
             widget->layout(TRUE);
             //WebKitDebugAtLevel (0x200, "layout time %e\n", CFAbsoluteTimeGetCurrent() - start);
@@ -272,9 +275,16 @@
 }
 #endif
 
+- (void)setNeedsDisplay:(BOOL)flag
+{
+    //WEBKITDEBUGLEVEL (0x100, "setNeedsDisplay:\n");
+    [super setNeedsDisplay: flag];
+}
+
 
 - (void)setNeedsLayout: (bool)flag
 {
+    //WEBKITDEBUGLEVEL (0x100, "setNeedsLayout:\n");
     ((IFWebViewPrivate *)_viewPrivate)->needsLayout = flag;
 }
 
@@ -283,7 +293,9 @@
 - (void)drawRect:(NSRect)rect {
     KHTMLView *widget = ((IFWebViewPrivate *)_viewPrivate)->widget;
 
+    //WEBKITDEBUGLEVEL (0x100, "drawRect:\n");
     if (widget != 0l){        
+        //WEBKITDEBUGLEVEL (0x100, "drawRect: drawing\n");
         [self layout];
 
 #ifdef _KWQ_TIMING        
@@ -344,7 +356,13 @@
 - (void)setFrame:(NSRect)frameRect
 {
     [super setFrame:frameRect];
-    [self setNeedsLayout: YES];
+    //[self setNeedsLayout: YES];
+}
+
+- (void)windowResized: (NSNotification *)notification
+{
+    if ([notification object] == [self window])
+        [self setNeedsLayout: YES];
 }
 
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list