Revision: 16228
http://sourceforge.net/p/skim-app/code/16228
Author: hofman
Date: 2026-05-05 16:40:27 +0000 (Tue, 05 May 2026)
Log Message:
-----------
implement resetting rowheights with animation in note outlineview
Modified Paths:
--------------
trunk/SKMainWindowController_Actions.m
trunk/SKMainWindowController_UI.m
trunk/SKNoteOutlineView.h
trunk/SKNoteOutlineView.m
trunk/SKNotesDocument.m
Modified: trunk/SKMainWindowController_Actions.m
===================================================================
--- trunk/SKMainWindowController_Actions.m 2026-05-05 16:27:56 UTC (rev
16227)
+++ trunk/SKMainWindowController_Actions.m 2026-05-05 16:40:27 UTC (rev
16228)
@@ -93,7 +93,6 @@
- (void)updateLineInspector;
- (void)updateNoteFilterPredicate;
- (void)updateSnapshotFilterPredicate;
-- (void)resetNoteRowHeights;
@end
@implementation SKMainWindowController (Actions)
Modified: trunk/SKMainWindowController_UI.m
===================================================================
--- trunk/SKMainWindowController_UI.m 2026-05-05 16:27:56 UTC (rev 16227)
+++ trunk/SKMainWindowController_UI.m 2026-05-05 16:40:27 UTC (rev 16228)
@@ -911,15 +911,10 @@
}
}
-- (void)resetNoteRowHeights {
- [rightSideController.noteOutlineView resetRowHeights];
- [rightSideController.noteOutlineView noteHeightOfRowsChangedAnimating:YES];
-}
-
- (void)outlineViewColumnDidResize:(NSNotification *)notification{
if (mwcFlags.autoResizeNoteRows && [[notification object]
isEqual:rightSideController.noteOutlineView] &&
[(SKScrollView *)[rightSideController.noteOutlineView
enclosingScrollView] isResizingSubviews] == NO)
- [self performSelectorOnce:@selector(resetNoteRowHeights)
afterDelay:0.0];
+ [rightSideController.noteOutlineView
performSelectorOnce:@selector(resetRowHeightsAnimating) afterDelay:0.0];
}
- (void)outlineViewColumnDidMove:(NSNotification *)notification {
@@ -934,7 +929,7 @@
break;
}
if (oldColumn == firstColumn || newColumn == firstColumn)
- [self performSelectorOnce:@selector(resetNoteRowHeights)
afterDelay:0.0];
+ [rightSideController.noteOutlineView
performSelectorOnce:@selector(resetRowHeightsAnimating) afterDelay:0.0];
}
}
@@ -1224,7 +1219,7 @@
- (void)resetHeightOfNoteRows:(id)sender {
NSArray *items = [sender representedObject];
if (items == nil) {
- [self resetNoteRowHeights];
+ [rightSideController.noteOutlineView resetRowHeightsAnimating];
} else {
SKNoteOutlineView *ov = rightSideController.noteOutlineView;
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSet];
@@ -1290,7 +1285,7 @@
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
NSView *view = [rightSideController.noteOutlineView enclosingScrollView];
if (mwcFlags.autoResizeNoteRows) {
- [self resetNoteRowHeights];
+ [rightSideController.noteOutlineView resetRowHeightsAnimating];
[nc addObserver:self
selector:@selector(handleNoteViewFrameDidChangeNotification:)
name:NSViewFrameDidChangeNotification object:view];
[nc addObserver:self
selector:@selector(handleNoteViewDidEndLiveResizeNotification:)
@@ -2051,7 +2046,7 @@
- (void)handleNoteViewDidEndLiveResizeNotification:(NSNotification
*)notification {
if (mwcFlags.noteRowHeightsNeedUpdate && mwcFlags.autoResizeNoteRows) {
- [self resetNoteRowHeights];
+ [rightSideController.noteOutlineView resetRowHeightsAnimating];
}
}
Modified: trunk/SKNoteOutlineView.h
===================================================================
--- trunk/SKNoteOutlineView.h 2026-05-05 16:27:56 UTC (rev 16227)
+++ trunk/SKNoteOutlineView.h 2026-05-05 16:40:27 UTC (rev 16228)
@@ -56,6 +56,7 @@
- (CGFloat)rowHeightForItem:(id)item;
- (void)setRowHeight:(CGFloat)rowHeight forItem:(id)item;
- (void)resetRowHeights;
+- (void)resetRowHeightsAnimating;
@end
Modified: trunk/SKNoteOutlineView.m
===================================================================
--- trunk/SKNoteOutlineView.m 2026-05-05 16:27:56 UTC (rev 16227)
+++ trunk/SKNoteOutlineView.m 2026-05-05 16:40:27 UTC (rev 16228)
@@ -118,6 +118,11 @@
[rowHeights removeAllObjects];
}
+- (void)resetRowHeightsAnimating {
+ [self resetRowHeights];
+ [self noteHeightOfRowsChangedAnimating:YES];
+}
+
- (void)mouseDown:(NSEvent *)theEvent {
if ([theEvent clickCount] == 1 && [[self delegate]
respondsToSelector:@selector(outlineView:heightOfRowByItem:)]) {
NSPoint mouseLoc = [self convertPoint:[theEvent locationInWindow]
fromView:nil];
Modified: trunk/SKNotesDocument.m
===================================================================
--- trunk/SKNotesDocument.m 2026-05-05 16:27:56 UTC (rev 16227)
+++ trunk/SKNotesDocument.m 2026-05-05 16:40:27 UTC (rev 16228)
@@ -552,15 +552,10 @@
[outlineView noteHeightOfRowsWithIndexesChanged:rowIndexes ?: [NSIndexSet
indexSetWithIndexesInRange:NSMakeRange(0, [outlineView numberOfRows])]];
}
-- (void)resetRowHeights {
- [outlineView resetRowHeights];
- [outlineView noteHeightOfRowsChangedAnimating:YES];
-}
-
- (void)resetHeightOfNoteRows:(id)sender {
NSArray *items = [sender representedObject];
if (items == nil) {
- [self resetRowHeights];
+ [outlineView resetRowHeightsAnimating];
} else {
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSet];
for (id item in items) {
@@ -582,7 +577,7 @@
- (void)handleScrollViewDidEndLiveResizeNotification:(NSNotification
*)notification {
if (ndFlags.autoResizeRows) {
- [self resetRowHeights];
+ [outlineView resetRowHeightsAnimating];
}
}
@@ -591,7 +586,7 @@
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
NSView *view = [outlineView enclosingScrollView];
if (ndFlags.autoResizeRows) {
- [self resetRowHeights];
+ [outlineView resetRowHeightsAnimating];
[nc addObserver:self
selector:@selector(handleScrollViewFrameDidChangeNotification:)
name:NSViewFrameDidChangeNotification object:view];
[nc addObserver:self
selector:@selector(handleScrollViewDidEndLiveResizeNotification:)
@@ -740,7 +735,7 @@
- (void)outlineViewColumnDidResize:(NSNotification *)notification{
if (ndFlags.autoResizeRows && [(SKScrollView *)[[notification object]
enclosingScrollView] isResizingSubviews] == NO)
- [self performSelectorOnce:@selector(resetRowHeights) afterDelay:0.0];
+ [outlineView performSelectorOnce:@selector(resetRowHeightsAnimating)
afterDelay:0.0];
}
- (void)outlineViewColumnDidMove:(NSNotification *)notification {
@@ -755,7 +750,7 @@
break;
}
if (oldColumn == firstColumn || newColumn == firstColumn)
- [self performSelectorOnce:@selector(resetRowHeights)
afterDelay:0.0];
+ [outlineView
performSelectorOnce:@selector(resetRowHeightsAnimating) afterDelay:0.0];
}
}
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