Revision: 29140
          http://sourceforge.net/p/bibdesk/svn/29140
Author:   hofman
Date:     2025-04-19 16:27:41 +0000 (Sat, 19 Apr 2025)
Log Message:
-----------
Don't determine whether a drag has URLs in draggingEntered, as that may not be 
called for drags from self.

Modified Paths:
--------------
    trunk/bibdesk_vendorsrc/amaxwell/FileView/FVFileView.m

Modified: trunk/bibdesk_vendorsrc/amaxwell/FileView/FVFileView.m
===================================================================
--- trunk/bibdesk_vendorsrc/amaxwell/FileView/FVFileView.m      2025-04-19 
15:59:34 UTC (rev 29139)
+++ trunk/bibdesk_vendorsrc/amaxwell/FileView/FVFileView.m      2025-04-19 
16:27:41 UTC (rev 29140)
@@ -165,11 +165,9 @@
 @interface FVDropHighlightView : FVDisplayView {
     NSUInteger      _dropIndex;
     FVDropOperation _dropOperation;
-    BOOL            _dragHasURLs;
 }
 @property (nonatomic) NSUInteger dropIndex;
 @property (nonatomic) FVDropOperation dropOperation;
-@property (nonatomic) BOOL dragHasURLs;
 @end
 
 #pragma mark -
@@ -2836,7 +2834,10 @@
     
     // We won't reset the drop location info when we propose 
NSDragOperationNone, because the delegate may want to override our decision, we 
will reset it at the end
     
-    if ([_dropHighlightView dragHasURLs] == NO) {
+    // !!! this is quite expensive to call repeatedly in -draggingUpdated
+    BOOL dragHasURLs = FVPasteboardHasURL([sender draggingPasteboard]);
+    
+    if (dragHasURLs == NO) {
         // We have to make sure the pasteboard really has a URL here, since 
most NSStrings aren't valid URLs, but the delegate may accept other types
         dragOp = NSDragOperationNone;
     }
@@ -2867,6 +2868,10 @@
         dragOp = NSDragOperationLink;
     }
     
+    if (_dropHighlightView == nil) {
+        _dropHighlightView = [[FVDropHighlightView alloc] 
initWithFrame:[_contentView bounds] delegate:self];
+        [_contentView addSubview:_dropHighlightView];
+    }
     [_dropHighlightView setDropIndex:dropIndex];
     [_dropHighlightView setDropOperation:dropOp];
     
@@ -2887,12 +2892,6 @@
 // this is called as soon as the mouse is moved to start a drag, or enters the 
window from outside
 - (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
 {
-    if (_dropHighlightView == nil) {
-        _dropHighlightView = [[FVDropHighlightView alloc] 
initWithFrame:[_contentView bounds] delegate:self];
-        [_contentView addSubview:_dropHighlightView];
-    }
-    // !!! this is quite expensive to call repeatedly in -draggingUpdated
-    [_dropHighlightView setDragHasURLs:FVPasteboardHasURL([sender 
draggingPasteboard])];
     return [self draggingUpdated:sender];
 }
 
@@ -5113,7 +5112,6 @@
 
 @synthesize dropIndex=_dropIndex;
 @synthesize dropOperation=_dropOperation;
-@synthesize dragHasURLs=_dragHasURLs;
 
 - (id)initWithFrame:(NSRect)frameRect {
     self = [super initWithFrame:frameRect];

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



_______________________________________________
Bibdesk-commit mailing list
Bibdesk-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to