Revision: 16069
          http://sourceforge.net/p/skim-app/code/16069
Author:   hofman
Date:     2026-03-16 16:28:50 +0000 (Mon, 16 Mar 2026)
Log Message:
-----------
allow dragging a color on the whole notes table to set the color of all 
selected notes

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

Modified: trunk/SKMainWindowController_UI.m
===================================================================
--- trunk/SKMainWindowController_UI.m   2026-03-15 22:16:44 UTC (rev 16068)
+++ trunk/SKMainWindowController_UI.m   2026-03-16 16:28:50 UTC (rev 16069)
@@ -758,9 +758,14 @@
     NSDragOperation dragOp = NSDragOperationNone;
     if ([ov isEqual:rightSideController.noteOutlineView]) {
         NSPasteboard *pboard = [info draggingPasteboard];
-        if ([pboard canReadObjectForClasses:@[[NSColor class]] options:@{}] &&
-            anIndex == NSOutlineViewDropOnItemIndex && [(PDFAnnotation *)item 
type] != nil)
-            dragOp = NSDragOperationEvery;
+        if ([pboard canReadObjectForClasses:@[[NSColor class]] options:@{}]) {
+            if (anIndex == NSOutlineViewDropOnItemIndex && [(PDFAnnotation 
*)item type] != nil) {
+                dragOp = NSDragOperationEvery;
+            } else if ([ov selectedRow] != -1) {
+                [ov setDropItem:nil 
dropChildIndex:NSOutlineViewDropOnItemIndex];
+                dragOp = NSDragOperationEvery;
+            }
+        }
     }
     return dragOp;
 }
@@ -771,7 +776,13 @@
         if ([pboard canReadObjectForClasses:@[[NSColor class]] options:@{}]) {
             BOOL isShift = ([NSEvent modifierFlags] & 
NSEventModifierFlagShift) != 0;
             BOOL isAlt = ([NSEvent modifierFlags] & NSEventModifierFlagOption) 
!= 0;
-            [item setColor:[NSColor colorFromPasteboard:pboard] 
alternate:isAlt updateDefaults:isShift];
+            NSColor *color = [NSColor colorFromPasteboard:pboard];
+            if (item) {
+                [item setColor:color alternate:isAlt updateDefaults:isShift];
+            } else {
+                for (PDFAnnotation *note in [self selectedNotes])
+                    [note setColor:color alternate:isAlt 
updateDefaults:isShift];
+            }
             return YES;
         }
     }

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