Revision: 13938
          http://sourceforge.net/p/skim-app/code/13938
Author:   hofman
Date:     2023-12-20 10:01:43 +0000 (Wed, 20 Dec 2023)
Log Message:
-----------
Don't set first drag item leading when it has no drag image

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

Modified: trunk/SKThumbnailView.m
===================================================================
--- trunk/SKThumbnailView.m     2023-12-19 23:59:42 UTC (rev 13937)
+++ trunk/SKThumbnailView.m     2023-12-20 10:01:43 UTC (rev 13938)
@@ -448,11 +448,13 @@
             
             NSMutableArray *dragItems = [NSMutableArray array];
             NSDraggingItem *dragItem = [[NSDraggingItem alloc] 
initWithPasteboardWriter:item];
+            __block BOOL hasFirstItem = YES;
             
             [dragItem setDraggingFrame:[self draggingFrame] contents:[self 
draggingImage]];
             if (selectionIndexes == nil) {
                 [dragItems addObject:dragItem];
             } else {
+                NSUInteger firstIndex = [selectionIndexes firstIndex];
                 [selectionIndexes enumerateIndexesUsingBlock:^(NSUInteger idx, 
BOOL *stop){
                     if (idx == pageIndex) {
                         [dragItems addObject:dragItem];
@@ -462,10 +464,13 @@
                         NSDraggingItem *dummyDragItem = [[NSDraggingItem 
alloc] initWithPasteboardWriter:dummyItem];
                         NSRect rect;
                         SKThumbnailView *view = (SKThumbnailView 
*)[[collectionView itemAtIndexPath:[NSIndexPath indexPathForItem:idx 
inSection:0]] view];
-                        if (view)
+                        if (view) {
                             rect = [self convertRect:[view draggingFrame] 
fromView:view];
-                        else
+                        } else {
                             rect = [self draggingFrame];
+                            if (idx == firstIndex)
+                                hasFirstItem = NO;
+                        }
                         [dummyDragItem setDraggingFrame:rect contents:[view 
draggingImage]];
                         [dragItems addObject:dummyDragItem];
                     }
@@ -474,7 +479,8 @@
             
             NSDraggingSession *session = [self 
beginDraggingSessionWithItems:dragItems event:theEvent source:self];
             [session setDraggingFormation:NSDraggingFormationStack];
-            [session setDraggingLeaderIndex:0];
+            if (hasFirstItem)
+                [session setDraggingLeaderIndex:0];
         }
         
     } else {

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



_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to