Bläddra i källkod

【2025】【综合】Link刷新优化

niehaoyu 2 veckor sedan
förälder
incheckning
2af2158ba8

+ 6 - 51
PDF Office/PDF Master/AppDelegate+MenuAction.swift

@@ -1050,46 +1050,9 @@ extension AppDelegate {
                 return false
             }
             if action == NSSelectorFromString("menuItemAction_Next:") {
-                if mainVC.listView.isEditing() {
-                    let editingAreas = mainVC.listView.km_EditingAreas()
-                    if(editingAreas.count > 0) {
-                        var isEditSelect = false
-                        if !mainVC.listView.isSelecteditAreaNotEdit() { //光标输入状态
-                            isEditSelect = true
-                        } else {
-                            let editState = mainVC.listView.editStatus()
-                            if (editState == .editSelectText) {// 选择文本
-                                isEditSelect = true
-                            }
-                        }
-                        
-                        if isEditSelect {
-                            return true
-                        }
-                    }
-                }
-                return (mainVC.pdfViewCanHorizontalScroll() == false && mainVC.listView.canGoToNextPage())
+                return mainVC.listView.canGoToNextPage()
             } else if action == NSSelectorFromString("menuItemAction_Previous:") {
-                
-                if mainVC.listView.isEditing(){
-                    let editingAreas = mainVC.listView.km_EditingAreas()
-                    if(editingAreas.count > 0) {
-                        var isEditSelect = false
-                        if !mainVC.listView.isSelecteditAreaNotEdit() { //光标输入状态
-                            isEditSelect = true
-                        } else {
-                            let editState = mainVC.listView.editStatus()
-                            if (editState == .editSelectText) {// 选择文本
-                                isEditSelect = true
-                            }
-                        }
-                        
-                        if isEditSelect {
-                            return true
-                        }
-                    }
-                }
-                return (mainVC.pdfViewCanHorizontalScroll() == false && mainVC.listView.canGoToPreviousPage())
+                return mainVC.listView.canGoToPreviousPage()
             } else if action == NSSelectorFromString("menuItemAction_First:") {
                 if(mainVC.listView.isEditing()) {
                     let editingAreas = mainVC.listView.km_EditingAreas()
@@ -1144,23 +1107,15 @@ extension AppDelegate {
     //MARK: -IBAction
     @IBAction func menuItemAction_Next(_ sender: NSMenuItem) {
         if let mainVC = self.mainViewController() {
-            if(mainVC.listView.isEditing()) {
-                mainVC.keyDownEditCmdRight()
-            } else {
-                if (mainVC.listView.canGoToNextPage()) {
-                    mainVC.listView.goToNextPage(nil)
-                }
+            if (mainVC.listView.canGoToNextPage()) {
+                mainVC.listView.goToNextPage(nil)
             }
         }
     }
     @IBAction func menuItemAction_Previous(_ sender: NSMenuItem) {
         if let mainVC = self.mainViewController() {
-            if(mainVC.listView.isEditing()) {
-                mainVC.keyDownEditCmdLeft()
-            } else {
-                if (mainVC.listView.canGoToPreviousPage()) {
-                    mainVC.listView.goToPreviousPage(nil)
-                }
+            if (mainVC.listView.canGoToPreviousPage()) {
+                mainVC.listView.goToPreviousPage(nil)
             }
         }
     }

+ 3 - 1
PDF Office/PDF Master/Base.lproj/Main.storyboard

@@ -871,12 +871,14 @@ CA
                                 <modifierMask key="keyEquivalentModifierMask"/>
                                 <menu key="submenu" title="Go" id="GTp-Ac-vi8">
                                     <items>
-                                        <menuItem title="Next" keyEquivalent="" id="pO6-Zz-d6k">
+                                        <menuItem title="Next " keyEquivalent="" id="pO6-Zz-d6k">
+                                            <modifierMask key="keyEquivalentModifierMask"/>
                                             <connections>
                                                 <action selector="menuItemAction_Next:" target="Voe-Tx-rLC" id="OJn-ij-OwJ"/>
                                             </connections>
                                         </menuItem>
                                         <menuItem title="Previous" keyEquivalent="" id="4Vo-Yp-w3w">
+                                            <modifierMask key="keyEquivalentModifierMask"/>
                                             <connections>
                                                 <action selector="menuItemAction_Previous:" target="Voe-Tx-rLC" id="kA0-lf-7xS"/>
                                             </connections>

+ 7 - 2
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMLinkEmailView/KMLinkEmailView.swift

@@ -8,6 +8,8 @@
 import Cocoa
 import KMComponentLibrary
 
+let CPDFLinkAnnotationUpdateNotiName  = NSNotification.Name("CPDFLinkAnnotationUpdateNotiName")
+
 @objc public protocol KMLinkEmailViewDelegate: AnyObject {
     
     @objc optional func kmLinkEmailViewDidGo(_ view: KMLinkEmailView, _ emailString: String)
@@ -77,8 +79,8 @@ public class KMLinkEmailView: BaseXibView {
             return
         }
         if var urlString = annotation.url(), urlString.hasPrefix("mailto:") {
-             urlString = urlString.substring(form: 7)
-             inputTextarea.properties.text = urlString
+            urlString = urlString.substring(form: 7)
+            inputTextarea.properties.text = urlString
         } else {
             inputTextarea.properties.text = ""
         }
@@ -127,6 +129,9 @@ extension KMLinkEmailView: ComponentTextareaDelegate {
     }
     
     public func componentTextareaTextDidEndEditing(_ view: ComponentTextarea) {
+        reloadData()
+        
+        NotificationCenter.default.post(name: CPDFLinkAnnotationUpdateNotiName, object: nil)
         
     }
 }

+ 3 - 0
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMLinkWebView/KMLinkWebView.swift

@@ -131,6 +131,9 @@ extension KMLinkWebView: ComponentTextareaDelegate {
     }
     
     public func componentTextareaTextDidEndEditing(_ view: ComponentTextarea) {
+        reloadData()
         
+        NotificationCenter.default.post(name: CPDFLinkAnnotationUpdateNotiName, object: nil)
+
     }
 }

+ 12 - 0
PDF Office/PDF Master/KMClass/PDFListView/WindowController/KMNPopAnnotationViewController.swift

@@ -426,6 +426,9 @@ class KMNPopAnnotationViewController: KMNBaseViewController {
     
     override func viewDidLoad() {
         super.viewDidLoad()
+        
+        NotificationCenter.default.addObserver(self, selector: #selector(linkAnnotationUpdate), name: CPDFLinkAnnotationUpdateNotiName, object: nil)
+
     }
     
     override func initContentView() {
@@ -961,6 +964,15 @@ class KMNPopAnnotationViewController: KMNBaseViewController {
             updatePDFViewCallback?()
         }
     }
+    
+    //MARK: - Noti
+    @objc func linkAnnotationUpdate() {
+        self.view.window?.makeFirstResponder(nil)
+        
+        let type = self.linkType
+        self.linkType = type
+        
+    }
 }
 
 //MARK: - ComponentCColorDelegate

+ 2 - 2
PDF Office/PDF Master/KMClass/PDFListView/WindowController/KMNPopAnnotationViewController.xib

@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21507" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22505" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21507"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22505"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>

+ 2 - 2
PDF Office/PDF Master/KMClass/PDFListView/WindowController/KMNPopOperationViewController.xib

@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="23504" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22505" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="23504"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22505"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>