[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
trey
trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:59:59 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 3a55cfde31c1d74e860202e527fd16451932a330
Author: trey <trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Nov 14 07:24:04 2002 +0000
Fixed client redirects, some more. The upshot is that they do not
generate two items in the back-forward list. iBench still works.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]): Call straight to the frame for all impl.
(-[WebBridge reportClientRedirectCancelled]): Call straight to the frame for all impl.
(-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
clientRedirect param removed when sending _loadURL: to frame.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
clientRedirect param removed. Check our own ivar to know if we are in client redirect case.
(-[WebFrame _loadURL:intoChild:]):
clientRedirect param removed when sending _loadURL: .
(-[WebFrame _clientRedirectedTo:delay:fireDate:]):
Note that we are doing a redirect if time=0 and we're not completed. Also includes
previous impl moved from Bridge.
(-[WebFrame _clientRedirectCancelled]): Previous impl moved from Bridge.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 013f1ba..04dce07 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,25 @@
+2002-11-13 Trey Matteson <trey at apple.com>
+
+ Fixed client redirects, some more. The upshot is that they do not
+ generate two items in the back-forward list. iBench still works.
+
+ * WebCoreSupport.subproj/WebBridge.m:
+ (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Call straight to the frame for all impl.
+ (-[WebBridge reportClientRedirectCancelled]): Call straight to the frame for all impl.
+ (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
+ clientRedirect param removed when sending _loadURL: to frame.
+ * WebView.subproj/WebFramePrivate.h:
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
+ clientRedirect param removed. Check our own ivar to know if we are in client redirect case.
+ (-[WebFrame _loadURL:intoChild:]):
+ clientRedirect param removed when sending _loadURL: .
+ (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
+ Note that we are doing a redirect if time=0 and we're not completed. Also includes
+ previous impl moved from Bridge.
+ (-[WebFrame _clientRedirectCancelled]): Previous impl moved from Bridge.
+
+
2002-11-13 Maciej Stachowiak <mjs at apple.com>
Pass mime type instead of full response to content policy delegate
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 013f1ba..04dce07 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,25 @@
+2002-11-13 Trey Matteson <trey at apple.com>
+
+ Fixed client redirects, some more. The upshot is that they do not
+ generate two items in the back-forward list. iBench still works.
+
+ * WebCoreSupport.subproj/WebBridge.m:
+ (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Call straight to the frame for all impl.
+ (-[WebBridge reportClientRedirectCancelled]): Call straight to the frame for all impl.
+ (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
+ clientRedirect param removed when sending _loadURL: to frame.
+ * WebView.subproj/WebFramePrivate.h:
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
+ clientRedirect param removed. Check our own ivar to know if we are in client redirect case.
+ (-[WebFrame _loadURL:intoChild:]):
+ clientRedirect param removed when sending _loadURL: .
+ (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
+ Note that we are doing a redirect if time=0 and we're not completed. Also includes
+ previous impl moved from Bridge.
+ (-[WebFrame _clientRedirectCancelled]): Previous impl moved from Bridge.
+
+
2002-11-13 Maciej Stachowiak <mjs at apple.com>
Pass mime type instead of full response to content policy delegate
diff --git a/WebKit/WebCoreSupport.subproj/WebBridge.m b/WebKit/WebCoreSupport.subproj/WebBridge.m
index 85a13be..d63a080 100644
--- a/WebKit/WebCoreSupport.subproj/WebBridge.m
+++ b/WebKit/WebCoreSupport.subproj/WebBridge.m
@@ -227,18 +227,12 @@
- (void)reportClientRedirectTo:(NSURL *)URL delay:(NSTimeInterval)seconds fireDate:(NSDate *)date
{
- LOG(Redirect, "Client redirect to: %@", URL);
- [[[frame controller] locationChangeDelegate] clientWillRedirectTo:URL delay:seconds fireDate:date forFrame:frame];
- if (seconds == 0.0) {
- // used to set loadType to internal, to prevent a redirect from going in the backforward list
- _doingClientRedirect = YES;
- }
+ [frame _clientRedirectedTo:URL delay:seconds fireDate:date];
}
- (void)reportClientRedirectCancelled
{
- [[[frame controller] locationChangeDelegate] clientRedirectCancelledForFrame:frame];
- _doingClientRedirect = NO;
+ [frame _clientRedirectCancelled];
}
- (void)setFrame:(WebFrame *)webFrame
@@ -273,8 +267,7 @@
- (void)loadURL:(NSURL *)URL reload:(BOOL)reload triggeringEvent:(NSEvent *)event isFormSubmission:(BOOL)isFormSubmission
{
- [frame _loadURL:URL loadType:(reload ? WebFrameLoadTypeReload : WebFrameLoadTypeStandard) clientRedirect:_doingClientRedirect triggeringEvent:event isFormSubmission:isFormSubmission];
- _doingClientRedirect = NO;
+ [frame _loadURL:URL loadType:(reload ? WebFrameLoadTypeReload : WebFrameLoadTypeStandard) triggeringEvent:event isFormSubmission:isFormSubmission];
}
- (void)postWithURL:(NSURL *)URL data:(NSData *)data contentType:(NSString *)contentType triggeringEvent:(NSEvent *)event
diff --git a/WebKit/WebView.subproj/WebFramePrivate.h b/WebKit/WebView.subproj/WebFramePrivate.h
index e9ae89d..62f0462 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.h
+++ b/WebKit/WebView.subproj/WebFramePrivate.h
@@ -63,6 +63,7 @@ typedef enum {
WebHistoryItem *provisionalItem; // BF item for where we're trying to go
// (only known when navigating to a pre-existing BF item)
WebHistoryItem *previousItem; // BF item for previous content, see _itemForSavingDocState
+ BOOL instantRedirectComing;
}
- (void)setName:(NSString *)name;
@@ -110,10 +111,13 @@ typedef enum {
- (NSDictionary *)_actionInformationForNavigationType:(WebNavigationType)navigationType event:(NSEvent *)event;
- (BOOL)_continueAfterNavigationPolicyForRequest:(WebResourceRequest *)request dataSource:(WebDataSource *)dataSource;
- (void)_goToItem: (WebHistoryItem *)item withLoadType: (WebFrameLoadType)type;
-- (void)_loadURL:(NSURL *)URL loadType:(WebFrameLoadType)loadType clientRedirect:(BOOL)clientRedirect triggeringEvent:(NSEvent *)event isFormSubmission:(BOOL)isFormSubmission;
+- (void)_loadURL:(NSURL *)URL loadType:(WebFrameLoadType)loadType triggeringEvent:(NSEvent *)event isFormSubmission:(BOOL)isFormSubmission;
- (void)_loadURL:(NSURL *)URL intoChild:(WebFrame *)childFrame;
- (void)_postWithURL:(NSURL *)URL data:(NSData *)data contentType:(NSString *)contentType triggeringEvent:(NSEvent *)event;
+- (void)_clientRedirectedTo:(NSURL *)URL delay:(NSTimeInterval)seconds fireDate:(NSDate *)date;
+- (void)_clientRedirectCancelled;
+
- (void)_saveScrollPositionToItem:(WebHistoryItem *)item;
- (void)_restoreScrollPosition;
- (void)_scrollToTop;
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index 2f5d513..5b82283 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -1041,7 +1041,7 @@ static const char * const stateNames[] = {
}
// main funnel for navigating via callback from WebCore (e.g., clicking a link, redirect)
-- (void)_loadURL:(NSURL *)URL loadType:(WebFrameLoadType)loadType clientRedirect:(BOOL)clientRedirect triggeringEvent:(NSEvent *)event isFormSubmission:(BOOL)isFormSubmission
+- (void)_loadURL:(NSURL *)URL loadType:(WebFrameLoadType)loadType triggeringEvent:(NSEvent *)event isFormSubmission:(BOOL)isFormSubmission
{
WebResourceRequest *request = [[WebResourceRequest alloc] initWithURL:URL];
[request setReferrer:[_private->bridge referrer]];
@@ -1092,13 +1092,13 @@ static const char * const stateNames[] = {
} else {
WebFrameLoadType previousLoadType = [self _loadType];
WebDataSource *oldDataSource = [[self dataSource] retain];
- WebFrameState stateBeforeStartingLoad = [self _state];
[self _loadRequest:request triggeringAction:action];
// NB: must be done after loadRequest:, which sets the provDataSource, which
// inits the load type to Standard
[self _setLoadType:loadType];
- if (clientRedirect && stateBeforeStartingLoad != WebFrameStateComplete) {
+ if (_private->instantRedirectComing) {
+ _private->instantRedirectComing = NO;
// Inherit the loadType from the operation that spawned the redirect
[self _setLoadType:previousLoadType];
@@ -1136,7 +1136,7 @@ static const char * const stateNames[] = {
}
}
- [childFrame _loadURL:URL loadType:childLoadType clientRedirect:NO triggeringEvent:nil isFormSubmission:NO];
+ [childFrame _loadURL:URL loadType:childLoadType triggeringEvent:nil isFormSubmission:NO];
// want this here???
if (childItem) {
if (loadType != WebFrameLoadTypeReload) {
@@ -1168,6 +1168,23 @@ static const char * const stateNames[] = {
[request release];
}
+- (void)_clientRedirectedTo:(NSURL *)URL delay:(NSTimeInterval)seconds fireDate:(NSDate *)date
+{
+ LOG(Redirect, "Client redirect to: %@", URL);
+ [[[self controller] locationChangeDelegate] clientWillRedirectTo:URL delay:seconds fireDate:date forFrame:self];
+ // If a zero-time redirect comes in and we're still finishing the previous page, we set
+ // a special mode so we treat the next load as part of the same navigation.
+ if (seconds == 0.0 && [self _state] != WebFrameStateComplete) {
+ _private->instantRedirectComing = YES;
+ }
+}
+
+- (void)_clientRedirectCancelled
+{
+ [[[self controller] locationChangeDelegate] clientRedirectCancelledForFrame:self];
+ _private->instantRedirectComing = NO;
+}
+
- (void)_saveScrollPositionToItem:(WebHistoryItem *)item
{
if (item) {
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list