Kaynağa Gözat

【综合】注释,点击引导提示的close,崩溃(已修复)

tangchao 1 yıl önce
ebeveyn
işleme
053686a6ee

+ 0 - 9
PDF Office/PDF Master/Class/ChromiumTabs/KMBrowserWindowController+Actions.swift

@@ -124,15 +124,6 @@ extension KMBrowserWindowController {
         if let mainVc = (self.document as? KMMainDocument)?.mainViewController {
             mainVc.exitFullscreenMode()
         }
-//        [self applyPDFSettings:savedNormalSetup];
-//        [savedNormalSetup removeAllObjects];
-//
-//        [pdfView layoutDocumentView];
-//        [pdfView requiresDisplay];
-//
-//        if ([[[self pdfView] currentPage] isEqual:page] == NO)
-//            [[self pdfView] goToPage:page];
-//
         self.window?.isSwitchingFullScreen = false
 
         self.forceSubwindowsOnTop(false)

Dosya farkı çok büyük olduğundan ihmal edildi
+ 2 - 146
PDF Office/PDF Master/Class/Common/Category/NSWindowController+KMExtension.swift


+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMGeneralAnnotationViewController.swift

@@ -412,7 +412,7 @@ let KMColorPickerViewHeight: CGFloat = 64
         let showConvertDetails = KMPropertiesViewPopController.showChangeColorDetails()
         let fileURL = (self.view.window?.windowController?.document as? NSDocument)?.fileURL
         if showConvertDetails && (fileURL != nil)  {
-            KMPropertiesViewPopController.defaultManager().showChangeColorDetailsView(self.textColorPickerView.firstButton)
+            KMPropertiesViewPopController.defaultManager.showChangeColorDetailsView(self.textColorPickerView.firstButton)
         }
     }
     

+ 7 - 6
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/KMPropertiesViewPopController.swift

@@ -15,10 +15,11 @@ import Cocoa
     var popOver: NSPopover?
     var block: (() -> Void)?
 
