Browse Source

【fix】【内容编辑】内嵌文档,首次选中文字块时,悬浮入口引导跑版

TangChao 7 months ago
parent
commit
01e163b7d5

+ 16 - 11
PDF Office/PDF Master/Class/PDFTools/EditPDF/Tools/KMEditPDfHanddler.swift

@@ -190,7 +190,7 @@ class KMEditPDfHanddler: NSObject {
         self.viewC?.closeRightPane()
     }
     
-    func showPopWindow(positionRect: NSRect) {
+    func showPopWindow(positionRect: NSRect, showGuide: Bool) {
         if self.editAreasIsEmpty() {
             return
         }
@@ -315,7 +315,9 @@ class KMEditPDfHanddler: NSObject {
         
         // 显示新手引导
         if let toolbarView = (win.contentViewController as? KMEditPDFPopToolBarController)?.toolbarView {
-            self.showGuideView(toolbarView)
+            if showGuide {
+                self.showGuideView(toolbarView)
+            }
         }
     }
     
@@ -379,8 +381,11 @@ class KMEditPDfHanddler: NSObject {
                 var winFrame = self.viewC?.view.window?.frame ?? .zero
                 winFrame.size.height -= 20
                 
-                let area = (self.listView?.editingAreas().first as? CPDFEditArea)
-                let areaBounds = (self.listView?.convert(area!.bounds, from: area!.page) as? NSRect) ?? .zero
+            guard let area = (self.listView?.editingAreas().first as? CPDFEditArea) else {
+                return
+            }
+            
+                let areaBounds = (self.listView?.convert(area.bounds, from: area.page) as? NSRect) ?? .zero
                 
                 let guideWC = KMGuideInfoWindowController.currentWC()
                 guideWC.type = .editPDFPopWindow
@@ -1042,7 +1047,7 @@ extension KMEditPDfHanddler {
         
         Task { @MainActor [weak self] in
             if let data = self?.listView?.selectImageAreas {
-                self?.showPopWindow(positionRect:data.bounds)
+                self?.showPopWindow(positionRect:data.bounds, showGuide: false)
             }
         }
     }
@@ -1477,7 +1482,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
             }
         }
         if let data = flag {
-            self.showPopWindow(positionRect: data.bounds)
+            self.showPopWindow(positionRect: data.bounds, showGuide: true)
         }
     }
     
@@ -1571,7 +1576,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
                             self.viewC?.model.isPDFTextImageEdited = true
                             self.viewC?.recordIsPDFDocumentEdited(type: .editImage)
                             
-                            self.showPopWindow(positionRect: imageRect)
+                            self.showPopWindow(positionRect: imageRect, showGuide: true)
                         }
                     }
                 }
@@ -1629,7 +1634,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
             self.rightViewC?.eidtPDFTextProperty.handdler = self
             self.rightViewC?.eidtPDFTextProperty.refreshSelectAreaProperty(needDefaultData: true)
         }
-        self.showPopWindow(positionRect: newRect)
+        self.showPopWindow(positionRect: newRect, showGuide: true)
     }
     
     // 文本区块 选中文本已经变化
@@ -1640,7 +1645,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
             self.rightViewC?.eidtPDFTextProperty.reloadData()
             self.rightViewC?.eidtPDFTextProperty.updateTextTextPresuppositionState()
             
-            self.showPopWindow(positionRect: .zero)
+            self.showPopWindow(positionRect: .zero, showGuide: false)
         }
     }
     
@@ -1672,7 +1677,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
     }
     
     func pdfViewMobileEditingEnd(_ point: CGPoint, for pdfView: CPDFView!, forEditing editingAreas: [CPDFEditArea]!) {
-        self.showPopWindow(positionRect: .zero)
+        self.showPopWindow(positionRect: .zero, showGuide: false)
     }
     
     func pdfViewEditingSelectCharDidChanged(_ pdfView: CPDFView!) {
@@ -1685,7 +1690,7 @@ extension KMEditPDfHanddler: CPDFViewDelegate {
 //            self.rightViewC?.eidtPDFTextProperty.reloadData()
 //            self.rightViewC?.eidtPDFTextProperty.updateTextTextPresuppositionState()
             
-            self.showPopWindow(positionRect: .zero)
+            self.showPopWindow(positionRect: .zero, showGuide: false)
             self._reloadData_right_text()
         }
     }