Просмотр исходного кода

【BOTA】快照右键菜单显示功能调式

tangchao 1 год назад
Родитель
Сommit
cb7399556d

+ 6 - 22
PDF Office/PDF Master.xcodeproj/xcuserdata/kdanmobile.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -366,8 +366,8 @@
             filePath = "PDF Master/Class/PDFTools/Snapshot/Window/KMSnapshotWindowController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "738"
-            endingLineNumber = "738"
+            startingLineNumber = "725"
+            endingLineNumber = "725"
             landmarkName = "windowDidMiniaturize(_:)"
             landmarkType = "7">
          </BreakpointContent>
@@ -420,22 +420,6 @@
             </Locations>
          </BreakpointContent>
       </BreakpointProxy>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            uuid = "2EBC946B-9896-4938-9330-BB7C0B2909A1"
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "PDF Master/Class/PDFWindowController/Side/LeftSide/KMLeftSideViewController.swift"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "5430"
-            endingLineNumber = "5430"
-            landmarkName = "showSnapshot(_:)"
-            landmarkType = "7">
-         </BreakpointContent>
-      </BreakpointProxy>
       <BreakpointProxy
          BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
          <BreakpointContent
@@ -446,8 +430,8 @@
             filePath = "PDF Master/Class/PDFWindowController/Side/LeftSide/KMLeftSideViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "5434"
-            endingLineNumber = "5434"
+            startingLineNumber = "5441"
+            endingLineNumber = "5441"
             landmarkName = "deleteSnapshot(_:)"
             landmarkType = "7">
          </BreakpointContent>
@@ -462,8 +446,8 @@
             filePath = "PDF Master/Class/PDFWindowController/Side/LeftSide/KMLeftSideViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "5438"
-            endingLineNumber = "5438"
+            startingLineNumber = "5445"
+            endingLineNumber = "5445"
             landmarkName = "menuItemClick_Copy(_:)"
             landmarkType = "7">
          </BreakpointContent>

+ 16 - 29
PDF Office/PDF Master/Class/PDFTools/Snapshot/Window/KMSnapshotWindowController.swift

@@ -74,20 +74,9 @@ class KMSnapshotWindowController: NSWindowController {
     
     /*
      #define EM_DASH_CHARACTER (unichar)0x2014
-
-     
-     
-
      NSString *SKSnapshotCurrentSetupKey = @"currentSetup";
 
-
-
      static char SKSnaphotWindowDefaultsObservationContext;
-
-     @interface SKSnapshotWindowController ()
-     @property (nonatomic, copy) NSString *pageLabel;
-     @property (nonatomic) BOOL hasWindow;
-     @end
      */
     
     private let SMALL_DELAY =  0.1
@@ -511,7 +500,6 @@ class KMSnapshotWindowController: NSWindowController {
         miniaturizeWindow.backgroundImage = self.windowImage
         miniaturizeWindow.orderFront(nil)
         self.animating = true
-//        let hasWindow = self.hasWindow
          
         NSAnimationContext.runAnimationGroup { context in
             context.duration = RESIZE_TIME_FACTOR * miniaturizeWindow.animationResizeTime(endRect)
@@ -553,24 +541,23 @@ class KMSnapshotWindowController: NSWindowController {
         }
         self.hasWindow = false
      }
+    
+    func deminiaturize() {
+        if (self.animating) {
+            return
+        }
+        if let dockRect = self.delegate?.snapshotController?(self, miniaturizedRect: false) {
+            let endRect = self.window?.frame ?? .zero
+            let startRect = self.miniaturizedRectForDockingRect(dockRect)
+            
+            self.miniaturizeWindowFromRect(startRect, toRect: endRect)
+//            SKDESTROY(windowImage);
+        } else {
+            self.showWindow(self)
+        }
+        self.hasWindow = true
+    }
 /*
-     - (void)deminiaturize {
-         if (animating)
-             return;
-         if ([[self delegate] respondsToSelector:@selector(snapshotController:miniaturizedRect:)]) {
-             NSRect dockRect = [[self delegate] snapshotController:self miniaturizedRect:NO];
-             NSRect endRect = [[self window] frame];
-             NSRect startRect = [self miniaturizedRectForDockingRect:dockRect];
-             
-             [self miniaturizeWindowFromRect:startRect toRect:endRect];
-             
-             SKDESTROY(windowImage);
-         } else {
-             [self showWindow:self];
-         }
-         [self setHasWindow:YES];
-     }
-
      #pragma mark KVO
 
      - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {

+ 8 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/LeftSide/KMLeftSideViewController.swift

@@ -5427,7 +5427,14 @@ extension KMLeftSideViewController {
     }
     
     @objc func showSnapshot(_ sender: AnyObject?) {
-        KMPrint("showSnapshot")
+        guard let snapshot = (sender as? NSMenuItem)?.representedObject as? KMSnapshotWindowController else {
+            return
+        }
+        if let data = snapshot.window?.isVisible, data {
+            snapshot.window?.orderFront(nil)
+        } else {
+            snapshot.deminiaturize()
+        }
     }
     
     @objc func deleteSnapshot(_ sender: AnyObject?) {