Parcourir la source

Merge branch 'develop_PDFReaderProNew' of git.kdan.cc:Mac_PDF/PDF_Office into develop_PDFReaderProNew

liujiajie il y a 11 mois
Parent
commit
3fe6061a69

+ 11 - 6
PDF Office/PDF Master/Class/PDFTools/PageEdit/Controller/KMPDFEditViewController.swift

@@ -92,13 +92,14 @@ class KMPDFEditViewController: KMPDFThumbViewBaseController {
         self.kmUndoManager = UndoManager()
         self.fileAttri_ = KMFileAttribute()
         self.fileAttri_?.password = document.password ?? ""
-        self.fileAttri_?.filePath = document.documentURL.path ?? ""
+        self.fileAttri_?.filePath = document.documentURL.path
     }
     
     override func viewDidAppear() {
         super.viewDidAppear()
         
         let isLocked = self.pdfDocument?.isLocked ?? false
+        let first = self.viewFirstAppear
         if (isLocked == false && self.viewFirstAppear) {
             self.viewFirstAppear = false
             if let doc = self.pdfDocument {
@@ -110,14 +111,12 @@ class KMPDFEditViewController: KMPDFThumbViewBaseController {
         if let view = self.listView { // 存储阅读视图的当前页面索引
             self._listViewCurrentIndex = view.currentPageIndex
         }
+        var item: Int = 0
         if (self.selectedPages.isEmpty) {
-            var index: Int = 0
-            if (self.listView != nil) {
-                index = self.listView!.currentPageIndex
-            }
-            
+            var index = self.listView?.currentPageIndex ?? 0
             self.selectPages(indexs: IndexSet(integer: index))
             self.toolBar.setPageRangeString("\(index+1)")
+            item = index
         } else {
             var indexs: IndexSet = []
             for pageIndex in self.selectedPages {
@@ -131,6 +130,12 @@ class KMPDFEditViewController: KMPDFThumbViewBaseController {
             
             self.selectPages(indexs: indexs)
             self.toolBar.setPageRangeString(KMPageRangeTools.newParseSelectedIndexs(selectedIndex: indexs.sorted()))
+            item = indexs.sorted().last ?? 0
+        }
+        if first {
+            var ips = Set<IndexPath>()
+            ips.insert(IndexPath(item: item, section: 0))
+            self.thumbnailView.collectionView.scrollToItems(at: ips, scrollPosition: .bottom)
         }
         
         self.view.window?.makeFirstResponder(self)

+ 131 - 156
PDF Office/PDF Master/Class/PDFWindowController/Side/LeftSide/KMLeftSideViewController.swift

@@ -17,6 +17,8 @@ import Cocoa
     
     @objc optional func controller(controller: KMLeftSideViewController, bookMarkDidChange bookMarks: [KMBookMarkItem])
     @objc optional func controller(controller: KMLeftSideViewController, rotateType: KMRotateType)
+    
+    @objc optional func controller(controller: KMLeftSideViewController, listViewSelectionDidChange object: Any?, info: [String : Any]?)
 }
 
 extension KMLeftSideViewController.Key {
@@ -24,81 +26,6 @@ extension KMLeftSideViewController.Key {
 }
 
 class KMLeftSideViewController: KMSideViewController {
-    var dataSource : [KMLeftMethodMode] = [KMLeftMethodMode]()
-
-    var type : KMLeftMethodMode = KMLeftMethodMode()
-    var isShowPanel : Bool = false
-    var norImage : [String] = []
-    var selectImage : [String] = []
-    var mainVC: KMMainViewController?
-    var selectPages: [Int]?
-    open weak var delegate: KMLeftSideViewControllerDelegate?
-    
-    let noteColumnId = NSUserInterfaceItemIdentifier(rawValue: "note")
-    let authorColumnId = NSUserInterfaceItemIdentifier(rawValue: "author")
-    
-    struct Key {}
-    
-    let scalingIncrement: Float = 0.1
-    
-    deinit {
-        KMPrint("KMLeftSideViewController deinit.")
-        
-        NotificationCenter.default.removeObserver(self)
-        DistributedNotificationCenter.default().removeObserver(self)
-    }
-    
-    override var nibName: NSNib.Name? {
-        return "LeftSideView"
-    }
-    
-    convenience init(type : KMLeftMethodMode) {
-        self.init()
-        self.type = type
-    }
-    
-    override func viewDidLoad() {
-        super.viewDidLoad()
-        
-        self.reloadThumbnailSize()
-        self.reloadSnapshotSize()
-        
-//        DistributedNotificationCenter.default().addObserver(self, selector: #selector(interfaceThemeDidChanged), name: NSApplication.interfaceThemeChangedNotification, object: nil)
-    }
-    
-    func showPanelView(show: Bool) {
-        self.isShowPanel = show
-        if show {
-            self.leftView.segmentedControl.selectedSegment = 0
-        } else {
-            self.leftView.segmentedControl.selectedSegment = UInt8.max
-            self.type.methodType = .None
-            self.delegate?.controlStateChange?(self, show: false)
-        }
-    }
-    
-    func refreshMethodType(methodType: BotaType) {
-        let newType = KMLeftMethodMode()
-        var show = true
-        if self.type.methodType != methodType {
-            newType.methodType = methodType
-        }
-        if self.type.methodType == methodType {
-            show = false
-        } else if methodType == .None {
-            show = false
-        }
-        self.type = newType;
-        self.delegate?.controlStateChange?(self,show:show)
-    }
-    
-    // MARK: - New
-    /*
-         NSArrayController *findArrayController;
-         NSArrayController *groupedFindArrayController;
-     }
-     */
-    
     @IBOutlet var segmentedControl: KMSegmentedControl!
     
     @IBOutlet var thumbnailTableView: KMThumbnailTableView!
@@ -152,13 +79,93 @@ class KMLeftSideViewController: KMSideViewController {
     @IBOutlet weak var emptySearchBox: NSBox!
     @IBOutlet weak var emptySearchLabel: NSTextField!
     
+    lazy var leftSideEmptyVC: KMLeftSideEmptyFileViewController = {
+        let vc = KMLeftSideEmptyFileViewController(nibName: "KMLeftSideEmptyFileViewController", bundle: nil)
+        vc.view.wantsLayer = true
+        return vc
+    }()
+    
+    lazy var leftView: KMBotaLeftView = {
+        let view = KMBotaLeftView()
+        return view
+    }()
+
+    static let kMinSidePaneWidth: CGFloat = 270
+    
+    var type : KMLeftMethodMode = KMLeftMethodMode()
+    var isShowPanel : Bool = false
+    weak var delegate: KMLeftSideViewControllerDelegate?
+    
+    let noteColumnId = NSUserInterfaceItemIdentifier(rawValue: "note")
+    let authorColumnId = NSUserInterfaceItemIdentifier(rawValue: "author")
+    
+    struct Key {}
+    
+    var mwcFlags: MwcFlags = MwcFlags()
+    let scalingIncrement: Float = 0.1
+    
     var filterButtonLayer: NSView?
     var moreButtonLayer: KMButtonLayer?
     
+    // 缩略图
     var thumbnails: [KMThumbnail] = []
     var isDisplayPageSize = false
     var thumbnailCacheSize: CGFloat = 32 * 3
+    var updatingThumbnailSelection = false
+    
+    // 大纲
+    var isSearchOutlineMode = false
+    var outlineIgnoreCaseFlag = false
+    var tocType: KMFoldType = .none
+    var renamePDFOutline: CPDFOutline?
+    var renamePDFOutlineTextField: NSTextField?
+    private var _dragPDFOutline: CPDFOutline?
+    var updatingOutlineSelection = false
+    
+    // 注释
+    var noteTypeDict: [String : Any] = [:]
+    private var _noteSortType: KMNoteSortType = .none
+    var noteSortType: KMNoteSortType {
+        get {
+            return self._noteSortType
+        }
+        set {
+            self._noteSortType = newValue
+            
+            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "KMAnnotationSortTypeKeyNotification"), object: self)
+        }
+    }
+    
+    var isAscendSort = false {
+        didSet {
+            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "KMAnnotationSortTypeKeyNotification"), object: self)
+        }
+    }
+    
+    var allFoldNotes: [CPDFAnnotation] = []
+    var canFoldNotes: [CPDFAnnotation] = []
+    
+    var isRenameNoteOutline = false
+
+    // 注释列表数据源
+    var annotations: [KMBOTAAnnotationSection] = []
+    // 所有注释
+    var allAnnotations: [CPDFAnnotation] = []
+    // 注释搜索模式标记
+    var noteSearchMode = false
+    // 注释搜索数组
+    var noteSearchArray: [CPDFAnnotation] = []
+    // 注释搜索 忽略大小写标识
+    var caseInsensitiveNoteSearch = false
+    
+    // 快照
     var snapshotCacheSize: CGFloat = 32 * 3
+    var isSearchSnapshotMode = false
+    var snapshots: [KMSnapshotModel] = []
+    var dirtySnapshots: [KMSnapshotWindowController] = []
+    var searchSnapshots: [KMSnapshotModel] = []
+    
+    // 搜索
     private var _findState: KMFindState = .none
     var findState: KMFindState {
         get {
@@ -172,7 +179,6 @@ class KMLeftSideViewController: KMSideViewController {
                 if self._findState == .content {
                     self.search(self.searchField)
                 } else if self.findState == .note {
-//                    self.searchNotes(self.searchField)
                     self.searchNotes(nil)
                 } else if self.findState == .snapshot {
                     self.searchNotes(self.searchField)
@@ -188,96 +194,69 @@ class KMLeftSideViewController: KMSideViewController {
     }
     var groupSearchResults: [KMSearchMode] = []
     var findPaneState: KMFindPaneState = .singular
-    var isSearchOutlineMode = false
-    var isSearchSnapshotMode = false
-    var outlineIgnoreCaseFlag = false
-    var noteTypeDict: [String : Any] = [:]
     
-    private let MIN_SIDE_PANE_WIDTH: CGFloat = 270
-    private let LABEL_COLUMNID = "label"
     var foldType: KMFoldAllAnnotationType = .none
     
-    var tocType: KMFoldType = .none
-    
-    var snapshots: [KMSnapshotModel] = []
-    var dirtySnapshots: [KMSnapshotWindowController] = []
-    var searchSnapshots: [KMSnapshotModel] = []
-    
-    private var _noteSortType: KMNoteSortType = .none
-    var noteSortType: KMNoteSortType {
-        get {
-            return self._noteSortType
-        }
-        set {
-            self._noteSortType = newValue
-            
-            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "KMAnnotationSortTypeKeyNotification"), object: self)
-        }
-    }
-    
-    var isAscendSort = false {
-        didSet {
-            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "KMAnnotationSortTypeKeyNotification"), object: self)
-        }
-    }
-    
-    lazy var leftSideEmptyVC: KMLeftSideEmptyFileViewController = {
-        let vc = KMLeftSideEmptyFileViewController(nibName: "KMLeftSideEmptyFileViewController", bundle: nil)
-        vc.view.wantsLayer = true
-        return vc
-    }()
-    
     var leftMargin: CGFloat = 0
     
-    lazy var leftView: KMBotaLeftView = {
-        let view = KMBotaLeftView()
-        return view
-    }()
-    
     private var _copysPages: [CPDFPage] = []
     var copyPages: [CPDFPage] {
         get {
             return self._copysPages
         }
     }
+    var dragIn = false
     
-    private let kKMPDFViewOutlineDragDataType  = NSPasteboard.PasteboardType("kKMPDFViewOutlineDragDataType")
     private let KPDFThumbnailDoucumentURLForDraggedTypes  = NSPasteboard.PasteboardType("KPDFThumbnailDoucumentURLForDraggedTypes")
     
-    var renamePDFOutline: CPDFOutline?
-    var renamePDFOutlineTextField: NSTextField?
-    var allFoldNotes: [CPDFAnnotation] = []
-    var notes: [CPDFAnnotation] = []
-    var canFoldNotes: [CPDFAnnotation] = []
-    
-    var isRenameNoteOutline = false
+    deinit {
+        KMPrint("KMLeftSideViewController deinit.")
+        
+        NotificationCenter.default.removeObserver(self)
+        DistributedNotificationCenter.default().removeObserver(self)
+    }
     
-    // 注释列表
-    // 注释列表数据源
-    var annotations: [KMBOTAAnnotationSection] = []
-    // 所有注释
-    var allAnnotations: [CPDFAnnotation] = []
-    // 注释搜索模式标记
-    var noteSearchMode = false
-    // 注释搜索数组
-    var noteSearchArray: [CPDFAnnotation] = []
-    // 注释搜索 忽略大小写标识
-    var caseInsensitiveNoteSearch = false
+    override var nibName: NSNib.Name? {
+        return "LeftSideView"
+    }
     
-    var mwcFlags: MwcFlags = MwcFlags()
+    convenience init(type : KMLeftMethodMode) {
+        self.init()
+        self.type = type
+    }
     
-    private var _dragPDFOutline: CPDFOutline?
+    override func viewDidLoad() {
+        super.viewDidLoad()
+        
+        self.reloadThumbnailSize()
+        self.reloadSnapshotSize()
+    }
     
-    var updatingOutlineSelection = false
+    func showPanelView(show: Bool) {
+        self.isShowPanel = show
+        if show {
+            self.leftView.segmentedControl.selectedSegment = 0
+        } else {
+            self.leftView.segmentedControl.selectedSegment = UInt8.max
+            self.type.methodType = .None
+            self.delegate?.controlStateChange?(self, show: false)
+        }
+    }
     
-    fileprivate var dragFilePath: String?
-    var filePromiseQueue: OperationQueue = {
-        let queue = OperationQueue()
-        return queue
-    }()
-    var dragIn = false
-    var dragedIndexPaths: [Int] = []
-    var updatingThumbnailSelection = false
+    func refreshMethodType(methodType: BotaType) {
+        let newType = KMLeftMethodMode()
+        var show = true
+        if self.type.methodType != methodType {
+            newType.methodType = methodType
+        }
+        if self.type.methodType == methodType {
+            show = false
+        } else if methodType == .None {
+            show = false
+        }
+        self.type = newType;
+        self.delegate?.controlStateChange?(self,show:show)
+    }
     
     override func loadView() {
         super.loadView()
@@ -600,7 +579,6 @@ class KMLeftSideViewController: KMSideViewController {
         frame.size.height = self.tocOutlineView.enclosingScrollView?.superview?.frame.size.height ?? 0
         self.tocOutlineView.enclosingScrollView?.frame = frame
         
-//        [self updateSnapshotsIfNeeded];
         Task { @MainActor in
             self.snapshotTableView.reloadData()
         }
@@ -1158,7 +1136,7 @@ extension KMLeftSideViewController: NSTableViewDelegate, NSTableViewDataSource {
             
             let newScaling: CGFloat = scaling.cgFloat + 0.1
             let newThumbnailHeight = thumbnailSize.width * newScaling
-            if (newThumbnailHeight > MIN_SIDE_PANE_WIDTH) {
+            if (newThumbnailHeight > Self.kMinSidePaneWidth) {
                 self.thumbnailZoomOutButton.isEnabled = false
             } else {
                 self.thumbnailZoomOutButton.isEnabled = true
@@ -1187,7 +1165,7 @@ extension KMLeftSideViewController: NSTableViewDelegate, NSTableViewDataSource {
             let snapshotSize = (self.snapshots.safe_element(for: row) as? KMSnapshotModel)?.windowC?.thumbnail?.size ?? CGSizeMake(120, 63)
             var newScaling = scaling + 0.1
             let newSnapshotHeight = snapshotSize.width * newScaling.cgFloat;
-            if (newSnapshotHeight > MIN_SIDE_PANE_WIDTH) {
+            if (newSnapshotHeight > Self.kMinSidePaneWidth) {
                 self.snapshotNormalZoomInButton.isEnabled = false
             } else {
                 self.snapshotNormalZoomInButton.isEnabled = true
@@ -1232,7 +1210,10 @@ extension KMLeftSideViewController: NSTableViewDelegate, NSTableViewDataSource {
     func tableViewSelectionIsChanging(_ notification: Notification) {
         
     }
+    
     func tableViewSelectionDidChange(_ notification: Notification) {
+        self.delegate?.controller?(controller: self, listViewSelectionDidChange: notification.object, info: nil)
+        
         if self.findTableView.isEqual(to: notification.object) {
             //            [self updateFindResultHighlightsForDirection:NSDirectSelection];
             let row = self.findTableView.selectedRow
@@ -1245,11 +1226,6 @@ extension KMLeftSideViewController: NSTableViewDelegate, NSTableViewDataSource {
         } else if self.groupedFindTableView.isEqual(to: notification.object) {
             //            [self updateFindResultHighlightsForDirection:NSDirectSelection];
         } else if self.thumbnailTableView.isEqual(to: notification.object) {
-            let row = self.thumbnailTableView.selectedRow
-            let curPage = self.currentPageIndex()
-            if (row != -1 && row != curPage) {
-                self.listView?.go(toPageIndex: row, animated: true)
-            }
             self.thumbnailTableView.ks_reloadData()
         } else if self.snapshotTableView.isEqual(to: notification.object) {
             let row = self.snapshotTableView.selectedRow
@@ -1264,7 +1240,6 @@ extension KMLeftSideViewController: NSTableViewDelegate, NSTableViewDataSource {
                     controller?.window?.orderFront(self)
                 }
             }
-//            self.snapshotTableView.reloadData()
             self.snapshotTableView.ks_reloadData()
         }
     }

+ 9 - 7
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/EditPDF/KMEditPDFTextPropertyViewController.swift

@@ -448,22 +448,24 @@ extension KMEditPDFTextPropertyViewController {
     
     @objc func resetTextPresuppositionButtonAction(sender: NSButton) {
         var popViewDataArr: [String] = []
-        for string in ["Redefine", "Reset"] {
-            popViewDataArr.append(NSLocalizedString(string, comment: ""))
+        
+        var dataArray = [NSLocalizedString("Redefine", comment: ""), NSLocalizedString("Reset", comment: "")]
+        for string in dataArray {
+            popViewDataArr.append(string)
         }
         
         //调整保存参数
         let index = self.textPresuppositionVC?.indexOfSelectedItem ?? 0
         let type = KMEditPDFTextFontType.typeOfRawValue(value: KMEditPDFTextFontType.allValues()[index])
         let model = KMEditPDFTextManager.manager.fetchUserDefaultData(type: type)
-        var disItems: [String] = popViewDataArr
+        var disItems: [String] = dataArray
         
         if model.change || model.redefine {
-            disItems.removeObject("Reset")
+            disItems.removeObject(NSLocalizedString("Reset", comment: ""))
         }
         
         if model.change {
-            disItems.removeObject("Redefine")
+            disItems.removeObject(NSLocalizedString("Redefine", comment: ""))
         }
         
         let vc: KMHomePopViewController = KMHomePopViewController().initWithPopViewDataArr(popViewDataArr)
@@ -478,9 +480,9 @@ extension KMEditPDFTextPropertyViewController {
 //        vc.customBoxWidthLayoutConstraint.constant = self.popWidth ?? sender.frame.width
         vc.downCallback = { [unowned self](downEntered: Bool, count: String) -> Void in
             if downEntered {
-                if count == "Reset" {
+                if count == NSLocalizedString("Reset", comment: "") {
                     self.resetTextPresuppositionData()
-                } else if count == "Redefine" {
+                } else if count == NSLocalizedString("Redefine", comment: "") {
                     self.reDefineTextPresuppositionData()
                 }
                 createFilePopover.close()

+ 3 - 3
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/KMToolbarViewController.swift

@@ -1272,9 +1272,9 @@ extension KMToolbarViewController {
             
             let menuItem = NSMenuItem.init(title: item?.titleName ?? "", action: nil, target: self)
             let menu = NSMenu()
-            menu.addItem(withTitle: NSLocalizedString("Document", comment: ""), action: #selector(shareViaWithDocument), target: self)
-            menu.addItem(withTitle: NSLocalizedString("Flattened Copy", comment: ""), action: #selector(shareViaWithFlatten), target: self)
-            menu.addItem(withTitle: NSLocalizedString("Original PDF", comment: ""), action: #selector(shareViaWithOriginalPDF), target: self)
+            _ = menu.addItem(withTitle: NSLocalizedString("Document", comment: ""), action: #selector(shareViaWithDocument), target: self)
+            _ = menu.addItem(withTitle: NSLocalizedString("Flattened Copy", comment: ""), action: #selector(shareViaWithFlatten), target: self)
+            _ = menu.addItem(withTitle: NSLocalizedString("Original PDF", comment: ""), action: #selector(shareViaWithOriginalPDF), target: self)
             menuItem.submenu = menu
             item?.menuFormRepresentation = menuItem
         } else if identifier == KMDocumentSearchToolbarItemIdentifier {

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

@@ -3412,17 +3412,17 @@ extension KMMainViewController {
     }
     
     func updateNextAndPreViousButtonState() {
-        let item = self.toolbarController.mainToolBarView?.toolbarItemFindItemIdentifiers(value: KMDocumentNextPageToolbarItemIdentifier)
-        let toItem = self.toolbarController.mainToolBarView?.toolbarItemFindItemIdentifiers(value: KMDocumentPreviousPageToolbarItemIdentifier)
-        if self.listView.canGoToNextPage() {
-            item?.unEnabled = false
+        let item = self.toolbarController.mainToolBarView?.toolbarItemFindItemIdentifiers(value: KMDocumentPreviousPageToolbarItemIdentifier)
+        let view = item?.customizeView as? KMToolbarPreviousNextItemView
+        if let can = self.listView?.canGoToPreviousPage() {
+            view?.previousButton.isEnabled = can
         } else {
-            item?.unEnabled = true
+            view?.previousButton.isEnabled = false
         }
-        if self.listView.canGoToPreviousPage() {
-            toItem?.unEnabled = false
+        if let can = self.listView?.canGoToNextPage() {
+            view?.nextButton.isEnabled = can
         } else {
-            toItem?.unEnabled = true
+            view?.nextButton.isEnabled = false
         }
     }
     
@@ -4963,7 +4963,7 @@ extension KMMainViewController: KMReadModelViewDelegate {
         }
         self.listView.scaleFactor = scale
         
-        self.toolbarController.mainViewController?.childToolbarController.zoomTextField.stringValue =  "\(Int(self.listView.scaleFactor*100))%"
+        self.toolbarController.mainViewController?.childToolbarController.zoomTextField?.stringValue =  "\(Int(self.listView.scaleFactor*100))%"
     }
     
     func cancelReadModel(view: KMReadModelView, sender: Any) {

+ 10 - 0
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+UI.swift

@@ -579,6 +579,16 @@ extension KMMainViewController: KMLeftSideViewControllerDelegate {
             self.menuItemAction_rotateLeft((Any).self)
         }
     }
+    
+    func controller(controller: KMLeftSideViewController, listViewSelectionDidChange object: Any?, info: [String : Any]?) {
+        if controller.thumbnailTableView.isEqual(to: object) {
+            let row = controller.thumbnailTableView.selectedRow
+            let curIndex = self.listView.currentPageIndex
+            if (row != -1 && row != curIndex) {
+                self.listView?.go(toPageIndex: row, animated: true)
+            }
+        }
+    }
 }
 
 //MARK: ReadModel

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

@@ -357,7 +357,6 @@ let LOCKED_KEY  = "locked"
     
     override func viewDidLoad() {
         super.viewDidLoad()
-        leftSideViewController.mainVC = self
         
         mwcFlags.settingUpWindow = 1
         toolbarController.delegate = self

+ 8 - 8
PDF Office/PDF Reader Pro.xcodeproj/xcuserdata/kdanmobile.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -414,8 +414,8 @@
             filePath = "PDF Master/Class/PDFWindowController/ViewController/KMMainViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "2413"
-            endingLineNumber = "2413"
+            startingLineNumber = "2412"
+            endingLineNumber = "2412"
             landmarkName = "pdfViewEditingAreaDidChanged(_:)"
             landmarkType = "7">
          </BreakpointContent>
@@ -430,8 +430,8 @@
             filePath = "PDF Master/Class/PDFWindowController/ViewController/KMMainViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "2518"
-            endingLineNumber = "2518"
+            startingLineNumber = "2517"
+            endingLineNumber = "2517"
             landmarkName = "pdfViewEditingCropBoundsDidChanged(_:editing:)"
             landmarkType = "7">
          </BreakpointContent>
@@ -446,8 +446,8 @@
             filePath = "PDF Master/Class/PDFWindowController/ViewController/KMMainViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "2525"
-            endingLineNumber = "2525"
+            startingLineNumber = "2524"
+            endingLineNumber = "2524"
             landmarkName = "pdfViewEditingAddImageArea(_:add:add:)"
             landmarkType = "7">
          </BreakpointContent>
@@ -462,8 +462,8 @@
             filePath = "PDF Master/Class/PDFWindowController/ViewController/KMMainViewController.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "2612"
-            endingLineNumber = "2612"
+            startingLineNumber = "2611"
+            endingLineNumber = "2611"
             landmarkName = "pdfViewEditingAddTextArea(_:add:add:)"
             landmarkType = "7">
          </BreakpointContent>