[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:44:24 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 30b7f096b42fa1d9f1865b4710aae5cbb08a1ebb
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Sep 25 01:20:27 2002 +0000
- fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work
Turns out it was better to just put the extra smarts into the clip view
that we are already creating. Making WebHTMLView be a second clip view
was silly and broke things.
* WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
and use it as the content view rather than the NSClipView created by default.
* WebKit.pbproj/project.pbxproj: Added WebClipView.
* WebView.subproj/WebClipView.h: Added.
* WebView.subproj/WebClipView.m: Added.
* WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
the clip view.
* WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
* WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
now in WebClipView.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 5feca41..bfc8350 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,27 @@
+2002-09-24 Darin Adler <darin at apple.com>
+
+ - fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work
+
+ Turns out it was better to just put the extra smarts into the clip view
+ that we are already creating. Making WebHTMLView be a second clip view
+ was silly and broke things.
+
+ * WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
+ and use it as the content view rather than the NSClipView created by default.
+
+ * WebKit.pbproj/project.pbxproj: Added WebClipView.
+ * WebView.subproj/WebClipView.h: Added.
+ * WebView.subproj/WebClipView.m: Added.
+
+ * WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
+ * WebView.subproj/WebHTMLView.m:
+ (-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
+ the clip view.
+
+ * WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
+ * WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
+ now in WebClipView.
+
2002-09-24 Chris Blumenberg <cblu at apple.com>
More documentation changes.
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 5feca41..bfc8350 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,27 @@
+2002-09-24 Darin Adler <darin at apple.com>
+
+ - fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work
+
+ Turns out it was better to just put the extra smarts into the clip view
+ that we are already creating. Making WebHTMLView be a second clip view
+ was silly and broke things.
+
+ * WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
+ and use it as the content view rather than the NSClipView created by default.
+
+ * WebKit.pbproj/project.pbxproj: Added WebClipView.
+ * WebView.subproj/WebClipView.h: Added.
+ * WebView.subproj/WebClipView.m: Added.
+
+ * WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
+ * WebView.subproj/WebHTMLView.m:
+ (-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
+ the clip view.
+
+ * WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
+ * WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
+ now in WebClipView.
+
2002-09-24 Chris Blumenberg <cblu at apple.com>
More documentation changes.
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index b4b2501..bf64b88 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -276,6 +276,7 @@
5152FAE7033FC52200CA2ACD,
5152FAEA033FC53500CA2ACD,
511D5554033FD51000CA2ACD,
+ 933D659B03413FF2008635CE,
);
isa = PBXHeadersBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -364,6 +365,7 @@
5152FAE2033FC50400CA2ACD,
5152FAE4033FC50400CA2ACD,
5152FAE8033FC52200CA2ACD,
+ 933D659C03413FF2008635CE,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -1299,6 +1301,30 @@
settings = {
};
};
+ 933D659903413FF2008635CE = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebClipView.h;
+ refType = 4;
+ };
+ 933D659A03413FF2008635CE = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebClipView.m;
+ refType = 4;
+ };
+ 933D659B03413FF2008635CE = {
+ fileRef = 933D659903413FF2008635CE;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 933D659C03413FF2008635CE = {
+ fileRef = 933D659A03413FF2008635CE;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
93AEB17D032C1735008635CE = {
fileEncoding = 4;
isa = PBXFileReference;
@@ -1380,6 +1406,8 @@
5152FAE6033FC52200CA2ACD,
5152FAE9033FC53500CA2ACD,
511D5553033FD51000CA2ACD,
+ 933D659903413FF2008635CE,
+ 933D659A03413FF2008635CE,
);
isa = PBXGroup;
name = WebView;
diff --git a/WebKit/WebView.subproj/WebClipView.h b/WebKit/WebView.subproj/WebClipView.h
new file mode 100644
index 0000000..0021284
--- /dev/null
+++ b/WebKit/WebView.subproj/WebClipView.h
@@ -0,0 +1,20 @@
+//
+// WebClipView.h
+// WebKit
+//
+// Created by Darin Adler on Tue Sep 24 2002.
+// Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
+//
+
+#import <AppKit/AppKit.h>
+
+ at interface WebClipView : NSClipView
+{
+ BOOL _haveAdditionalClip;
+ NSRect _additionalClip;
+}
+
+- (void)setAdditionalClip:(NSRect)additionalClip;
+- (void)resetAdditionalClip;
+
+ at end
diff --git a/WebKit/WebView.subproj/WebClipView.m b/WebKit/WebView.subproj/WebClipView.m
new file mode 100644
index 0000000..07ee60e
--- /dev/null
+++ b/WebKit/WebView.subproj/WebClipView.m
@@ -0,0 +1,33 @@
+//
+// WebClipView.m
+// WebKit
+//
+// Created by Darin Adler on Tue Sep 24 2002.
+// Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
+//
+
+#import "WebClipView.h"
+
+ at implementation WebClipView
+
+- (void)resetAdditionalClip
+{
+ _haveAdditionalClip = NO;
+}
+
+- (void)setAdditionalClip:(NSRect)additionalClip
+{
+ _haveAdditionalClip = YES;
+ _additionalClip = additionalClip;
+}
+
+- (NSRect)visibleRect
+{
+ NSRect rect = [super visibleRect];
+ if (_haveAdditionalClip) {
+ rect = NSIntersectionRect(rect, _additionalClip);
+ }
+ return rect;
+}
+
+ at end
diff --git a/WebKit/WebView.subproj/WebFrameView.m b/WebKit/WebView.subproj/WebFrameView.m
index 2b3c00a..94bc99a 100644
--- a/WebKit/WebView.subproj/WebFrameView.m
+++ b/WebKit/WebView.subproj/WebFrameView.m
@@ -4,6 +4,7 @@
#import <WebKit/WebView.h>
+#import <WebKit/WebClipView.h>
#import <WebKit/WebCookieAdapter.h>
#import <WebKit/WebController.h>
#import <WebKit/WebDataSource.h>
@@ -67,6 +68,7 @@ enum {
WebDynamicScrollBarsView *scrollView = [[WebDynamicScrollBarsView alloc] initWithFrame: NSMakeRect(0,0,frame.size.width,frame.size.height)];
_private->frameScrollView = scrollView;
+ [scrollView setContentView: [[[WebClipView alloc] initWithFrame:[scrollView bounds]] autorelease]];
[scrollView setDrawsBackground: NO];
[scrollView setHasVerticalScroller: NO];
[scrollView setHasHorizontalScroller: NO];
diff --git a/WebKit/WebView.subproj/WebHTMLView.h b/WebKit/WebView.subproj/WebHTMLView.h
index 4455dd8..067117e 100644
--- a/WebKit/WebView.subproj/WebHTMLView.h
+++ b/WebKit/WebView.subproj/WebHTMLView.h
@@ -17,7 +17,7 @@
@class WebHTMLView
@discussion A document view of WebView that displays HTML content.
*/
- at interface WebHTMLView : NSClipView <WebDocumentView, WebDocumentDragSettings, WebDocumentSearching, WebDocumentTextEncoding>
+ at interface WebHTMLView : NSView <WebDocumentView, WebDocumentDragSettings, WebDocumentSearching, WebDocumentTextEncoding>
{
@private
WebHTMLViewPrivate *_private;
diff --git a/WebKit/WebView.subproj/WebHTMLView.m b/WebKit/WebView.subproj/WebHTMLView.m
index cef10ec..1e0fcb8 100644
--- a/WebKit/WebView.subproj/WebHTMLView.m
+++ b/WebKit/WebView.subproj/WebHTMLView.m
@@ -6,6 +6,7 @@
#import <WebKit/WebHTMLView.h>
#import <WebKit/WebBridge.h>
+#import <WebKit/WebClipView.h>
#import <WebKit/WebContextMenuDelegate.h>
#import <WebKit/WebController.h>
#import <WebKit/WebControllerPrivate.h>
@@ -119,11 +120,6 @@
return YES;
}
-- (BOOL)needsPanelToBecomeKey
-{
- return YES;
-}
-
- (void)addMouseMovedObserver
{
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(mouseMovedNotification:) name: NSMouseMovedNotification object: nil];
@@ -355,10 +351,6 @@
}
}
- ASSERT(!_private->inDrawRect);
- _private->inDrawRect = YES;
- _private->drawRect = rect;
-
[self reapplyStyles];
[self layout];
@@ -370,6 +362,9 @@
[NSGraphicsContext saveGraphicsState];
NSRectClip(rect);
+ ASSERT([[self superview] isKindOfClass:[WebClipView class]]);
+ [(WebClipView *)[self superview] setAdditionalClip:rect];
+
NSView *focusView = [NSView focusView];
if ([WebTextRenderer shouldBufferTextDrawing] && focusView)
[[WebTextRendererFactory sharedFactory] startCoalesceTextDrawing];
@@ -381,6 +376,8 @@
if ([WebTextRenderer shouldBufferTextDrawing] && focusView)
[[WebTextRendererFactory sharedFactory] endCoalesceTextDrawing];
+ [(WebClipView *)[self superview] resetAdditionalClip];
+
[NSGraphicsContext restoreGraphicsState];
#ifdef DEBUG_LAYOUT
@@ -406,9 +403,6 @@
LOG(Timing, "%s draw seconds = %f", widget->part()->baseURL().URL().latin1(), thisTime);
#endif
- ASSERT(_private->inDrawRect);
- _private->inDrawRect = NO;
-
if (_private->subviewsSetAside) {
ASSERT(_private->savedSubviews == nil);
_private->savedSubviews = _subviews;
diff --git a/WebKit/WebView.subproj/WebHTMLViewPrivate.h b/WebKit/WebView.subproj/WebHTMLViewPrivate.h
index fd2f01c..f7b3839 100644
--- a/WebKit/WebView.subproj/WebHTMLViewPrivate.h
+++ b/WebKit/WebView.subproj/WebHTMLViewPrivate.h
@@ -27,9 +27,6 @@
id savedSubviews;
BOOL subviewsSetAside;
-
- BOOL inDrawRect;
- NSRect drawRect;
}
@end
diff --git a/WebKit/WebView.subproj/WebHTMLViewPrivate.m b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
index 4c48b8c..ba368d9 100644
--- a/WebKit/WebView.subproj/WebHTMLViewPrivate.m
+++ b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
@@ -212,15 +212,6 @@ BOOL _modifierTrackingEnabled = FALSE;
}
}
-- (NSRect)visibleRect
-{
- NSRect rect = [super visibleRect];
- if (_private->inDrawRect) {
- rect = NSIntersectionRect(rect, _private->drawRect);
- }
- return rect;
-}
-
@end
@implementation NSView (WebHTMLViewPrivate)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list