|
@@ -186,7 +186,6 @@ struct KMNMWCFlags {
|
|
|
private var _documentFirstLoad: Bool = true
|
|
|
|
|
|
var eventMonitor: Any?
|
|
|
- var keyEventMonitor: Any?
|
|
|
var mouseRightMenuEvent: NSEvent?
|
|
|
|
|
|
lazy private var homeVC: KMNHomeViewController? = {
|
|
@@ -267,7 +266,6 @@ struct KMNMWCFlags {
|
|
|
self.listView.document?.delegate = nil
|
|
|
|
|
|
self.removeEventMonitor()
|
|
|
- self.removeKeyEventMonitor()
|
|
|
}
|
|
|
|
|
|
override func viewDidLoad() {
|
|
@@ -7271,94 +7269,6 @@ extension KMMainViewController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- func addKeyEventMonitor() {
|
|
|
- if (self.keyEventMonitor != nil) {
|
|
|
- self.removeKeyEventMonitor()
|
|
|
- }
|
|
|
- keyEventMonitor = NSEvent.addLocalMonitorForEvents(matching: .keyDown) { [weak self] event in
|
|
|
- if event.keyCode == 53 {
|
|
|
- if let data = self?.interactionMode, data == .presentation { // 幻灯片模式下
|
|
|
- self?.exitFullScreen()
|
|
|
- return event
|
|
|
- }
|
|
|
- if self?.listView.toolMode == .CEditPDFToolMode {
|
|
|
- if self != nil {
|
|
|
- //使用editingSelectionString获取内容文字
|
|
|
- if self!.listView.editingAreas() != nil {
|
|
|
- if self!.listView.editingAreas().count > 0 && self!.listView.isEditable() {
|
|
|
- self!.listView.clearEditingSelectCharItem()
|
|
|
- } else if self!.listView.editingAreas().count > 0 {
|
|
|
- if self?.listView.shouAddEditAreaType() == .image ||
|
|
|
- self?.listView.shouAddEditAreaType() == .text {
|
|
|
- }
|
|
|
- self?.listView.endEditIsRemoveBlock(with: self!.listView.editingAreas().first as? CPDFEditArea)
|
|
|
- self?.listView.updateEditing([])
|
|
|
- self?.listView.isEditImage = false
|
|
|
- self?.listView.setNeedsDisplayPageViewFor(self!.listView.currentPage())
|
|
|
- if self?.listView.shouAddEditAreaType() == .image {
|
|
|
- self?.listView.change([.text, .image])
|
|
|
- }
|
|
|
- self?.toggleCloseRightSide()
|
|
|
- } else if(self?.listView.shouAddEditAreaType() == .image || self!.listView.shouAddEditAreaType() == .text) {
|
|
|
- if self?.listView.shouAddEditAreaType() == .image ||
|
|
|
- self?.listView.shouAddEditAreaType() == .text {
|
|
|
- }
|
|
|
- self?.listView.setShouAddEdit([])
|
|
|
- self?.listView.change([.text, .image])
|
|
|
- self?.toggleCloseRightSide()
|
|
|
- }
|
|
|
-
|
|
|
- } else {
|
|
|
- if self?.listView.shouAddEditAreaType() == .image ||
|
|
|
- self?.listView.shouAddEditAreaType() == .text {
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- if let data = self?.interactionMode, data == .presentation { // 幻灯片模式下
|
|
|
- self?.listView.keyDown(with: event)
|
|
|
- return event
|
|
|
- } else {
|
|
|
- let cmd = event.modifierFlags.contains(.command)
|
|
|
- let shift = event.modifierFlags.contains(.shift)
|
|
|
- if event.keyCode == 6 { // z
|
|
|
- let editPDFIng = self?.listView.isEditing() ?? false
|
|
|
- if cmd && shift { // 恢复
|
|
|
- let can = self?.listView.canEditTextRedo() ?? false
|
|
|
- if can == false {
|
|
|
- return event
|
|
|
- }
|
|
|
- if editPDFIng {
|
|
|
- _ = CustomAlertView.alertView(message: NSLocalizedString("Redo", comment: ""), fromView: self!.view, withStyle: .black)
|
|
|
-
|
|
|
- }
|
|
|
- } else if cmd { // 撤回
|
|
|
- let can = self?.listView.canEditTextUndo() ?? false
|
|
|
- if can == false {
|
|
|
- return event
|
|
|
- }
|
|
|
- if editPDFIng {
|
|
|
- _ = CustomAlertView.alertView(message: NSLocalizedString("Undo", comment: ""), fromView: self!.view, withStyle: .black)
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- return event
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- func removeKeyEventMonitor() {
|
|
|
- if (self.keyEventMonitor != nil) {
|
|
|
- KMPrint("removeKeyEventMonitor 已移除事件监听")
|
|
|
-
|
|
|
- NSEvent.removeMonitor(self.keyEventMonitor as Any)
|
|
|
- self.keyEventMonitor = nil
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
private func removeEventMonitor() {
|
|
|
if (self.eventMonitor != nil) {
|
|
|
KMPrint("已移除事件监听")
|