Revision: 12844
          http://sourceforge.net/p/skim-app/code/12844
Author:   hofman
Date:     2022-04-15 14:50:12 +0000 (Fri, 15 Apr 2022)
Log Message:
-----------
use scheme for icon attachment for remote url when no file extension

Modified Paths:
--------------
    trunk/NSURL_SKExtensions.m

Modified: trunk/NSURL_SKExtensions.m
===================================================================
--- trunk/NSURL_SKExtensions.m  2022-04-11 15:02:03 UTC (rev 12843)
+++ trunk/NSURL_SKExtensions.m  2022-04-15 14:50:12 UTC (rev 12844)
@@ -173,7 +173,22 @@
     if ([url isFileURL]) {
         type = [[NSWorkspace sharedWorkspace] typeOfFile:[url path] 
error:NULL];
     } else {
-        type = [(NSString 
*)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, 
(CFStringRef)[url pathExtension], NULL) autorelease];
+        type = [url pathExtension];
+        if ([type length]) {
+            type = [(NSString 
*)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, 
(CFStringRef)type, NULL) autorelease];
+        } else {
+            NSString *scheme = [[url scheme] lowercaseString];
+            if ([scheme isEqualToString:@"http"] || [scheme 
isEqualToString:@"https"])
+                type = NSFileTypeForHFSTypeCode(kInternetLocationHTTPIcon);
+            else if ([scheme isEqualToString:@"ftp"])
+                type = NSFileTypeForHFSTypeCode(kInternetLocationFTPIcon);
+            else if ([scheme isEqualToString:@"mailto"])
+                type = NSFileTypeForHFSTypeCode(kInternetLocationMailIcon);
+            else if ([scheme isEqualToString:@"news"])
+                type = NSFileTypeForHFSTypeCode(kInternetLocationNewsIcon);
+            else
+                type = NSFileTypeForHFSTypeCode(kInternetLocationGenericIcon);
+        }
     }
     return type ?: @"";
 }

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



_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to