Touch paths.

This commit is contained in:
2025-02-08 15:07:59 -08:00
parent ab305f7acf
commit e13df96b68
4 changed files with 20 additions and 10 deletions

View File

@@ -35,8 +35,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
{
HotKeyManager.shared.registerHotKey(key: code, modifiers: mods)
} else {
// NOTE: This is the default shortcut. If you want to change
// it, do not forget to change it in other files
// NOTE: This is the default shortcut. If you want to change it, do not forget to change it in other files
// (SettingsViewController).
HotKeyManager.shared.registerHotKey(key: kVK_Space, modifiers: optionKey)
}
@@ -79,7 +78,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
aboutWindow.makeKeyAndOrderFront(nil)
}
// NOTE: This function is triggered by DirMonitor.
// NOTE: This function act like a callback is triggered by DirMonitor when file system events occur.
public func fsEventTriggered(_ path: String, _ flags: Int) {
if containsFlags(key: kFSEventStreamEventFlagItemCreated, in: flags) ||
containsFlags(key: kFSEventStreamEventFlagItemRemoved, in: flags) ||

View File

@@ -133,4 +133,11 @@ final class PathManager {
}
refreshFilesystemWatchers()
}
// Touch paths to load them into CPUs cache.
public func touchPaths() {
for path in paths {
_ = path
}
}
}

View File

@@ -149,7 +149,7 @@ class SearchViewController: NSViewController, NSTextFieldDelegate, NSPopoverDele
backgroundView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
backgroundView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
searchInput.widthAnchor.constraint(equalToConstant: 350),
searchInput.widthAnchor.constraint(equalToConstant: 400),
searchInput.topAnchor.constraint(equalTo: contentView.topAnchor, constant: ViewConstants.spacing10),
searchInput.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: ViewConstants.spacing15),
@@ -197,8 +197,8 @@ class SearchViewController: NSViewController, NSTextFieldDelegate, NSPopoverDele
}
let select = controller.programsTableViewSelection
self?.programsTableView.selectRowIndexes(IndexSet(integer: select), byExtendingSelection: false)
self?.programsTableView.scrollRowToVisible(select)
self?.programsTableView.selectRowIndexes(IndexSet(integer: select), byExtendingSelection: false)
self?.programsTableView.scrollRowToVisible(select)
}
return event
@@ -228,8 +228,13 @@ class SearchViewController: NSViewController, NSTextFieldDelegate, NSPopoverDele
view.window?.makeFirstResponder(searchInput)
// searchInput should select all text whenever window appears.
NSApp.sendAction(#selector(NSResponder.selectAll(_:)),
to: nil, from: self)
NSApp.sendAction(#selector(NSResponder.selectAll(_:)), to: nil, from: self)
}
override func viewWillAppear() {
super.viewWillAppear()
PathManager.shared.touchPaths()
}
override func viewDidDisappear() {

View File

@@ -317,8 +317,7 @@ class SettingsViewController: NSViewController,
override func viewWillDisappear() {
super.viewWillDisappear()
HotKeyManager.shared.registerHotKey(key: keyCode,
modifiers: modifiers)
HotKeyManager.shared.registerHotKey(key: keyCode, modifiers: modifiers)
UserDefaults.standard.set(keyCode, forKey: "keyCode")
UserDefaults.standard.set(modifiers, forKey: "keyModifiers")