Revision: 29616
          http://sourceforge.net/p/bibdesk/svn/29616
Author:   hofman
Date:     2025-09-20 17:25:46 +0000 (Sat, 20 Sep 2025)
Log Message:
-----------
Make sure URL KVO notifications are send on server redirect and load start

Modified Paths:
--------------
    trunk/bibdesk/BDSKWebView.m

Modified: trunk/bibdesk/BDSKWebView.m
===================================================================
--- trunk/bibdesk/BDSKWebView.m 2025-09-20 17:01:49 UTC (rev 29615)
+++ trunk/bibdesk/BDSKWebView.m 2025-09-20 17:25:46 UTC (rev 29616)
@@ -448,10 +448,13 @@
 
 - (void)webView:(WebView *)sender didStartProvisionalLoadForFrame:(WebFrame 
*)frame{
     if (frame == [sender mainFrame]) {
-        if ([sender respondsToSelector:@selector(didStartLoadForMainFrame)]) {
+        if ([sender respondsToSelector:@selector(didStartLoadForMainFrame)])
             [(BDSKWebView *)sender didStartLoadForMainFrame];
-        } else {
+        else
             [self webView:sender setTitle:[NSLocalizedString(@"Loading", 
@"Placeholder web group label") stringByAppendingEllipsis]];
+        if ([sender respondsToSelector: @selector(URL)]) {
+            [sender willChangeValueForKey:@"URL"];
+            [sender didChangeValueForKey:@"URL"];
         }
     }
     [sender willChangeValueForKey:@"loading"];
@@ -461,6 +464,13 @@
         [delegate webView:sender didStartLoadForFrame:frame];
 }
 
+- (void)webView:(WebView *)sender 
didReceiveServerRedirectForProvisionalLoadForFrame:(WebFrame *)frame {
+    if (frame == [sender mainFrame] && [sender respondsToSelector: 
@selector(URL)]) {
+        [sender willChangeValueForKey:@"URL"];
+        [sender didChangeValueForKey:@"URL"];
+    }
+}
+
 - (void)webView:(WebView *)sender didCommitLoadForFrame:(WebFrame *)frame {
     if (frame == [sender mainFrame] && [sender respondsToSelector: 
@selector(URL)]) {
         [sender willChangeValueForKey:@"URL"];
@@ -471,11 +481,10 @@
 - (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame{
 
     if (frame == [sender mainFrame]) {
-        if ([sender respondsToSelector:@selector(didFinishLoadForMainFrame)]) {
+        if ([sender respondsToSelector:@selector(didFinishLoadForMainFrame)])
              [(BDSKWebView *)sender didFinishLoadForMainFrame];
-        } else {
+        else
             [self webView:sender setTitle:[sender mainFrameTitle]];
-        }
     }
     [sender willChangeValueForKey:@"loading"];
     [sender didChangeValueForKey:@"loading"];
@@ -486,11 +495,10 @@
 
 - (void)webView:(WebView *)sender didFailLoadWithError:(NSError *)error 
forFrame:(WebFrame *)frame {
     if (frame == [sender mainFrame]) {
-        if ([sender 
respondsToSelector:@selector(didFailLoadForMainFrameWithError:)]) {
+        if ([sender 
respondsToSelector:@selector(didFailLoadForMainFrameWithError:)])
             [(BDSKWebView *)sender didFailLoadForMainFrameWithError:error];
-        } else {
+        else
             [self webView:sender setTitle:NSLocalizedString(@"Error", 
@"Placeholder web group label")];
-        }
     }
     [sender willChangeValueForKey:@"loading"];
     [sender didChangeValueForKey:@"loading"];

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to