Revision: 16129
http://sourceforge.net/p/skim-app/code/16129
Author: hofman
Date: 2026-03-29 16:21:05 +0000 (Sun, 29 Mar 2026)
Log Message:
-----------
use viwDidHide and viewDidUnhide to reset pdfview/presentationview
Modified Paths:
--------------
trunk/SKPDFView.m
trunk/SKPresentationView.m
Modified: trunk/SKPDFView.m
===================================================================
--- trunk/SKPDFView.m 2026-03-29 16:08:26 UTC (rev 16128)
+++ trunk/SKPDFView.m 2026-03-29 16:21:05 UTC (rev 16129)
@@ -3203,6 +3203,18 @@
[super viewWillMoveToWindow:newWindow];
}
+- (void)viewDidHide {
+ [self commitEditing];
+
+ [self removeLoupeWindow];
+
+ [self stopPacer];
+
+ [self setTemporaryToolMode:SKToolModeNone];
+
+ [super viewDidHide];
+}
+
#pragma mark Dark mode
- (void)viewDidChangeEffectiveAppearance {
Modified: trunk/SKPresentationView.m
===================================================================
--- trunk/SKPresentationView.m 2026-03-29 16:08:26 UTC (rev 16128)
+++ trunk/SKPresentationView.m 2026-03-29 16:21:05 UTC (rev 16129)
@@ -1196,7 +1196,7 @@
}
- (void)handleWindowDidResignKeyNotification:(NSNotification *)notification {
- if ([self isHidden] == NO) {
+ if ([self isHiddenOrHasHiddenAncestor] == NO) {
[self cancelDelayedRequests];
pvFlags.cursorHidden = NO;
[[NSCursor arrowCursor] set];
@@ -1204,7 +1204,7 @@
}
- (void)handleWindowDidBecomeKeyNotification:(NSNotification *)notification {
- if (pvFlags.cursorHidden == NO && [self isHidden] == NO) {
+ if (pvFlags.cursorHidden == NO && [self isHiddenOrHasHiddenAncestor] ==
NO) {
[self performSelectorOnce:@selector(setCursorForMouse:)
afterDelay:0.0];
[self performSelectorOnce:@selector(autoHide)
afterDelay:AUTO_HIDE_DELAY];
}
@@ -1256,13 +1256,17 @@
[super viewDidMoveToWindow];
}
-- (void)setHidden:(BOOL)hidden {
- BOOL wasHidden = [self isHidden];
+- (void)viewDidHide {
[self cancelDelayedRequests];
- if (hidden && wasHidden == NO)
- [self resetAutoHide];
- [super setHidden:hidden];
- if (hidden == NO && wasHidden && [[self window] isKeyWindow])
+ [self resetAutoHide];
+
+ [super viewDidHide];
+}
+
+- (void)viewDidUnhide {
+ [super viewDidUnhide];
+
+ if ([[self window] isKeyWindow])
[self handleWindowDidBecomeKeyNotification:nil];
}
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