-    class func defaultManager() -> KMPropertiesViewPopController {
-        let singleton = KMPropertiesViewPopController()
-        return singleton
-    }
+//    class func defaultManager() -> KMPropertiesViewPopController {
+//        let singleton = KMPropertiesViewPopController()
+//        return singleton
+//    }
+    static let defaultManager = KMPropertiesViewPopController()
 
     class func showChangeColorDetails() -> Bool {
         let isOpenConvertDetails = UserDefaults.standard.bool(forKey: "KMPropertiesHaveChangeColorDetails")
@@ -30,8 +31,8 @@ import Cocoa
 
     func showChangeColorDetailsView(_ view: NSView) {
         let popViewController = KMPropertiesViewPopController()
-        popViewController.block = { [unowned self] in
-            self.popOver?.close()
+        popViewController.block = { [weak self] in
+            self?.popOver?.close()
         }
         self.popOver = NSPopover()
         self.popOver?.contentViewController = popViewController

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/ViewController/FormProperties/KMAnnotationButtonWidgetAppearanceViewController.swift

@@ -137,7 +137,7 @@ import Cocoa
 
         let showConvertDetails = KMPropertiesViewPopController.showChangeColorDetails()
         if showConvertDetails, self.view.window?.windowController?.document?.fileURL != nil {
-            KMPropertiesViewPopController.defaultManager().showChangeColorDetailsView(self.textColorPickerView.firstButton)
+            KMPropertiesViewPopController.defaultManager.showChangeColorDetailsView(self.textColorPickerView.firstButton)
         }
     }
     

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/ViewController/FormProperties/KMAnnotationChoiceWidgetAppearanceViewController.swift

@@ -108,7 +108,7 @@ private enum KMPDFAnnotationFontWeightType: Int {
         let showConvertDetails = KMPropertiesViewPopController.showChangeColorDetails()
         if showConvertDetails, let document = self.view.window?.windowController?.document as? NSDocument,
             document.fileURL != nil {
-            KMPropertiesViewPopController.defaultManager().showChangeColorDetailsView(colorPickerView.firstButton)
+            KMPropertiesViewPopController.defaultManager.showChangeColorDetailsView(colorPickerView.firstButton)
         }
         
 //        NotificationCenter.default.addObserver(self, selector: #selector(themeChanged(_:)),

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/ViewController/FormProperties/KMAnnotationFromViewController.swift

@@ -82,7 +82,7 @@ import Cocoa
 
         let showConvertDetails = KMPropertiesViewPopController.showChangeColorDetails()
         if showConvertDetails, let document = self.view.window?.windowController?.document as? NSDocument, document.fileURL != nil {
-            KMPropertiesViewPopController.defaultManager().showChangeColorDetailsView(colorPickerView.firstButton)
+            KMPropertiesViewPopController.defaultManager.showChangeColorDetailsView(colorPickerView.firstButton)
         }
 
 //        NotificationCenter.default.addObserver(self, selector: #selector(themeChanged(_:)), name: NSNotification.Name("AppleInterfaceThemeChangedNotification"), object: nil)

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/AnnotationProperty/ViewController/KMAnnotationSelfSignViewController.swift

@@ -129,7 +129,7 @@ typealias KMAnnotationSelfSignViewControllerCallBack = (CAnnotationType) -> Void
 
         if showConvertDetails, let document = view.window?.windowController?.document as? NSDocument,
            let fileURL = document.fileURL {
-            KMPropertiesViewPopController.defaultManager().showChangeColorDetailsView(colorPickView.firstButton)
+            KMPropertiesViewPopController.defaultManager.showChangeColorDetailsView(colorPickView.firstButton)
         }
     }
     

+ 34 - 0
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+Action.swift

@@ -758,12 +758,46 @@ extension KMMainViewController {
         if self.interactionMode == .presentation {
             self.exitPresentationMode()
         }
+        
+        //        [self applyPDFSettings:savedNormalSetup];
+        self.applyPDFSettings(self.savedNormalSetup)
+        self.savedNormalSetup.removeAllObjects()
+        
+        self.listView.layoutDocumentView()
+        self.listView.requiresDisplay()
+        
+        //        if ([[[self pdfView] currentPage] isEqual:page] == NO)
+        //            [[self pdfView] goToPage:page];
+        
         if let backgroundColor = UserDefaults.standard.color(forKey: "SKBackgroundColorKey") {
             self.listView.backgroundColor = backgroundColor
             self.secondaryPdfView?.backgroundColor = backgroundColor
         }
     }
     
+    func applyPDFSettings(_ setup: NSDictionary) {
+        if let data = setup.object(forKey: AUTOSCALES_KEY) as? NSNumber {
+            self.listView.autoScales = data.boolValue
+        }
+        if self.listView.autoScales == false {
+            if let data = setup.object(forKey: SCALEFACTOR_KEY) as? NSNumber {
+                self.listView.scaleFactor = data.floatValue.cgFloat
+            }
+        }
+        if let data = setup.object(forKey: DISPLAYSPAGEBREAKS_KEY) as? NSNumber {
+            self.listView.displaysPageBreaks = data.boolValue
+        }
+        if let data = setup.object(forKey: DISPLAYSASBOOK_KEY) as? NSNumber {
+            self.listView.displaysAsBook = data.boolValue
+        }
+        if let data = setup.object(forKey: DISPLAYMODE_KEY) as? NSNumber {
+            self.listView.displayMode = CPDFDisplayMode(rawValue: data.intValue) ?? .normal
+        }
+        if let data = setup.object(forKey: DISPLAYBOX_KEY) as? NSNumber {
+            self.listView.displayBox = CPDFDisplayBox(rawValue: data.intValue) ?? .cropBox
+        }
+    }
+    
     func exitPresentationMode() {
 //        if (activityAssertionID != kIOPMNullAssertionID && kIOReturnSuccess == IOPMAssertionRelease(activityAssertionID))
 //            activityAssertionID = kIOPMNullAssertionID;

+ 2 - 2
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController.swift

@@ -1786,8 +1786,8 @@ let LOCKED_KEY  = "locked"
         keyEventMonitor = NSEvent.addLocalMonitorForEvents(matching: .keyDown) { [weak self] event in
 //            print(event.keyCode)
             if event.keyCode == 53 {
-                if let data = self?.browserWindowController?.interactionMode, data == .presentation { // 幻灯片模式下
-                    if let data = self?.browserWindowController?.canExitPresentation(), data {
+                if let data = self?.interactionMode, data == .presentation { // 幻灯片模式下
+                    if let data = self?.canExitPresentation(), data {
                         self?.browserWindowController?.exitFullscreen()
                     }
                     return nil