You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
(23) |
Apr
(254) |
May
(252) |
Jun
(209) |
Jul
(198) |
Aug
(192) |
Sep
(207) |
Oct
(120) |
Nov
(179) |
Dec
(52) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(48) |
Feb
(69) |
Mar
(129) |
Apr
(250) |
May
(113) |
Jun
(177) |
Jul
(228) |
Aug
(155) |
Sep
(218) |
Oct
(185) |
Nov
(109) |
Dec
(88) |
2009 |
Jan
(83) |
Feb
(39) |
Mar
(70) |
Apr
(47) |
May
(48) |
Jun
(67) |
Jul
(61) |
Aug
(97) |
Sep
(221) |
Oct
(141) |
Nov
(70) |
Dec
(61) |
2010 |
Jan
(45) |
Feb
(76) |
Mar
(178) |
Apr
(106) |
May
(57) |
Jun
(32) |
Jul
(64) |
Aug
(98) |
Sep
(96) |
Oct
(19) |
Nov
(34) |
Dec
(117) |
2011 |
Jan
(55) |
Feb
(48) |
Mar
(64) |
Apr
(21) |
May
(39) |
Jun
(53) |
Jul
(99) |
Aug
(56) |
Sep
(39) |
Oct
(26) |
Nov
(19) |
Dec
(69) |
2012 |
Jan
(17) |
Feb
(40) |
Mar
(17) |
Apr
|
May
(2) |
Jun
(8) |
Jul
(2) |
Aug
(10) |
Sep
(10) |
Oct
(38) |
Nov
(48) |
Dec
(70) |
2013 |
Jan
(43) |
Feb
(47) |
Mar
(39) |
Apr
(37) |
May
(25) |
Jun
(6) |
Jul
(20) |
Aug
(49) |
Sep
(33) |
Oct
(34) |
Nov
(75) |
Dec
(6) |
2014 |
Jan
(32) |
Feb
(10) |
Mar
(17) |
Apr
|
May
|
Jun
(26) |
Jul
(5) |
Aug
|
Sep
(4) |
Oct
(23) |
Nov
(80) |
Dec
(48) |
2015 |
Jan
(80) |
Feb
(50) |
Mar
(58) |
Apr
(20) |
May
(11) |
Jun
(16) |
Jul
(24) |
Aug
(27) |
Sep
(56) |
Oct
(30) |
Nov
(16) |
Dec
(6) |
2016 |
Jan
(31) |
Feb
(14) |
Mar
(23) |
Apr
(17) |
May
(40) |
Jun
(12) |
Jul
(17) |
Aug
(9) |
Sep
(32) |
Oct
(36) |
Nov
(23) |
Dec
(9) |
2017 |
Jan
(37) |
Feb
(23) |
Mar
(65) |
Apr
(22) |
May
(6) |
Jun
(3) |
Jul
|
Aug
|
Sep
(3) |
Oct
(22) |
Nov
(63) |
Dec
(71) |
2018 |
Jan
(83) |
Feb
(21) |
Mar
(35) |
Apr
(44) |
May
(14) |
Jun
(12) |
Jul
(8) |
Aug
(18) |
Sep
(10) |
Oct
(145) |
Nov
(144) |
Dec
(76) |
2019 |
Jan
(18) |
Feb
(28) |
Mar
(5) |
Apr
(208) |
May
(291) |
Jun
(158) |
Jul
(27) |
Aug
(8) |
Sep
(10) |
Oct
(83) |
Nov
(41) |
Dec
(31) |
2020 |
Jan
(16) |
Feb
(46) |
Mar
(100) |
Apr
(78) |
May
(69) |
Jun
(71) |
Jul
(28) |
Aug
(131) |
Sep
(176) |
Oct
(89) |
Nov
(147) |
Dec
(19) |
2021 |
Jan
(19) |
Feb
(25) |
Mar
(91) |
Apr
(98) |
May
(14) |
Jun
(44) |
Jul
(8) |
Aug
(3) |
Sep
(38) |
Oct
(57) |
Nov
(97) |
Dec
(74) |
2022 |
Jan
(89) |
Feb
(47) |
Mar
(15) |
Apr
(50) |
May
(54) |
Jun
(56) |
Jul
(80) |
Aug
(12) |
Sep
(11) |
Oct
(60) |
Nov
(48) |
Dec
(4) |
2023 |
Jan
(75) |
Feb
(49) |
Mar
(84) |
Apr
(24) |
May
(13) |
Jun
(74) |
Jul
(32) |
Aug
(66) |
Sep
(50) |
Oct
(38) |
Nov
(105) |
Dec
(181) |
2024 |
Jan
(21) |
Feb
(49) |
Mar
(77) |
Apr
(84) |
May
(20) |
Jun
(71) |
Jul
(53) |
Aug
(33) |
Sep
(40) |
Oct
|
Nov
|
Dec
|
From: <ho...@us...> - 2024-09-25 14:21:41
|
Revision: 14482 http://sourceforge.net/p/skim-app/code/14482 Author: hofman Date: 2024-09-25 14:21:39 +0000 (Wed, 25 Sep 2024) Log Message: ----------- Make sure content of preview window is aligned with top of panel content Modified Paths: -------------- trunk/SKPresentationOptionsSheetController.m Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-25 09:35:34 UTC (rev 14481) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-25 14:21:39 UTC (rev 14482) @@ -312,7 +312,7 @@ NSArray *constraints = @[ [[bgView leadingAnchor] constraintEqualToAnchor:[contentView leadingAnchor] constant:6.0], [[contentView trailingAnchor] constraintEqualToAnchor:[bgView trailingAnchor] constant:6.0], - [[bgView topAnchor] constraintEqualToAnchor:[contentView topAnchor] constant:28.0], + [[bgView topAnchor] constraintEqualToAnchor:[[previewWindow contentLayoutGuide] topAnchor] constant:0.0], [[contentView bottomAnchor] constraintEqualToAnchor:[bgView bottomAnchor] constant:6.0]]; [NSLayoutConstraint activateConstraints:constraints]; @@ -326,6 +326,7 @@ [[previewView transitionController] setTransition:info]; [previewWindow setTitle:[SKTransitionController localizedNameForStyle:[info transitionStyle]]]; + rect.size.height += NSHeight([previewWindow frame]) - NSHeight([previewWindow contentLayoutRect]) - 28.0; [previewWindow setFrame:rect display:NO]; [previewWindow center]; [previewWindow makeKeyAndOrderFront:nil]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-25 09:35:37
|
Revision: 14481 http://sourceforge.net/p/skim-app/code/14481 Author: hofman Date: 2024-09-25 09:35:34 +0000 (Wed, 25 Sep 2024) Log Message: ----------- Preview in transition table using space Modified Paths: -------------- trunk/SKPresentationOptionsSheetController.m trunk/SKTableView.h trunk/SKTableView.m Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-25 09:00:14 UTC (rev 14480) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-25 09:35:34 UTC (rev 14481) @@ -179,6 +179,8 @@ [tableView setImageToolTipLayout:SKTableImageToolTipByCell]; + [tableView setSupportsQuickLook:YES]; + [tableView setDoubleAction:@selector(preview:)]; if ([transitionController pageTransitions]) { [[self undoManager] disableUndoRegistration]; @@ -582,6 +584,10 @@ [selTransitions setValue:empty forKey:PROPERTIES_KEY]; } +- (void)tableViewQuickLookPreviewItems:(NSTableView *)tv { + [self preview:tv]; +} + - (NSArray *)tableViewTypeSelectHelperSelectionStrings:(NSTableView *)tv { return [transitions valueForKeyPath:@"thumbnail.label"]; } Modified: trunk/SKTableView.h =================================================================== --- trunk/SKTableView.h 2024-09-25 09:00:14 UTC (rev 14480) +++ trunk/SKTableView.h 2024-09-25 09:35:34 UTC (rev 14481) @@ -57,6 +57,8 @@ - (void)tableViewMoveLeft:(NSTableView *)aTableView; - (void)tableViewMoveRight:(NSTableView *)aTableView; +- (void)tableViewQuickLookPreviewItems:(NSTableView *)aTableView; + - (BOOL)tableView:(NSTableView *)tableView commandSelectRow:(NSInteger)rowIndex; - (nullable id <SKImageToolTipContext>)tableView:(NSTableView *)aTableView imageContextForTableColumn:(nullable NSTableColumn *)tableColumn row:(NSInteger)rowIndex scale:(CGFloat *)scale; Modified: trunk/SKTableView.m =================================================================== --- trunk/SKTableView.m 2024-09-25 09:00:14 UTC (rev 14480) +++ trunk/SKTableView.m 2024-09-25 09:35:34 UTC (rev 14481) @@ -94,6 +94,8 @@ } else if ((eventChar == SKSpaceCharacter) && modifierFlags == 0) { if (supportsQuickLook == NO) [[self enclosingScrollView] pageDown:nil]; + else if ([[self delegate] respondsToSelector:@selector(tableViewQuickLookPreviewItems:)]) + [[self delegate] tableViewQuickLookPreviewItems:self]; else if ([QLPreviewPanel sharedPreviewPanelExists] && [[QLPreviewPanel sharedPreviewPanel] isVisible]) [[QLPreviewPanel sharedPreviewPanel] orderOut:nil]; else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-25 09:00:16
|
Revision: 14480 http://sourceforge.net/p/skim-app/code/14480 Author: hofman Date: 2024-09-25 09:00:14 +0000 (Wed, 25 Sep 2024) Log Message: ----------- larger top margin in preview panel Modified Paths: -------------- trunk/SKPresentationOptionsSheetController.m Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-24 22:42:25 UTC (rev 14479) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-25 09:00:14 UTC (rev 14480) @@ -284,7 +284,7 @@ NSRect rect = [[[self window] screen] frame]; rect.size.width = round(0.5 * NSWidth(rect)) + 12.0; - rect.size.height = round(0.5 * NSHeight(rect)) + 30.0; + rect.size.height = round(0.5 * NSHeight(rect)) + 34.0; if (previewWindow == nil) { previewWindow = [[NSPanel alloc] initWithContentRect:rect styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskFullSizeContentView backing:NSBackingStoreBuffered defer:NO]; @@ -310,7 +310,7 @@ NSArray *constraints = @[ [[bgView leadingAnchor] constraintEqualToAnchor:[contentView leadingAnchor] constant:6.0], [[contentView trailingAnchor] constraintEqualToAnchor:[bgView trailingAnchor] constant:6.0], - [[bgView topAnchor] constraintEqualToAnchor:[contentView topAnchor] constant:24.0], + [[bgView topAnchor] constraintEqualToAnchor:[contentView topAnchor] constant:28.0], [[contentView bottomAnchor] constraintEqualToAnchor:[bgView bottomAnchor] constant:6.0]]; [NSLayoutConstraint activateConstraints:constraints]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-24 22:42:27
|
Revision: 14479 http://sourceforge.net/p/skim-app/code/14479 Author: hofman Date: 2024-09-24 22:42:25 +0000 (Tue, 24 Sep 2024) Log Message: ----------- Make preview window a floating panel Modified Paths: -------------- trunk/SKPresentationOptionsSheetController.h trunk/SKPresentationOptionsSheetController.m Modified: trunk/SKPresentationOptionsSheetController.h =================================================================== --- trunk/SKPresentationOptionsSheetController.h 2024-09-24 21:47:57 UTC (rev 14478) +++ trunk/SKPresentationOptionsSheetController.h 2024-09-24 22:42:25 UTC (rev 14479) @@ -60,7 +60,7 @@ __weak SKMainWindowController *controller; NSUndoManager *undoManager; NSMutableSet<SKTransitionInfo *> *changedTransitions; - NSWindow *previewWindow; + NSPanel *previewWindow; SKPDFPageView *previewView; } Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-24 21:47:57 UTC (rev 14478) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-24 22:42:25 UTC (rev 14479) @@ -287,20 +287,18 @@ rect.size.height = round(0.5 * NSHeight(rect)) + 30.0; if (previewWindow == nil) { - previewWindow = [[NSWindow alloc] initWithContentRect:rect styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskFullSizeContentView backing:NSBackingStoreBuffered defer:NO]; + previewWindow = [[NSPanel alloc] initWithContentRect:rect styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskFullSizeContentView backing:NSBackingStoreBuffered defer:NO]; [previewWindow setReleasedWhenClosed:NO]; [previewWindow setTitlebarAppearsTransparent:YES]; - [previewWindow setExcludedFromWindowsMenu:YES]; + [previewWindow setHidesOnDeactivate:NO]; + [previewWindow setFloatingPanel:YES]; - NSView *contentView = [previewWindow contentView]; + NSVisualEffectView *contentView = [[NSVisualEffectView alloc] init]; + [contentView setMaterial:NSVisualEffectMaterialPopover]; + [contentView setState:NSVisualEffectStateActive]; + [contentView setBlendingMode:NSVisualEffectBlendingModeBehindWindow]; + [previewWindow setContentView:contentView]; - NSVisualEffectView *veView = [[NSVisualEffectView alloc] init]; - [veView setMaterial:NSVisualEffectMaterialPopover]; - [veView setState:NSVisualEffectStateActive]; - [veView setBlendingMode:NSVisualEffectBlendingModeBehindWindow]; - [veView setTranslatesAutoresizingMaskIntoConstraints:NO]; - [contentView addSubviewWithConstraints:veView]; - NSView *bgView = [[NSView alloc] init]; CALayer *layer = [CALayer layer]; [layer setBackgroundColor:CGColorGetConstantColor(kCGColorBlack)]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-24 21:47:59
|
Revision: 14478 http://sourceforge.net/p/skim-app/code/14478 Author: hofman Date: 2024-09-24 21:47:57 +0000 (Tue, 24 Sep 2024) Log Message: ----------- lower preview button Modified Paths: -------------- trunk/Base.lproj/TransitionSheet.xib Modified: trunk/Base.lproj/TransitionSheet.xib =================================================================== --- trunk/Base.lproj/TransitionSheet.xib 2024-09-24 14:53:28 UTC (rev 14477) +++ trunk/Base.lproj/TransitionSheet.xib 2024-09-24 21:47:57 UTC (rev 14478) @@ -394,7 +394,7 @@ </scroller> </scrollView> <button toolTip="Preview" translatesAutoresizingMaskIntoConstraints="NO" id="pxs-bg-YUv"> - <rect key="frame" x="417" y="239" width="21.5" height="13"/> + <rect key="frame" x="417" y="234" width="21.5" height="13"/> <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="NSQuickLookTemplate" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" inset="2" id="E0O-Sq-w0l"> <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> <font key="font" metaFont="system"/> @@ -424,9 +424,9 @@ <constraint firstItem="27" firstAttribute="width" secondItem="31" secondAttribute="width" id="buf-gV-RCb"/> <constraint firstAttribute="trailing" secondItem="67" secondAttribute="trailing" constant="20" symbolic="YES" id="eM0-LM-BFY"/> <constraint firstItem="68" firstAttribute="top" secondItem="67" secondAttribute="bottom" constant="8" symbolic="YES" id="f4s-ds-QZB"/> + <constraint firstItem="67" firstAttribute="top" secondItem="pxs-bg-YUv" secondAttribute="bottom" constant="8" symbolic="YES" id="kvG-WQ-MuV"/> <constraint firstItem="67" firstAttribute="leading" secondItem="8" secondAttribute="leading" constant="159" id="m1r-zo-sbv"/> <constraint firstItem="pxs-bg-YUv" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="138" secondAttribute="trailing" constant="8" symbolic="YES" id="soM-cY-JW3"/> - <constraint firstItem="138" firstAttribute="firstBaseline" secondItem="pxs-bg-YUv" secondAttribute="firstBaseline" id="twM-eD-8UF"/> <constraint firstItem="67" firstAttribute="leading" secondItem="68" secondAttribute="leading" id="v0Q-OP-dRP"/> <constraint firstItem="68" firstAttribute="trailing" secondItem="27" secondAttribute="trailing" id="wWN-IL-GxM"/> <constraint firstItem="27" firstAttribute="top" secondItem="68" secondAttribute="bottom" constant="20" symbolic="YES" id="wjE-G9-oeP"/> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-24 14:53:30
|
Revision: 14477 http://sourceforge.net/p/skim-app/code/14477 Author: hofman Date: 2024-09-24 14:53:28 +0000 (Tue, 24 Sep 2024) Log Message: ----------- Set double action of transition table to preview Modified Paths: -------------- trunk/SKPresentationOptionsSheetController.m Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-24 14:39:03 UTC (rev 14476) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-24 14:53:28 UTC (rev 14477) @@ -179,6 +179,7 @@ [tableView setImageToolTipLayout:SKTableImageToolTipByCell]; + [tableView setDoubleAction:@selector(preview:)]; if ([transitionController pageTransitions]) { [[self undoManager] disableUndoRegistration]; [self setSeparate:YES]; @@ -266,12 +267,17 @@ - (void)preview:(id)sender { SKTransitionInfo *info = transition; - NSUInteger idx = 0; + NSInteger idx = -1; if (separate) { - idx = [[tableView selectedRowIndexes] firstIndex]; - if (idx == NSNotFound) + if (sender == tableView) + idx = [tableView clickedRow]; + if (idx == -1) + idx = [tableView selectedRow]; + if (idx == -1) return; info = [transitions objectAtIndex:idx]; + } else { + idx = 0; } if ([info transitionStyle] == SKNoTransition) return; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-24 14:39:07
|
Revision: 14476 http://sourceforge.net/p/skim-app/code/14476 Author: hofman Date: 2024-09-24 14:39:03 +0000 (Tue, 24 Sep 2024) Log Message: ----------- Move Preview button to top and make it an image button Modified Paths: -------------- trunk/Base.lproj/TransitionSheet.xib trunk/de.lproj/TransitionSheet.strings trunk/en.lproj/TransitionSheet.strings trunk/es.lproj/TransitionSheet.strings trunk/fr.lproj/TransitionSheet.strings trunk/it.lproj/TransitionSheet.strings trunk/ja.lproj/TransitionSheet.strings trunk/nl.lproj/TransitionSheet.strings trunk/pl.lproj/TransitionSheet.strings trunk/ru.lproj/TransitionSheet.strings trunk/zh_CN.lproj/TransitionSheet.strings trunk/zh_TW.lproj/TransitionSheet.strings Modified: trunk/Base.lproj/TransitionSheet.xib =================================================================== --- trunk/Base.lproj/TransitionSheet.xib 2024-09-24 14:11:10 UTC (rev 14475) +++ trunk/Base.lproj/TransitionSheet.xib 2024-09-24 14:39:03 UTC (rev 14476) @@ -13,7 +13,6 @@ <outlet property="cancelButton" destination="31" id="KWh-6S-Kx4"/> <outlet property="notesDocumentPopUpButton" destination="69" id="99"/> <outlet property="okButton" destination="27" id="vvD-TX-nTy"/> - <outlet property="previewButton" destination="aK4-To-cWd" id="tF5-hw-0eF"/> <outlet property="stylePopUpButton" destination="13" id="ckf-of-OsA"/> <outlet property="tableView" destination="279" id="287"/> <outlet property="tableWidthConstraint" destination="iKt-mE-odp" id="MPv-aK-lfF"/> @@ -394,18 +393,15 @@ <autoresizingMask key="autoresizingMask"/> </scroller> </scrollView> - <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="aK4-To-cWd"> - <rect key="frame" x="152" y="13" width="82" height="32"/> - <buttonCell key="cell" type="push" title="Preview" bezelStyle="rounded" alignment="center" borderStyle="border" inset="2" id="OOi-HR-fjj"> + <button toolTip="Preview" translatesAutoresizingMaskIntoConstraints="NO" id="pxs-bg-YUv"> + <rect key="frame" x="417" y="239" width="21.5" height="13"/> + <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="NSQuickLookTemplate" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" inset="2" id="E0O-Sq-w0l"> <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> <font key="font" metaFont="system"/> - <string key="keyEquivalent" base64-UTF8="YES"> -Gw -</string> </buttonCell> <connections> - <action selector="preview:" target="-2" id="On3-iX-X3z"/> - <binding destination="127" name="enabled" keyPath="selection.transitionStyle" id="4tH-Zh-Jx4"> + <action selector="preview:" target="-2" id="cKe-lQ-LNg"/> + <binding destination="127" name="enabled" keyPath="selection.transitionStyle" id="aa2-Qa-dvg"> <dictionary key="options"> <integer key="NSMultipleValuesPlaceholder" value="0"/> <integer key="NSNoSelectionPlaceholder" value="0"/> @@ -418,20 +414,19 @@ <constraint firstItem="67" firstAttribute="leading" secondItem="276" secondAttribute="trailing" constant="8" id="2rg-eT-ead"/> <constraint firstAttribute="bottom" secondItem="276" secondAttribute="bottom" constant="20" symbolic="YES" id="3T0-cp-NvT"/> <constraint firstItem="67" firstAttribute="top" secondItem="138" secondAttribute="bottom" constant="8" symbolic="YES" id="72r-F8-Uf4"/> - <constraint firstItem="31" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="aK4-To-cWd" secondAttribute="trailing" constant="12" symbolic="YES" id="8F4-F1-lLq"/> <constraint firstItem="138" firstAttribute="top" secondItem="8" secondAttribute="top" constant="20" symbolic="YES" id="GHg-dB-8ix"/> <constraint firstAttribute="bottom" secondItem="27" secondAttribute="bottom" constant="20" symbolic="YES" id="MIv-MP-aBB"/> <constraint firstItem="27" firstAttribute="leading" secondItem="31" secondAttribute="trailing" constant="12" symbolic="YES" id="NR2-CA-Nxl"/> - <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="138" secondAttribute="trailing" constant="20" symbolic="YES" id="RXf-TG-FCJ"/> <constraint firstItem="138" firstAttribute="leading" secondItem="67" secondAttribute="leading" id="UBr-68-Taj"/> + <constraint firstAttribute="trailing" secondItem="pxs-bg-YUv" secondAttribute="trailing" constant="20" symbolic="YES" id="Uly-Ma-CUU"/> <constraint firstItem="276" firstAttribute="top" secondItem="8" secondAttribute="top" constant="20" symbolic="YES" id="Wa7-gP-eSb"/> - <constraint firstItem="aK4-To-cWd" firstAttribute="firstBaseline" secondItem="27" secondAttribute="firstBaseline" id="Zzd-CJ-GmB"/> <constraint firstItem="27" firstAttribute="baseline" secondItem="31" secondAttribute="firstBaseline" id="brZ-zc-ukR"/> <constraint firstItem="27" firstAttribute="width" secondItem="31" secondAttribute="width" id="buf-gV-RCb"/> - <constraint firstItem="138" firstAttribute="leading" secondItem="aK4-To-cWd" secondAttribute="leading" id="diz-vs-P9p"/> <constraint firstAttribute="trailing" secondItem="67" secondAttribute="trailing" constant="20" symbolic="YES" id="eM0-LM-BFY"/> <constraint firstItem="68" firstAttribute="top" secondItem="67" secondAttribute="bottom" constant="8" symbolic="YES" id="f4s-ds-QZB"/> <constraint firstItem="67" firstAttribute="leading" secondItem="8" secondAttribute="leading" constant="159" id="m1r-zo-sbv"/> + <constraint firstItem="pxs-bg-YUv" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="138" secondAttribute="trailing" constant="8" symbolic="YES" id="soM-cY-JW3"/> + <constraint firstItem="138" firstAttribute="firstBaseline" secondItem="pxs-bg-YUv" secondAttribute="firstBaseline" id="twM-eD-8UF"/> <constraint firstItem="67" firstAttribute="leading" secondItem="68" secondAttribute="leading" id="v0Q-OP-dRP"/> <constraint firstItem="68" firstAttribute="trailing" secondItem="27" secondAttribute="trailing" id="wWN-IL-GxM"/> <constraint firstItem="27" firstAttribute="top" secondItem="68" secondAttribute="bottom" constant="20" symbolic="YES" id="wjE-G9-oeP"/> @@ -462,5 +457,6 @@ </objects> <resources> <image name="NSActionTemplate" width="15" height="15"/> + <image name="NSQuickLookTemplate" width="21" height="13"/> </resources> </document> Modified: trunk/de.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/en.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/es.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/fr.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/it.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/ja.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/nl.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/pl.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/ru.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/zh_CN.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/zh_TW.lproj/TransitionSheet.strings =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-24 14:11:12
|
Revision: 14475 http://sourceforge.net/p/skim-app/code/14475 Author: hofman Date: 2024-09-24 14:11:10 +0000 (Tue, 24 Sep 2024) Log Message: ----------- Enable Preview button using bindings Modified Paths: -------------- trunk/Base.lproj/TransitionSheet.xib trunk/SKPresentationOptionsSheetController.m Modified: trunk/Base.lproj/TransitionSheet.xib =================================================================== --- trunk/Base.lproj/TransitionSheet.xib 2024-09-23 20:53:42 UTC (rev 14474) +++ trunk/Base.lproj/TransitionSheet.xib 2024-09-24 14:11:10 UTC (rev 14475) @@ -405,6 +405,12 @@ </buttonCell> <connections> <action selector="preview:" target="-2" id="On3-iX-X3z"/> + <binding destination="127" name="enabled" keyPath="selection.transitionStyle" id="4tH-Zh-Jx4"> + <dictionary key="options"> + <integer key="NSMultipleValuesPlaceholder" value="0"/> + <integer key="NSNoSelectionPlaceholder" value="0"/> + </dictionary> + </binding> </connections> </button> </subviews> Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-23 20:53:42 UTC (rev 14474) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-24 14:11:10 UTC (rev 14475) @@ -140,15 +140,6 @@ [notesDocumentPopUpButton selectItemAtIndex:docIndex == -1 ? 0 : docIndex]; } -- (void)validatePreviewButton { - if (separate) { - NSInteger idx = [tableView selectedRow]; - [previewButton setEnabled:idx != -1 && [[transitions objectAtIndex:idx] transitionStyle] != SKNoTransition]; - } else { - [previewButton setEnabled:[transition transitionStyle] != SKNoTransition]; - } -} - - (void)windowDidLoad { // add the filter names to the popup NSUInteger i, count = [[SKTransitionController transitionNames] count]; @@ -194,8 +185,6 @@ [[self undoManager] enableUndoRegistration]; } - [self validatePreviewButton]; - // set the current notes document and observe changes for the popup [self handleDocumentsDidChangeNotification:nil]; NSDocument *currentDoc = [controller presentationNotesDocument]; @@ -385,8 +374,6 @@ } } [[[self undoManager] prepareWithInvocationTarget:self] setSeparate:separate == NO]; - - [self validatePreviewButton]; } } @@ -477,9 +464,6 @@ [changedTransitions addObject:object]; } - if ([keyPath isEqualToString:TRANSITIONSTYLE_KEY]) - [self validatePreviewButton]; - [[[self undoManager] prepareWithInvocationTarget:self] setValue:oldValue forKey:keyPath ofTransition:object]; } else { [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; @@ -559,10 +543,6 @@ return [tv makeViewWithIdentifier:[tableColumn identifier] owner:self]; } -- (void)tableViewSelectionDidChange:(NSNotification *)notification { - [self validatePreviewButton]; -} - - (id <SKImageToolTipContext>)tableView:(NSTableView *)tv imageContextForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row scale:(CGFloat *)scale { if ([[tableColumn identifier] isEqualToString:IMAGE_COLUMNID]) return [[controller pdfDocument] pageAtIndex:row]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-23 20:53:44
|
Revision: 14474 http://sourceforge.net/p/skim-app/code/14474 Author: hofman Date: 2024-09-23 20:53:42 +0000 (Mon, 23 Sep 2024) Log Message: ----------- Exclude some windows from windows menu. No need to set level of preview window. Modified Paths: -------------- trunk/SKApplication.m trunk/SKDownloadController.m trunk/SKPresentationOptionsSheetController.m Modified: trunk/SKApplication.m =================================================================== --- trunk/SKApplication.m 2024-09-23 16:03:13 UTC (rev 14473) +++ trunk/SKApplication.m 2024-09-23 20:53:42 UTC (rev 14474) @@ -42,7 +42,6 @@ #import "NSDocument_SKExtensions.h" #import "NSEvent_SKExtensions.h" #import "NSString_SKExtensions.h" -#import "SKDownloadController.h" #import "SKPreferenceController.h" NSString *SKApplicationStartsTerminatingNotification = @"SKApplicationStartsTerminatingNotification"; @@ -164,9 +163,6 @@ } - (void)addWindowsItem:(NSWindow *)aWindow title:(NSString *)aString filename:(BOOL)isFilename { - if ([[aWindow windowController] isKindOfClass:[SKDownloadController class]]) - return; - if ([[aWindow windowController] isKindOfClass:[SKPreferenceController class]]) aString = [NSLocalizedString(@"Preferences", @"Window description") stringByAppendingEmDashAndString:aString]; @@ -176,9 +172,6 @@ } - (void)changeWindowsItem:(NSWindow *)aWindow title:(NSString *)aString filename:(BOOL)isFilename { - if ([[aWindow windowController] isKindOfClass:[SKDownloadController class]]) - return; - if ([[aWindow windowController] isKindOfClass:[SKPreferenceController class]]) aString = [NSLocalizedString(@"Preferences", @"Window description") stringByAppendingEmDashAndString:aString]; Modified: trunk/SKDownloadController.m =================================================================== --- trunk/SKDownloadController.m 2024-09-23 16:03:13 UTC (rev 14473) +++ trunk/SKDownloadController.m 2024-09-23 20:53:42 UTC (rev 14474) @@ -147,6 +147,8 @@ [self setWindowFrameAutosaveName:SKDownloadsWindowFrameAutosaveName]; + [[self window] setExcludedFromWindowsMenu:YES]; + [tableView setTypeSelectHelper:[SKTypeSelectHelper typeSelectHelper]]; [tableView registerForDraggedTypes:@[(__bridge NSString *)kUTTypeURL, (__bridge NSString *)kUTTypeFileURL, NSURLPboardType, NSFilenamesPboardType, NSPasteboardTypeString]]; Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-23 16:03:13 UTC (rev 14473) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-23 20:53:42 UTC (rev 14474) @@ -295,6 +295,7 @@ previewWindow = [[NSWindow alloc] initWithContentRect:rect styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskFullSizeContentView backing:NSBackingStoreBuffered defer:NO]; [previewWindow setReleasedWhenClosed:NO]; [previewWindow setTitlebarAppearsTransparent:YES]; + [previewWindow setExcludedFromWindowsMenu:YES]; NSView *contentView = [previewWindow contentView]; @@ -332,7 +333,6 @@ [previewWindow setTitle:[SKTransitionController localizedNameForStyle:[info transitionStyle]]]; [previewWindow setFrame:rect display:NO]; [previewWindow center]; - [previewWindow setLevel:[[self window] level]]; [previewWindow makeKeyAndOrderFront:nil]; [previewView performSelector:@selector(goToNextPage:) withObject:nil afterDelay:1.0]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-23 16:03:15
|
Revision: 14473 http://sourceforge.net/p/skim-app/code/14473 Author: hofman Date: 2024-09-23 16:03:13 +0000 (Mon, 23 Sep 2024) Log Message: ----------- Separate display code for presentation view into intermediate superclass. Add a preview action to the presentation options sheet. Modified Paths: -------------- trunk/Base.lproj/TransitionSheet.xib trunk/SKPresentationOptionsSheetController.h trunk/SKPresentationOptionsSheetController.m trunk/SKPresentationView.h trunk/SKPresentationView.m trunk/SKTransitionController.h trunk/SKTransitionController.m trunk/de.lproj/TransitionSheet.strings trunk/en.lproj/TransitionSheet.strings trunk/es.lproj/TransitionSheet.strings trunk/fr.lproj/TransitionSheet.strings trunk/it.lproj/TransitionSheet.strings trunk/ja.lproj/TransitionSheet.strings trunk/nl.lproj/TransitionSheet.strings trunk/pl.lproj/TransitionSheet.strings trunk/ru.lproj/TransitionSheet.strings trunk/zh_CN.lproj/TransitionSheet.strings trunk/zh_TW.lproj/TransitionSheet.strings Modified: trunk/Base.lproj/TransitionSheet.xib =================================================================== --- trunk/Base.lproj/TransitionSheet.xib 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/Base.lproj/TransitionSheet.xib 2024-09-23 16:03:13 UTC (rev 14473) @@ -13,6 +13,7 @@ <outlet property="cancelButton" destination="31" id="KWh-6S-Kx4"/> <outlet property="notesDocumentPopUpButton" destination="69" id="99"/> <outlet property="okButton" destination="27" id="vvD-TX-nTy"/> + <outlet property="previewButton" destination="aK4-To-cWd" id="tF5-hw-0eF"/> <outlet property="stylePopUpButton" destination="13" id="ckf-of-OsA"/> <outlet property="tableView" destination="279" id="287"/> <outlet property="tableWidthConstraint" destination="iKt-mE-odp" id="MPv-aK-lfF"/> @@ -393,11 +394,25 @@ <autoresizingMask key="autoresizingMask"/> </scroller> </scrollView> + <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="aK4-To-cWd"> + <rect key="frame" x="152" y="13" width="82" height="32"/> + <buttonCell key="cell" type="push" title="Preview" bezelStyle="rounded" alignment="center" borderStyle="border" inset="2" id="OOi-HR-fjj"> + <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> + <font key="font" metaFont="system"/> + <string key="keyEquivalent" base64-UTF8="YES"> +Gw +</string> + </buttonCell> + <connections> + <action selector="preview:" target="-2" id="On3-iX-X3z"/> + </connections> + </button> </subviews> <constraints> <constraint firstItem="67" firstAttribute="leading" secondItem="276" secondAttribute="trailing" constant="8" id="2rg-eT-ead"/> <constraint firstAttribute="bottom" secondItem="276" secondAttribute="bottom" constant="20" symbolic="YES" id="3T0-cp-NvT"/> <constraint firstItem="67" firstAttribute="top" secondItem="138" secondAttribute="bottom" constant="8" symbolic="YES" id="72r-F8-Uf4"/> + <constraint firstItem="31" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="aK4-To-cWd" secondAttribute="trailing" constant="12" symbolic="YES" id="8F4-F1-lLq"/> <constraint firstItem="138" firstAttribute="top" secondItem="8" secondAttribute="top" constant="20" symbolic="YES" id="GHg-dB-8ix"/> <constraint firstAttribute="bottom" secondItem="27" secondAttribute="bottom" constant="20" symbolic="YES" id="MIv-MP-aBB"/> <constraint firstItem="27" firstAttribute="leading" secondItem="31" secondAttribute="trailing" constant="12" symbolic="YES" id="NR2-CA-Nxl"/> @@ -404,9 +419,10 @@ <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="138" secondAttribute="trailing" constant="20" symbolic="YES" id="RXf-TG-FCJ"/> <constraint firstItem="138" firstAttribute="leading" secondItem="67" secondAttribute="leading" id="UBr-68-Taj"/> <constraint firstItem="276" firstAttribute="top" secondItem="8" secondAttribute="top" constant="20" symbolic="YES" id="Wa7-gP-eSb"/> - <constraint firstItem="31" firstAttribute="baseline" secondItem="27" secondAttribute="baseline" id="ZTB-Ht-m3V"/> + <constraint firstItem="aK4-To-cWd" firstAttribute="firstBaseline" secondItem="27" secondAttribute="firstBaseline" id="Zzd-CJ-GmB"/> <constraint firstItem="27" firstAttribute="baseline" secondItem="31" secondAttribute="firstBaseline" id="brZ-zc-ukR"/> <constraint firstItem="27" firstAttribute="width" secondItem="31" secondAttribute="width" id="buf-gV-RCb"/> + <constraint firstItem="138" firstAttribute="leading" secondItem="aK4-To-cWd" secondAttribute="leading" id="diz-vs-P9p"/> <constraint firstAttribute="trailing" secondItem="67" secondAttribute="trailing" constant="20" symbolic="YES" id="eM0-LM-BFY"/> <constraint firstItem="68" firstAttribute="top" secondItem="67" secondAttribute="bottom" constant="8" symbolic="YES" id="f4s-ds-QZB"/> <constraint firstItem="67" firstAttribute="leading" secondItem="8" secondAttribute="leading" constant="159" id="m1r-zo-sbv"/> Modified: trunk/SKPresentationOptionsSheetController.h =================================================================== --- trunk/SKPresentationOptionsSheetController.h 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKPresentationOptionsSheetController.h 2024-09-23 16:03:13 UTC (rev 14473) @@ -42,7 +42,7 @@ NS_ASSUME_NONNULL_BEGIN -@class SKMainWindowController, SKThumbnail, SKTransitionInfo; +@class SKMainWindowController, SKThumbnail, SKTransitionInfo, SKPDFPageView; @interface SKPresentationOptionsSheetController : NSWindowController <NSWindowDelegate, SKTableViewDelegate, NSTableViewDataSource, NSTouchBarDelegate> { NSPopUpButton *notesDocumentPopUpButton; @@ -50,6 +50,7 @@ NSPopUpButton *stylePopUpButton; NSButton *okButton; NSButton *cancelButton; + NSButton *previewButton; NSLayoutConstraint *boxLeadingConstraint; NSLayoutConstraint *tableWidthConstraint; NSArrayController *arrayController; @@ -59,12 +60,14 @@ __weak SKMainWindowController *controller; NSUndoManager *undoManager; NSMutableSet<SKTransitionInfo *> *changedTransitions; + NSWindow *previewWindow; + SKPDFPageView *previewView; } @property (nonatomic, nullable, strong) IBOutlet NSPopUpButton *notesDocumentPopUpButton; @property (nonatomic, nullable, strong) IBOutlet SKTableView *tableView; @property (nonatomic, nullable, strong) IBOutlet NSPopUpButton *stylePopUpButton; -@property (nonatomic, nullable, strong) IBOutlet NSButton *okButton, *cancelButton; +@property (nonatomic, nullable, strong) IBOutlet NSButton *okButton, *cancelButton, *previewButton; @property (nonatomic, nullable, strong) IBOutlet NSLayoutConstraint *boxLeadingConstraint, *tableWidthConstraint; @property (nonatomic, nullable, strong) IBOutlet NSArrayController *arrayController; @property (nonatomic) BOOL separate; @@ -81,6 +84,8 @@ - (void)startObservingTransitions:(NSArray<SKTransitionInfo *> *)infos; - (void)stopObservingTransitions:(NSArray<SKTransitionInfo *> *)infos; +- (IBAction)preview:(nullable id)sender; + @end NS_ASSUME_NONNULL_END Modified: trunk/SKPresentationOptionsSheetController.m =================================================================== --- trunk/SKPresentationOptionsSheetController.m 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKPresentationOptionsSheetController.m 2024-09-23 16:03:13 UTC (rev 14473) @@ -52,6 +52,8 @@ #import "NSGraphics_SKExtensions.h" #import "NSColor_SKExtensions.h" #import "NSView_SKExtensions.h" +#import "SKPresentationView.h" +#import "SKAnimatedBorderlessWindow.h" #define PAGE_COLUMNID @"page" #define IMAGE_COLUMNID @"image" @@ -80,7 +82,7 @@ @implementation SKPresentationOptionsSheetController -@synthesize notesDocumentPopUpButton, tableView, stylePopUpButton, okButton, cancelButton, tableWidthConstraint, boxLeadingConstraint, arrayController, separate, transition, transitions, undoManager; +@synthesize notesDocumentPopUpButton, tableView, stylePopUpButton, okButton, cancelButton, previewButton, tableWidthConstraint, boxLeadingConstraint, arrayController, separate, transition, transitions, undoManager; @dynamic currentTransitions, pageTransitions, notesDocument, notesDocumentOffset; + (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key { @@ -138,6 +140,15 @@ [notesDocumentPopUpButton selectItemAtIndex:docIndex == -1 ? 0 : docIndex]; } +- (void)validatePreviewButton { + if (separate) { + NSInteger idx = [tableView selectedRow]; + [previewButton setEnabled:idx != -1 && [[transitions objectAtIndex:idx] transitionStyle] != SKNoTransition]; + } else { + [previewButton setEnabled:[transition transitionStyle] != SKNoTransition]; + } +} + - (void)windowDidLoad { // add the filter names to the popup NSUInteger i, count = [[SKTransitionController transitionNames] count]; @@ -183,6 +194,8 @@ [[self undoManager] enableUndoRegistration]; } + [self validatePreviewButton]; + // set the current notes document and observe changes for the popup [self handleDocumentsDidChangeNotification:nil]; NSDocument *currentDoc = [controller presentationNotesDocument]; @@ -262,6 +275,70 @@ } } +- (void)preview:(id)sender { + SKTransitionInfo *info = transition; + NSUInteger idx = 0; + if (separate) { + idx = [[tableView selectedRowIndexes] firstIndex]; + if (idx == NSNotFound) + return; + info = [transitions objectAtIndex:idx]; + } + if ([info transitionStyle] == SKNoTransition) + return; + + NSRect rect = [[[self window] screen] frame]; + rect.size.width = round(0.5 * NSWidth(rect)) + 12.0; + rect.size.height = round(0.5 * NSHeight(rect)) + 30.0; + + if (previewWindow == nil) { + previewWindow = [[NSWindow alloc] initWithContentRect:rect styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskFullSizeContentView backing:NSBackingStoreBuffered defer:NO]; + [previewWindow setReleasedWhenClosed:NO]; + [previewWindow setTitlebarAppearsTransparent:YES]; + + NSView *contentView = [previewWindow contentView]; + + NSVisualEffectView *veView = [[NSVisualEffectView alloc] init]; + [veView setMaterial:NSVisualEffectMaterialPopover]; + [veView setState:NSVisualEffectStateActive]; + [veView setBlendingMode:NSVisualEffectBlendingModeBehindWindow]; + [veView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [contentView addSubviewWithConstraints:veView]; + + NSView *bgView = [[NSView alloc] init]; + CALayer *layer = [CALayer layer]; + [layer setBackgroundColor:CGColorGetConstantColor(kCGColorBlack)]; + [layer setCornerRadius:6.0]; + [bgView setLayer:layer]; + [bgView setWantsLayer:YES]; + [bgView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [contentView addSubview:bgView]; + NSArray *constraints = @[ + [[bgView leadingAnchor] constraintEqualToAnchor:[contentView leadingAnchor] constant:6.0], + [[contentView trailingAnchor] constraintEqualToAnchor:[bgView trailingAnchor] constant:6.0], + [[bgView topAnchor] constraintEqualToAnchor:[contentView topAnchor] constant:24.0], + [[contentView bottomAnchor] constraintEqualToAnchor:[bgView bottomAnchor] constant:6.0]]; + [NSLayoutConstraint activateConstraints:constraints]; + + previewView = [[SKPDFPageView alloc] init]; + [previewView setTransitionController:[[SKTransitionController alloc] init]]; + [[previewView transitionController] setShouldScale:YES]; + [bgView addSubviewWithConstraints:previewView]; + } + + [previewView setPage:[[controller pdfDocument] pageAtIndex:idx]]; + [[previewView transitionController] setTransition:info]; + + [previewWindow setTitle:[SKTransitionController localizedNameForStyle:[info transitionStyle]]]; + [previewWindow setFrame:rect display:NO]; + [previewWindow center]; + [previewWindow setLevel:[[self window] level]]; + [previewWindow makeKeyAndOrderFront:nil]; + + [previewView performSelector:@selector(goToNextPage:) withObject:nil afterDelay:1.0]; + [previewWindow performSelector:@selector(orderOut:) withObject:nil afterDelay:2.0 + [info duration]]; +} + - (void)setSeparate:(BOOL)newSeparate { if (separate != newSeparate) { separate = newSeparate; @@ -308,6 +385,8 @@ } } [[[self undoManager] prepareWithInvocationTarget:self] setSeparate:separate == NO]; + + [self validatePreviewButton]; } } @@ -398,6 +477,9 @@ [changedTransitions addObject:object]; } + if ([keyPath isEqualToString:TRANSITIONSTYLE_KEY]) + [self validatePreviewButton]; + [[[self undoManager] prepareWithInvocationTarget:self] setValue:oldValue forKey:keyPath ofTransition:object]; } else { [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; @@ -477,6 +559,10 @@ return [tv makeViewWithIdentifier:[tableColumn identifier] owner:self]; } +- (void)tableViewSelectionDidChange:(NSNotification *)notification { + [self validatePreviewButton]; +} + - (id <SKImageToolTipContext>)tableView:(NSTableView *)tv imageContextForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row scale:(CGFloat *)scale { if ([[tableColumn identifier] isEqualToString:IMAGE_COLUMNID]) return [[controller pdfDocument] pageAtIndex:row]; Modified: trunk/SKPresentationView.h =================================================================== --- trunk/SKPresentationView.h 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKPresentationView.h 2024-09-23 16:03:13 UTC (rev 14473) @@ -45,10 +45,24 @@ @class PDFPage, SKTransitionController, SKNavigationWindow, SKCursorStyleWindow; -@interface SKPresentationView : NSView { +@interface SKPDFPageView : NSView { NSView *pageView; PDFPage *page; SKTransitionController *transitionController; +} + +@property (nonatomic, nullable, strong) PDFPage *page; + +@property (nonatomic, nullable, strong) SKTransitionController *transitionController; + +- (void)goToNextPage:(nullable id)sender; +- (void)goToPreviousPage:(nullable id)sender; + +@end + +#pragma mark - + +@interface SKPresentationView : SKPDFPageView { SKNavigationWindow *navWindow; SKCursorStyleWindow *cursorWindow; NSInteger laserPointerColor; @@ -66,8 +80,6 @@ } -@property (nonatomic, nullable, strong) PDFPage *page; - @property (nonatomic) BOOL autoScales; @property (nonatomic) BOOL canGoToNextPage; @@ -81,10 +93,6 @@ @property (nonatomic) BOOL removeCursorShadow; @property (nonatomic) BOOL drawInPresentation; -@property (nonatomic, nullable, strong) SKTransitionController *transitionController; - -- (void)goToNextPage:(nullable id)sender; -- (void)goToPreviousPage:(nullable id)sender; - (void)goToFirstPage:(nullable id)sender; - (void)goToLastPage:(nullable id)sender; Modified: trunk/SKPresentationView.m =================================================================== --- trunk/SKPresentationView.m 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKPresentationView.m 2024-09-23 16:03:13 UTC (rev 14473) @@ -78,30 +78,13 @@ static NSInteger navigationMode = SKNavigationBottom; -@interface SKPresentationView () <CALayerDelegate> - -- (void)setCursorForMouse:(NSEvent *)theEvent; -- (void)setCursorAndAutoHide; -- (void)doAutoHideCursor; -- (void)doAutoHide; -- (void)showNavWindow; - -- (void)doDragWindowWithEvent:(NSEvent *)theEvent; -- (void)doDrawFreehandNoteWithEvent:(NSEvent *)theEvent; -- (void)showHelpMenu; - +@interface SKPDFPageView () <CALayerDelegate> @end -@implementation SKPresentationView +@implementation SKPDFPageView @synthesize page, transitionController; -@dynamic autoScales, canGoToNextPage, canGoToPreviousPage, canGoToFirstPage, canGoToLastPage, cursorStyle, hasBlackout, removeCursorShadow, drawInPresentation; -+ (void)initialize { - SKINITIALIZE; - navigationMode = [[NSUserDefaults standardUserDefaults] integerForKey:SKPresentationNavigationOptionKey]; -} - static inline NSArray *defaultKeysToObserve() { if (@available(macOS 10.14, *)) return @[SKInvertColorsInDarkModeKey, SKSepiaToneKey, SKWhitePointKey]; @@ -112,12 +95,6 @@ - (instancetype)initWithFrame:(NSRect)frameRect { self = [super initWithFrame:frameRect]; if (self) { - pvFlags.autoScales = YES; - pvFlags.cursorHidden = NO; - pvFlags.useArrowCursor = [[NSUserDefaults standardUserDefaults] boolForKey:SKUseArrowCursorInPresentationKey]; - pvFlags.removeLaserPointerShadow = [[NSUserDefaults standardUserDefaults] boolForKey:SKRemoveLaserPointerShadowKey]; - pvFlags.enableDrawing = NO == [[NSUserDefaults standardUserDefaults] boolForKey:SKDisableDrawingInPresentationKey]; - page = nil; CALayer *layer = [CALayer layer]; @@ -134,8 +111,6 @@ [self setTranslatesAutoresizingMaskIntoConstraints:NO]; - [self addTrackingArea:[[NSTrackingArea alloc] initWithRect:NSZeroRect options:NSTrackingMouseMoved | NSTrackingMouseEnteredAndExited | NSTrackingActiveInKeyWindow | NSTrackingInVisibleRect owner:self userInfo:nil]]; - NSUserDefaults *sud = [NSUserDefaults standardUserDefaults]; for (NSString *key in defaultKeysToObserve()) [sud addObserver:self forKeyPath:key options:0 context:&SKPresentationViewDefaultsObservationContext]; @@ -167,10 +142,6 @@ #pragma mark Accessors -- (BOOL)canBecomeKeyView { - return YES; -} - - (void)setNeedsDisplay:(BOOL)needsDisplay { [super setNeedsDisplay:needsDisplay]; [pageView setNeedsDisplay:needsDisplay]; @@ -181,18 +152,6 @@ [pageView setNeedsDisplay:YES]; } -- (BOOL)autoScales { - return pvFlags.autoScales; -} - -- (void)setAutoScales:(BOOL)flag { - if (flag != pvFlags.autoScales) { - pvFlags.autoScales = flag; - [pageView setNeedsDisplay:YES]; - [[NSNotificationCenter defaultCenter] postNotificationName:SKPresentationViewAutoScalesChangedNotification object:self]; - } -} - - (void)setPage:(PDFPage *)newPage { if (newPage != page) { page = newPage; @@ -201,9 +160,7 @@ } } -- (BOOL)hasBlackout { - return [pageView alphaValue] <= 0.0; -} +- (BOOL)autoScales { return YES; } - (void)setTransitionController:(SKTransitionController *)newTransitionController { if (newTransitionController != transitionController) { @@ -213,42 +170,14 @@ } } -- (BOOL)canGoToNextPage { - return [page pageIndex] + 1 < [[page document] pageCount]; -} +#pragma mark Action -- (BOOL)canGoToPreviousPage { - return [page pageIndex] > 0; -} - -- (BOOL)canGoToFirstPage { - return [page pageIndex] > 0; -} - -- (BOOL)canGoToLastPage { - return [page pageIndex] + 1 < [[page document] pageCount]; -} - -- (NSInteger)cursorStyle { - return pvFlags.useArrowCursor ? -1 : laserPointerColor; -} - -- (BOOL)removeCursorShadow { - return pvFlags.removeLaserPointerShadow; -} - -- (BOOL)drawInPresentation { - return pvFlags.enableDrawing; -} - -#pragma mark Actions - - (NSRect)pageRect { NSRect bounds = [self bounds]; NSRect pageRect = [page boundsForBox:kPDFDisplayBoxCropBox]; if (([page rotation] % 180) != 0) pageRect = NSMakeRect(0.0, 0.0, NSHeight(pageRect), NSWidth(pageRect)); - CGFloat scale = pvFlags.autoScales ? fmin(NSHeight(bounds) / NSHeight(pageRect), NSWidth(bounds) / NSWidth(pageRect)) : 1.0; + CGFloat scale = [self autoScales] ? fmin(NSHeight(bounds) / NSHeight(pageRect), NSWidth(bounds) / NSWidth(pageRect)) : 1.0; return NSInsetRect(bounds, 0.5 * (NSWidth(bounds) - scale * NSWidth(pageRect)), 0.5 * (NSHeight(bounds) - scale * NSHeight(pageRect))); } @@ -287,6 +216,126 @@ } } +#pragma mark CALayer delegate + +- (void)drawLayer:(CALayer *)aLayer inContext:(CGContextRef)context { + if (page == nil) + return; + NSRect bounds = [self bounds]; + NSRect pageRect = [page boundsForBox:kPDFDisplayBoxCropBox]; + if (([page rotation] % 180) != 0) + pageRect = NSMakeRect(0.0, 0.0, NSHeight(pageRect), NSWidth(pageRect)); + CGFloat scale = [self autoScales] ? fmin(NSHeight(bounds) / NSHeight(pageRect), NSWidth(bounds) / NSWidth(pageRect)) : 1.0; + pageRect = NSInsetRect(bounds, 0.5 * (NSWidth(bounds) - scale * NSWidth(pageRect)), 0.5 * (NSHeight(bounds) - scale * NSHeight(pageRect))); + CGContextSaveGState(context); + CGContextSetFillColorWithColor(context, CGColorGetConstantColor(kCGColorWhite)); + CGContextFillRect(context, SKPixelAlignedRect(NSRectToCGRect(pageRect), context)); + CGContextRestoreGState(context); + CGContextSaveGState(context); + CGContextSetInterpolationQuality(context, [[NSUserDefaults standardUserDefaults] integerForKey:SKInterpolationQualityKey] + 1); + CGContextTranslateCTM(context, NSMinX(pageRect), NSMinY(pageRect)); + CGContextScaleCTM(context, scale, scale); + [page drawWithBox:kPDFDisplayBoxCropBox toContext:context]; + CGContextRestoreGState(context); +} + +- (BOOL)layer:(CALayer *)aLayer shouldInheritContentsScale:(CGFloat)newScale fromWindow:(NSWindow *)window { + return YES; +} + +@end + +#pragma mark - + +@interface SKPresentationView () + +- (void)setCursorForMouse:(NSEvent *)theEvent; +- (void)setCursorAndAutoHide; +- (void)doAutoHideCursor; +- (void)doAutoHide; +- (void)showNavWindow; + +- (void)doDragWindowWithEvent:(NSEvent *)theEvent; +- (void)doDrawFreehandNoteWithEvent:(NSEvent *)theEvent; +- (void)showHelpMenu; + +@end + +@implementation SKPresentationView + +@dynamic autoScales, canGoToNextPage, canGoToPreviousPage, canGoToFirstPage, canGoToLastPage, cursorStyle, hasBlackout, removeCursorShadow, drawInPresentation; + ++ (void)initialize { + SKINITIALIZE; + navigationMode = [[NSUserDefaults standardUserDefaults] integerForKey:SKPresentationNavigationOptionKey]; +} + +- (instancetype)initWithFrame:(NSRect)frameRect { + self = [super initWithFrame:frameRect]; + if (self) { + pvFlags.autoScales = YES; + pvFlags.cursorHidden = NO; + pvFlags.useArrowCursor = [[NSUserDefaults standardUserDefaults] boolForKey:SKUseArrowCursorInPresentationKey]; + pvFlags.removeLaserPointerShadow = [[NSUserDefaults standardUserDefaults] boolForKey:SKRemoveLaserPointerShadowKey]; + pvFlags.enableDrawing = NO == [[NSUserDefaults standardUserDefaults] boolForKey:SKDisableDrawingInPresentationKey]; + + [self addTrackingArea:[[NSTrackingArea alloc] initWithRect:NSZeroRect options:NSTrackingMouseMoved | NSTrackingMouseEnteredAndExited | NSTrackingActiveInKeyWindow | NSTrackingInVisibleRect owner:self userInfo:nil]]; + } + return self; +} + +#pragma mark Accessors + +- (BOOL)canBecomeKeyView { + return YES; +} + +- (BOOL)autoScales { + return pvFlags.autoScales; +} + +- (void)setAutoScales:(BOOL)flag { + if (flag != pvFlags.autoScales) { + pvFlags.autoScales = flag; + [pageView setNeedsDisplay:YES]; + [[NSNotificationCenter defaultCenter] postNotificationName:SKPresentationViewAutoScalesChangedNotification object:self]; + } +} + +- (BOOL)hasBlackout { + return [pageView alphaValue] <= 0.0; +} + +- (BOOL)canGoToNextPage { + return [page pageIndex] + 1 < [[page document] pageCount]; +} + +- (BOOL)canGoToPreviousPage { + return [page pageIndex] > 0; +} + +- (BOOL)canGoToFirstPage { + return [page pageIndex] > 0; +} + +- (BOOL)canGoToLastPage { + return [page pageIndex] + 1 < [[page document] pageCount]; +} + +- (NSInteger)cursorStyle { + return pvFlags.useArrowCursor ? -1 : laserPointerColor; +} + +- (BOOL)removeCursorShadow { + return pvFlags.removeLaserPointerShadow; +} + +- (BOOL)drawInPresentation { + return pvFlags.enableDrawing; +} + +#pragma mark Actions + - (void)goToFirstPage:(id)sender { PDFDocument *pdfDoc = [page document]; NSUInteger idx = [page pageIndex]; @@ -364,7 +413,7 @@ - (BOOL)validateMenuItem:(NSMenuItem *)menuItem { if ([menuItem action] == @selector(goToNextPage:)) return [self canGoToNextPage]; - else if ([menuItem action] == @selector(goToPrerviousPage:)) + else if ([menuItem action] == @selector(goToPreviousPage:)) return [self canGoToPreviousPage]; else if ([menuItem action] == @selector(goToFirstPage:)) return [self canGoToFirstPage]; @@ -847,31 +896,4 @@ [super viewDidMoveToWindow]; } -#pragma mark CALayer delegate - -- (void)drawLayer:(CALayer *)aLayer inContext:(CGContextRef)context { - if (page == nil) - return; - NSRect bounds = [self bounds]; - NSRect pageRect = [page boundsForBox:kPDFDisplayBoxCropBox]; - if (([page rotation] % 180) != 0) - pageRect = NSMakeRect(0.0, 0.0, NSHeight(pageRect), NSWidth(pageRect)); - CGFloat scale = pvFlags.autoScales ? fmin(NSHeight(bounds) / NSHeight(pageRect), NSWidth(bounds) / NSWidth(pageRect)) : 1.0; - pageRect = NSInsetRect(bounds, 0.5 * (NSWidth(bounds) - scale * NSWidth(pageRect)), 0.5 * (NSHeight(bounds) - scale * NSHeight(pageRect))); - CGContextSaveGState(context); - CGContextSetFillColorWithColor(context, CGColorGetConstantColor(kCGColorWhite)); - CGContextFillRect(context, SKPixelAlignedRect(NSRectToCGRect(pageRect), context)); - CGContextRestoreGState(context); - CGContextSaveGState(context); - CGContextSetInterpolationQuality(context, [[NSUserDefaults standardUserDefaults] integerForKey:SKInterpolationQualityKey] + 1); - CGContextTranslateCTM(context, NSMinX(pageRect), NSMinY(pageRect)); - CGContextScaleCTM(context, scale, scale); - [page drawWithBox:kPDFDisplayBoxCropBox toContext:context]; - CGContextRestoreGState(context); -} - -- (BOOL)layer:(CALayer *)aLayer shouldInheritContentsScale:(CGFloat)newScale fromWindow:(NSWindow *)window { - return YES; -} - @end Modified: trunk/SKTransitionController.h =================================================================== --- trunk/SKTransitionController.h 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKTransitionController.h 2024-09-23 16:03:13 UTC (rev 14473) @@ -48,6 +48,7 @@ NSWindow *window; __weak NSView *view; BOOL animating; + BOOL shouldScale; SKTransitionInfo *transition; NSArray<NSDictionary<NSString *, id> *> *pageTransitions; @@ -59,6 +60,8 @@ @property (class, nonatomic, readonly) NSArray<NSString *> *transitionNames; +@property (nonatomic) BOOL shouldScale; + + (NSString *)nameForStyle:(SKTransitionStyle)style; + (SKTransitionStyle)styleForName:(NSString *)name; Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-23 15:59:17 UTC (rev 14472) +++ trunk/SKTransitionController.m 2024-09-23 16:03:13 UTC (rev 14473) @@ -158,7 +158,7 @@ @implementation SKTransitionController -@synthesize view, transition, pageTransitions; +@synthesize view, transition, pageTransitions, shouldScale; static NSDictionary *oldStyleNames = nil; @@ -445,10 +445,11 @@ CGRect cgBounds = scaleRect(bounds, imageScale); CGRect extent = [currentTransition shouldRestrict] ? cgRect : cgBounds; NSString *filterName = [[self class] nameForStyle:[currentTransition transitionStyle]]; + CGFloat scale = shouldScale ? imageScale * NSHeight(bounds) / NSHeight([[[view window] screen] frame]) : imageScale; CIFilter *transitionFilter = [self transitionFilterWithName:filterName rect:cgRect extent:extent - scale:imageScale + scale:scale forward:toIndex >= fromIndex initialImage:initialImage finalImage:finalImage]; Modified: trunk/de.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/en.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/es.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/fr.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/it.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/ja.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/nl.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/pl.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/ru.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/zh_CN.lproj/TransitionSheet.strings =================================================================== (Binary files differ) Modified: trunk/zh_TW.lproj/TransitionSheet.strings =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-23 15:59:18
|
Revision: 14472 http://sourceforge.net/p/skim-app/code/14472 Author: hofman Date: 2024-09-23 15:59:17 +0000 (Mon, 23 Sep 2024) Log Message: ----------- fix file reference for russian TransitionSheet localization in project file Modified Paths: -------------- trunk/Skim.xcodeproj/project.pbxproj Modified: trunk/Skim.xcodeproj/project.pbxproj =================================================================== --- trunk/Skim.xcodeproj/project.pbxproj 2024-09-23 15:41:23 UTC (rev 14471) +++ trunk/Skim.xcodeproj/project.pbxproj 2024-09-23 15:59:17 UTC (rev 14472) @@ -1154,7 +1154,6 @@ CEB540460F261D1700723C1F /* zh_TW */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = zh_TW; path = zh_TW.lproj/ZoomValues.strings; sourceTree = "<group>"; }; CEB72B890C4A189D000350F9 /* SKTransitionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SKTransitionController.h; sourceTree = "<group>"; }; CEB735A10C4A8CD6000350F9 /* TransitionShading.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = TransitionShading.tiff; sourceTree = "<group>"; }; - CEB9A5282CA1C33F004C3661 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/TransitionSheet.strings; sourceTree = "<group>"; }; CEBC0DDB2791C607008686E8 /* NSObject_SKExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSObject_SKExtensions.h; sourceTree = "<group>"; }; CEBC0DDC2791C607008686E8 /* NSObject_SKExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObject_SKExtensions.m; sourceTree = "<group>"; }; CEBCA4BE2868A93A00E6376E /* SKLine.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SKLine.h; sourceTree = "<group>"; }; @@ -3490,10 +3489,10 @@ CEF60DD1114C0E8E0074ACC4 /* it */, CEF60DFD114C0EC10074ACC4 /* es */, CEF877551190593E006436A2 /* pl */, + CEF60DE7114C0EA80074ACC4 /* ru */, CE157EEF12D4EBC100515B85 /* ja */, CE1632BF1582AC6A00CFF419 /* zh_CN */, CEF60E13114C0ED70074ACC4 /* zh_TW */, - CEB9A5282CA1C33F004C3661 /* ru */, ); name = TransitionSheet.strings; sourceTree = "<group>"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-23 15:41:26
|
Revision: 14471 http://sourceforge.net/p/skim-app/code/14471 Author: hofman Date: 2024-09-23 15:41:23 +0000 (Mon, 23 Sep 2024) Log Message: ----------- add back russian localization for TransitionSheet Modified Paths: -------------- trunk/Skim.xcodeproj/project.pbxproj Modified: trunk/Skim.xcodeproj/project.pbxproj =================================================================== --- trunk/Skim.xcodeproj/project.pbxproj 2024-09-23 15:28:46 UTC (rev 14470) +++ trunk/Skim.xcodeproj/project.pbxproj 2024-09-23 15:41:23 UTC (rev 14471) @@ -1154,6 +1154,7 @@ CEB540460F261D1700723C1F /* zh_TW */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = zh_TW; path = zh_TW.lproj/ZoomValues.strings; sourceTree = "<group>"; }; CEB72B890C4A189D000350F9 /* SKTransitionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SKTransitionController.h; sourceTree = "<group>"; }; CEB735A10C4A8CD6000350F9 /* TransitionShading.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = TransitionShading.tiff; sourceTree = "<group>"; }; + CEB9A5282CA1C33F004C3661 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/TransitionSheet.strings; sourceTree = "<group>"; }; CEBC0DDB2791C607008686E8 /* NSObject_SKExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSObject_SKExtensions.h; sourceTree = "<group>"; }; CEBC0DDC2791C607008686E8 /* NSObject_SKExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSObject_SKExtensions.m; sourceTree = "<group>"; }; CEBCA4BE2868A93A00E6376E /* SKLine.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SKLine.h; sourceTree = "<group>"; }; @@ -3492,6 +3493,7 @@ CE157EEF12D4EBC100515B85 /* ja */, CE1632BF1582AC6A00CFF419 /* zh_CN */, CEF60E13114C0ED70074ACC4 /* zh_TW */, + CEB9A5282CA1C33F004C3661 /* ru */, ); name = TransitionSheet.strings; sourceTree = "<group>"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-23 15:28:47
|
Revision: 14470 http://sourceforge.net/p/skim-app/code/14470 Author: hofman Date: 2024-09-23 15:28:46 +0000 (Mon, 23 Sep 2024) Log Message: ----------- fix initializing varibale Modified Paths: -------------- trunk/SKMainWindowController_FullScreen.m Modified: trunk/SKMainWindowController_FullScreen.m =================================================================== --- trunk/SKMainWindowController_FullScreen.m 2024-09-22 16:48:33 UTC (rev 14469) +++ trunk/SKMainWindowController_FullScreen.m 2024-09-23 15:28:46 UTC (rev 14470) @@ -288,7 +288,7 @@ if ([self presentationNotesDocument]) { PDFDocument *pdfDoc = [[self presentationNotesDocument] pdfDocument]; NSInteger offset = [self presentationNotesOffset]; - NSUInteger pageIndex = (NSUInteger)MAX(0, MIN((NSInteger)[pdfDoc pageCount], (NSInteger)pageIndex + offset)); + NSUInteger pageIndex = (NSUInteger)MAX(0, MIN((NSInteger)[pdfDoc pageCount], (NSInteger)[[pdfView currentPage] pageIndex] + offset)); if ([self presentationNotesDocument] == [self document]) [[presentationPreview pdfView] goToCurrentPage:[pdfDoc pageAtIndex:pageIndex]]; else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 16:48:34
|
Revision: 14469 http://sourceforge.net/p/skim-app/code/14469 Author: hofman Date: 2024-09-22 16:48:33 +0000 (Sun, 22 Sep 2024) Log Message: ----------- Don't scale nil value Modified Paths: -------------- trunk/SKTransitionController.m Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-22 16:45:21 UTC (rev 14468) +++ trunk/SKTransitionController.m 2024-09-22 16:48:33 UTC (rev 14469) @@ -313,6 +313,7 @@ else if ([[NSSet setWithObjects:@"inputForward", @"inputLeft", nil] containsObject:key]) value = [NSNumber numberWithBool:forward]; } else if ([type isEqualToString:kCIAttributeTypeDistance]) { + if ([transitionFilter valueForKey:key] == nil) continue; CGFloat width = [[transitionFilter valueForKey:key] doubleValue]; value = [NSNumber numberWithDouble:scale * width]; } else if ([type isEqualToString:kCIAttributeTypePosition]) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 16:45:23
|
Revision: 14468 http://sourceforge.net/p/skim-app/code/14468 Author: hofman Date: 2024-09-22 16:45:21 +0000 (Sun, 22 Sep 2024) Log Message: ----------- don't pass transitioninfo object to transition filter method Modified Paths: -------------- trunk/SKTransitionController.m Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-22 16:06:04 UTC (rev 14467) +++ trunk/SKTransitionController.m 2024-09-22 16:45:21 UTC (rev 14468) @@ -279,9 +279,8 @@ } // rect and bounds are in pixels -- (CIFilter *)transitionFilterForTransition:(SKTransitionInfo *)info rect:(CGRect)rect bounds:(CGRect)bounds scale:(CGFloat)scale forward:(BOOL)forward initialImage:(CIImage *)initialImage finalImage:(CIImage *)finalImage { - NSString *filterName = [[self class] nameForStyle:[info transitionStyle]]; - CIFilter *transitionFilter = [CIFilter filterWithName:filterName]; +- (CIFilter *)transitionFilterWithName:(NSString *)name rect:(CGRect)rect extent:(CGRect)extent scale:(CGFloat)scale forward:(BOOL)forward initialImage:(CIImage *)initialImage finalImage:(CIImage *)finalImage { + CIFilter *transitionFilter = [CIFilter filterWithName:name]; [transitionFilter setDefaults]; @@ -289,11 +288,10 @@ id value = nil; NSString *type = [[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeType]; if ([key isEqualToString:kCIInputExtentKey]) { - CGRect extent = [info shouldRestrict] ? rect : bounds; value = [CIVector vectorWithCGRect:extent]; } else if ([key isEqualToString:kCIInputAngleKey]) { CGFloat angle = forward ? 0.0 : M_PI; - if ([filterName hasPrefix:@"CIPageCurl"]) + if ([name hasPrefix:@"CIPageCurl"]) angle = forward ? -M_PI_4 : -3.0 * M_PI_4; value = [NSNumber numberWithDouble:angle]; } else if ([key isEqualToString:kCIInputCenterKey]) { @@ -330,15 +328,15 @@ static CIImage *inputMaskImage = nil; if (inputMaskImage == nil) inputMaskImage = [[CIImage alloc] initWithContentsOfURL:[[NSBundle mainBundle] URLForResource:@"TransitionMask" withExtension:@"jpg"]]; - CGRect extent = [inputMaskImage extent]; + CGRect maskExtent = [inputMaskImage extent]; CGAffineTransform transform; - if ((CGRectGetWidth(extent) < CGRectGetHeight(extent)) != (CGRectGetWidth(rect) < CGRectGetHeight(rect))) { + if ((CGRectGetWidth(maskExtent) < CGRectGetHeight(maskExtent)) != (CGRectGetWidth(rect) < CGRectGetHeight(rect))) { transform = CGAffineTransformMake(0.0, 1.0, 1.0, 0.0, 0.0, 0.0); - transform = CGAffineTransformTranslate(transform, CGRectGetMinY(rect) - CGRectGetMinY(bounds), CGRectGetMinX(rect) - CGRectGetMinX(bounds)); - transform = CGAffineTransformScale(transform, CGRectGetHeight(rect) / CGRectGetWidth(extent), CGRectGetWidth(rect) / CGRectGetHeight(extent)); + transform = CGAffineTransformTranslate(transform, CGRectGetMinY(rect), CGRectGetMinX(rect)); + transform = CGAffineTransformScale(transform, CGRectGetHeight(rect) / CGRectGetWidth(maskExtent), CGRectGetWidth(rect) / CGRectGetHeight(maskExtent)); } else { - transform = CGAffineTransformMakeTranslation(CGRectGetMinX(rect) - CGRectGetMinX(bounds), CGRectGetMinY(rect) - CGRectGetMinY(bounds)); - transform = CGAffineTransformScale(transform, CGRectGetWidth(rect) / CGRectGetWidth(extent), CGRectGetHeight(rect) / CGRectGetHeight(extent)); + transform = CGAffineTransformMakeTranslation(CGRectGetMinX(rect), CGRectGetMinY(rect)); + transform = CGAffineTransformScale(transform, CGRectGetWidth(rect) / CGRectGetWidth(maskExtent), CGRectGetHeight(rect) / CGRectGetHeight(maskExtent)); } value = [inputMaskImage imageByApplyingTransform:transform]; } else continue; @@ -444,13 +442,15 @@ CIImage *finalImage = [self currentImageForRect:toRect scale:&imageScale]; CGRect cgRect = CGRectIntegral(scaleRect(NSIntersectionRect(NSUnionRect(rect, toRect), bounds), imageScale)); CGRect cgBounds = scaleRect(bounds, imageScale); - CIFilter *transitionFilter = [self transitionFilterForTransition:currentTransition - rect:cgRect - bounds:cgBounds - scale:imageScale - forward:toIndex >= fromIndex - initialImage:initialImage - finalImage:finalImage]; + CGRect extent = [currentTransition shouldRestrict] ? cgRect : cgBounds; + NSString *filterName = [[self class] nameForStyle:[currentTransition transitionStyle]]; + CIFilter *transitionFilter = [self transitionFilterWithName:filterName + rect:cgRect + extent:extent + scale:imageScale + forward:toIndex >= fromIndex + initialImage:initialImage + finalImage:finalImage]; [self showTransitionViewForRect:bounds image:initialImage extent:cgBounds]; // Update the view and its window, so it shows the correct state when it is shown. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 16:06:06
|
Revision: 14467 http://sourceforge.net/p/skim-app/code/14467 Author: hofman Date: 2024-09-22 16:06:04 +0000 (Sun, 22 Sep 2024) Log Message: ----------- Scale position and rectangle default attribute values for transition filters Modified Paths: -------------- trunk/SKTransitionController.m Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-22 15:29:35 UTC (rev 14466) +++ trunk/SKTransitionController.m 2024-09-22 16:06:04 UTC (rev 14467) @@ -287,6 +287,7 @@ for (NSString *key in [transitionFilter inputKeys]) { id value = nil; + NSString *type = [[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeType]; if ([key isEqualToString:kCIInputExtentKey]) { CGRect extent = [info shouldRestrict] ? rect : bounds; value = [CIVector vectorWithCGRect:extent]; @@ -308,15 +309,23 @@ value = inputShadingImage; } else if ([key isEqualToString:kCIInputBacksideImageKey]) { value = initialImage; - } else if ([[[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeType] isEqualToString:kCIAttributeTypeBoolean]) { + } else if ([type isEqualToString:kCIAttributeTypeBoolean]) { if ([[NSSet setWithObjects:@"inputBackward", @"inputRight", @"inputReversed", nil] containsObject:key]) value = [NSNumber numberWithBool:forward == NO]; else if ([[NSSet setWithObjects:@"inputForward", @"inputLeft", nil] containsObject:key]) value = [NSNumber numberWithBool:forward]; - } else if ([[[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeType] isEqualToString:kCIAttributeTypeDistance]) { + } else if ([type isEqualToString:kCIAttributeTypeDistance]) { CGFloat width = [[transitionFilter valueForKey:key] doubleValue]; value = [NSNumber numberWithDouble:scale * width]; - } else if ([[[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeClass] isEqualToString:@"CIImage"]) { + } else if ([type isEqualToString:kCIAttributeTypePosition]) { + if ([transitionFilter valueForKey:key] == nil) continue; + CGPoint point = [[transitionFilter valueForKey:key] CGPointValue]; + value = [CIVector vectorWithCGPoint:CGPointMake(scale * point.x, scale * point.y)]; + } else if ([type isEqualToString:kCIAttributeTypeRectangle]) { + if ([transitionFilter valueForKey:key] == nil) continue; + CGRect r = [[transitionFilter valueForKey:key] CGRectValue]; + value = [CIVector vectorWithCGRect:CGRectMake(scale * CGRectGetMinX(r), scale * CGRectGetMinY(r), scale * CGRectGetWidth(r), scale * CGRectGetHeight(r))]; + } else if ([type isEqualToString:kCIAttributeTypeImage]) { // Scale and translate our mask image to match the transition area size. static CIImage *inputMaskImage = nil; if (inputMaskImage == nil) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 15:29:37
|
Revision: 14466 http://sourceforge.net/p/skim-app/code/14466 Author: hofman Date: 2024-09-22 15:29:35 +0000 (Sun, 22 Sep 2024) Log Message: ----------- Scale default values for type distance filter attributes by the resolution scale Modified Paths: -------------- trunk/SKTransitionController.m Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-22 15:28:13 UTC (rev 14465) +++ trunk/SKTransitionController.m 2024-09-22 15:29:35 UTC (rev 14466) @@ -279,7 +279,7 @@ } // rect and bounds are in pixels -- (CIFilter *)transitionFilterForTransition:(SKTransitionInfo *)info rect:(CGRect)rect bounds:(CGRect)bounds forward:(BOOL)forward initialImage:(CIImage *)initialImage finalImage:(CIImage *)finalImage { +- (CIFilter *)transitionFilterForTransition:(SKTransitionInfo *)info rect:(CGRect)rect bounds:(CGRect)bounds scale:(CGFloat)scale forward:(BOOL)forward initialImage:(CIImage *)initialImage finalImage:(CIImage *)finalImage { NSString *filterName = [[self class] nameForStyle:[info transitionStyle]]; CIFilter *transitionFilter = [CIFilter filterWithName:filterName]; @@ -313,6 +313,9 @@ value = [NSNumber numberWithBool:forward == NO]; else if ([[NSSet setWithObjects:@"inputForward", @"inputLeft", nil] containsObject:key]) value = [NSNumber numberWithBool:forward]; + } else if ([[[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeType] isEqualToString:kCIAttributeTypeDistance]) { + CGFloat width = [[transitionFilter valueForKey:key] doubleValue]; + value = [NSNumber numberWithDouble:scale * width]; } else if ([[[[transitionFilter attributes] objectForKey:key] objectForKey:kCIAttributeClass] isEqualToString:@"CIImage"]) { // Scale and translate our mask image to match the transition area size. static CIImage *inputMaskImage = nil; @@ -435,6 +438,7 @@ CIFilter *transitionFilter = [self transitionFilterForTransition:currentTransition rect:cgRect bounds:cgBounds + scale:imageScale forward:toIndex >= fromIndex initialImage:initialImage finalImage:finalImage]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 15:28:14
|
Revision: 14465 http://sourceforge.net/p/skim-app/code/14465 Author: hofman Date: 2024-09-22 15:28:13 +0000 (Sun, 22 Sep 2024) Log Message: ----------- declare some transition attributes as type distance instead of scalar Modified Paths: -------------- trunk/SkimTransitions/BlindsTransition/SKTBlindsTransition.m trunk/SkimTransitions/StripsTransition/SKTStripsTransition.m Modified: trunk/SkimTransitions/BlindsTransition/SKTBlindsTransition.m =================================================================== --- trunk/SkimTransitions/BlindsTransition/SKTBlindsTransition.m 2024-09-22 14:34:40 UTC (rev 14464) +++ trunk/SkimTransitions/BlindsTransition/SKTBlindsTransition.m 2024-09-22 15:28:13 UTC (rev 14465) @@ -33,7 +33,7 @@ [NSNumber numberWithDouble: 100.0], kCIAttributeSliderMax, [NSNumber numberWithDouble: 50.0], kCIAttributeDefault, [NSNumber numberWithDouble: 0.0], kCIAttributeIdentity, - kCIAttributeTypeScalar, kCIAttributeType, + kCIAttributeTypeDistance, kCIAttributeType, nil], kCIInputWidthKey, [NSDictionary dictionaryWithObjectsAndKeys: Modified: trunk/SkimTransitions/StripsTransition/SKTStripsTransition.m =================================================================== --- trunk/SkimTransitions/StripsTransition/SKTStripsTransition.m 2024-09-22 14:34:40 UTC (rev 14464) +++ trunk/SkimTransitions/StripsTransition/SKTStripsTransition.m 2024-09-22 15:28:13 UTC (rev 14465) @@ -38,7 +38,7 @@ [NSNumber numberWithDouble: 100.0], kCIAttributeSliderMax, [NSNumber numberWithDouble: 50.0], kCIAttributeDefault, [NSNumber numberWithDouble: 0.0], kCIAttributeIdentity, - kCIAttributeTypeScalar, kCIAttributeType, + kCIAttributeTypeDistance, kCIAttributeType, nil], kCIInputWidthKey, [NSDictionary dictionaryWithObjectsAndKeys: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-22 14:34:42
|
Revision: 14464 http://sourceforge.net/p/skim-app/code/14464 Author: hofman Date: 2024-09-22 14:34:40 +0000 (Sun, 22 Sep 2024) Log Message: ----------- fix index for animation Modified Paths: -------------- trunk/SKPresentationView.m Modified: trunk/SKPresentationView.m =================================================================== --- trunk/SKPresentationView.m 2024-09-20 14:59:20 UTC (rev 14463) +++ trunk/SKPresentationView.m 2024-09-22 14:34:40 UTC (rev 14464) @@ -282,7 +282,7 @@ NSUInteger idx = [page pageIndex]; if (idx > 0) { PDFPage *toPage = [pdfDoc pageAtIndex:idx - 1]; - if ([self window] == nil || NO == [self animateTransitionFromIndex:idx toPage:toPage atIndex:idx + 1]) + if ([self window] == nil || NO == [self animateTransitionFromIndex:idx toPage:toPage atIndex:idx - 1]) [self setPage:toPage]; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-20 14:59:22
|
Revision: 14463 http://sourceforge.net/p/skim-app/code/14463 Author: hofman Date: 2024-09-20 14:59:20 +0000 (Fri, 20 Sep 2024) Log Message: ----------- combine some cursor and navwindow related calls in convenience methods Modified Paths: -------------- trunk/SKPresentationView.m Modified: trunk/SKPresentationView.m =================================================================== --- trunk/SKPresentationView.m 2024-09-20 14:18:04 UTC (rev 14462) +++ trunk/SKPresentationView.m 2024-09-20 14:59:20 UTC (rev 14463) @@ -81,6 +81,7 @@ @interface SKPresentationView () <CALayerDelegate> - (void)setCursorForMouse:(NSEvent *)theEvent; +- (void)setCursorAndAutoHide; - (void)doAutoHideCursor; - (void)doAutoHide; - (void)showNavWindow; @@ -314,7 +315,7 @@ - (void)toggleLaserPointer:(id)sender { pvFlags.useArrowCursor = pvFlags.useArrowCursor == NO; - [self setCursorForMouse:nil]; + [self setCursorAndAutoHide]; [[NSUserDefaults standardUserDefaults] setBool:pvFlags.useArrowCursor forKey:SKUseArrowCursorInPresentationKey]; [cursorWindow selectCursorStyle:[self cursorStyle]]; } @@ -321,9 +322,7 @@ - (void)nextLaserPointerColor:(id)sender { laserPointerColor = (laserPointerColor + 1) % 7; - pvFlags.cursorHidden = NO; - [self setCursorForMouse:nil]; - [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; + [self setCursorAndAutoHide]; [[NSUserDefaults standardUserDefaults] setInteger:laserPointerColor forKey:SKLaserPointerColorKey]; [cursorWindow selectCursorStyle:[self cursorStyle]]; } @@ -330,9 +329,7 @@ - (void)previousLaserPointerColor:(id)sender { laserPointerColor = (laserPointerColor + 6) % 7; - pvFlags.cursorHidden = NO; - [self setCursorForMouse:nil]; - [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; + [self setCursorAndAutoHide]; [[NSUserDefaults standardUserDefaults] setInteger:laserPointerColor forKey:SKLaserPointerColorKey]; [cursorWindow selectCursorStyle:[self cursorStyle]]; } @@ -445,8 +442,7 @@ if (didHideMouse) { [self doAutoHideCursor]; } else { - [self setCursorForMouse:nil]; - [self performSelectorOnce:@selector(doAutoHideCursor) afterDelay:AUTO_HIDE_DELAY]; + [self setCursorAndAutoHide]; } } @@ -453,7 +449,7 @@ - (void)mouseMoved:(NSEvent *)theEvent { pvFlags.cursorHidden = NO; - [self setCursorForMouse:theEvent]; + [self setCursorAndAutoHide]; if (navigationMode != SKNavigationNone && [navWindow isVisible] == NO) { if (navigationMode == SKNavigationEverywhere && [cursorWindow isVisible] == NO && NSPointInRect([theEvent locationInWindow], [[[self window] contentView] frame])) { @@ -465,7 +461,7 @@ [self performSelectorOnce:@selector(showNavWindow) afterDelay:SHOW_NAV_DELAY]; } } - [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; + [super mouseMoved:theEvent]; } @@ -717,6 +713,11 @@ #pragma mark Cursors and HUD windows +- (void)cancelDelayedRequests { + [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(showNavWindow) object:nil]; + [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; +} + - (void)didOpen { [self setAutoScales:YES]; [pageView setAlphaValue:1.0]; @@ -728,9 +729,7 @@ - (void)willClose { pvFlags.cursorHidden = NO; [NSCursor setHiddenUntilMouseMoves:NO]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(showNavWindow) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; + [self cancelDelayedRequests]; if (navWindow) { [navWindow remove]; navWindow = nil; @@ -755,6 +754,12 @@ [[NSCursor laserPointerCursorWithColor:laserPointerColor] set]; } +- (void)setCursorAndAutoHide { + pvFlags.cursorHidden = NO; + [self setCursorForMouse:nil]; + [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; +} + - (void)doAutoHideCursor { if ([NSWindow windowNumberAtPoint:[NSEvent mouseLocation] belowWindowWithWindowNumber:0] == [[self window] windowNumber]) { [[NSCursor emptyCursor] set]; @@ -793,9 +798,7 @@ } - (void)handleWindowDidResignKeyNotification:(NSNotification *)notification { - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(showNavWindow) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; + [self cancelDelayedRequests]; pvFlags.cursorHidden = NO; [[NSCursor arrowCursor] set]; } @@ -808,9 +811,7 @@ } - (void)viewWillMoveToWindow:(NSWindow *)newWindow { - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(showNavWindow) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; + [self cancelDelayedRequests]; NSNotificationCenter *nc = [NSNotificationCenter defaultCenter]; NSWindow *oldWindow = [self window]; @@ -822,9 +823,6 @@ [nc addObserver:self selector:@selector(handleWindowDidBecomeKeyNotification:) name:NSWindowDidBecomeKeyNotification object:newWindow]; [nc addObserver:self selector:@selector(handleWindowDidResignKeyNotification:) name:NSWindowDidResignKeyNotification object:newWindow]; } else { - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(showNavWindow) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; - [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; [pageView setAlphaValue:1.0]; pvFlags.cursorHidden = NO; [NSCursor setHiddenUntilMouseMoves:NO]; @@ -843,10 +841,8 @@ } - (void)viewDidMoveToWindow { - if ([[self window] isKeyWindow]) { - [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; - [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; - } + if ([[self window] isKeyWindow]) + [self handleWindowDidBecomeKeyNotification:nil]; [super viewDidMoveToWindow]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-20 14:18:05
|
Revision: 14462 http://sourceforge.net/p/skim-app/code/14462 Author: hofman Date: 2024-09-20 14:18:04 +0000 (Fri, 20 Sep 2024) Log Message: ----------- set arrow cursor when window resigns key, e.g. when showing a sheet Modified Paths: -------------- trunk/SKPresentationView.m Modified: trunk/SKPresentationView.m =================================================================== --- trunk/SKPresentationView.m 2024-09-19 16:27:07 UTC (rev 14461) +++ trunk/SKPresentationView.m 2024-09-20 14:18:04 UTC (rev 14462) @@ -797,7 +797,7 @@ [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; pvFlags.cursorHidden = NO; - [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; + [[NSCursor arrowCursor] set]; } - (void)handleWindowDidBecomeKeyNotification:(NSNotification *)notification { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-19 16:27:09
|
Revision: 14461 http://sourceforge.net/p/skim-app/code/14461 Author: hofman Date: 2024-09-19 16:27:07 +0000 (Thu, 19 Sep 2024) Log Message: ----------- delay setting cursor in some cases as calling it directly is ignored Modified Paths: -------------- trunk/SKPresentationView.m Modified: trunk/SKPresentationView.m =================================================================== --- trunk/SKPresentationView.m 2024-09-19 16:06:09 UTC (rev 14460) +++ trunk/SKPresentationView.m 2024-09-19 16:27:07 UTC (rev 14461) @@ -721,7 +721,7 @@ [self setAutoScales:YES]; [pageView setAlphaValue:1.0]; - [self setCursorForMouse:nil]; + [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; } @@ -797,12 +797,12 @@ [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHide) object:nil]; [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(doAutoHideCursor) object:nil]; pvFlags.cursorHidden = NO; - [self setCursorForMouse:nil]; + [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; } - (void)handleWindowDidBecomeKeyNotification:(NSNotification *)notification { if (pvFlags.cursorHidden == NO) { - [self setCursorForMouse:nil]; + [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; } } @@ -844,7 +844,7 @@ - (void)viewDidMoveToWindow { if ([[self window] isKeyWindow]) { - [self setCursorForMouse:nil]; + [self performSelectorOnce:@selector(setCursorForMouse:) afterDelay:0.0]; [self performSelectorOnce:@selector(doAutoHide) afterDelay:AUTO_HIDE_DELAY]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-19 16:06:12
|
Revision: 14460 http://sourceforge.net/p/skim-app/code/14460 Author: hofman Date: 2024-09-19 16:06:09 +0000 (Thu, 19 Sep 2024) Log Message: ----------- remove unused method Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2024-09-19 15:51:01 UTC (rev 14459) +++ trunk/SKPDFView.m 2024-09-19 16:06:09 UTC (rev 14460) @@ -3825,10 +3825,6 @@ [currentAnnotation setBounds:newBounds]; } -- (void)updateCursorForMouse:(NSEvent *)theEvent { - [self setCursorForAreaOfInterest:[self areaOfInterestForMouse:theEvent]]; -} - - (void)doDragAnnotationWithEvent:(NSEvent *)theEvent { // currentAnnotation should be movable, or nil to be added in an appropriate note tool mode This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-19 15:51:04
|
Revision: 14459 http://sourceforge.net/p/skim-app/code/14459 Author: hofman Date: 2024-09-19 15:51:01 +0000 (Thu, 19 Sep 2024) Log Message: ----------- remove begin/end GestureWithEvent handlers Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2024-09-18 22:14:03 UTC (rev 14458) +++ trunk/SKPDFView.m 2024-09-19 15:51:01 UTC (rev 14459) @@ -2062,19 +2062,6 @@ } } -- (void)beginGestureWithEvent:(NSEvent *)theEvent { - [super beginGestureWithEvent:theEvent]; - PDFPage *page = [self pageAndPoint:NULL forEvent:theEvent nearest:YES]; - gestureRotation = 0.0; - gesturePageIndex = [(page ?: [self currentPage]) pageIndex]; -} - -- (void)endGestureWithEvent:(NSEvent *)theEvent { - [super endGestureWithEvent:theEvent]; - gestureRotation = 0.0; - gesturePageIndex = NSNotFound; -} - - (void)rotateWithEvent:(NSEvent *)theEvent { NSEventPhase phase = [theEvent phase]; if (phase == NSEventPhaseBegan) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2024-09-18 22:14:05
|
Revision: 14458 http://sourceforge.net/p/skim-app/code/14458 Author: hofman Date: 2024-09-18 22:14:03 +0000 (Wed, 18 Sep 2024) Log Message: ----------- let metal command buffer keep strong reference to recources, avoids a warning with the page turn transition Modified Paths: -------------- trunk/SKTransitionController.m Modified: trunk/SKTransitionController.m =================================================================== --- trunk/SKTransitionController.m 2024-09-17 16:05:39 UTC (rev 14457) +++ trunk/SKTransitionController.m 2024-09-18 22:14:03 UTC (rev 14458) @@ -606,7 +606,7 @@ return; id<CAMetalDrawable> drawable = [view currentDrawable]; - id<MTLCommandBuffer> commandBuffer = [commandQueue commandBufferWithUnretainedReferences]; + id<MTLCommandBuffer> commandBuffer = [commandQueue commandBuffer]; id<MTLRenderCommandEncoder> commandEncoder = [commandBuffer renderCommandEncoderWithDescriptor:[view currentRenderPassDescriptor]]; [commandEncoder endEncoding]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |