let clickedRow = tableView.clickedRow
- guard let bookmarks = bookmarkController.arrangedObjects as? [Any] else { return }
- guard case 0..<bookmarks.count = clickedRow else { return }
+ guard let bookmarks = bookmarkController.arrangedObjects as? [Any] else {
+
+ return
+ }
+ guard case 0..<bookmarks.count = clickedRow else {
+
+ return
+ }
editorController?.representedObject = bookmarks[clickedRow]
popover.show(relativeTo: tableView.rect(ofRow: clickedRow), of: tableView, preferredEdge: .minY)
let clickedRow = tableView.clickedRow
- guard let bookmarks = bookmarkController.arrangedObjects as? [Any] else { return }
- guard case 0..<bookmarks.count = clickedRow else { return }
+ guard let bookmarks = bookmarkController.arrangedObjects as? [Any] else {
+
+ return
+ }
+ guard case 0..<bookmarks.count = clickedRow else {
+
+ return
+ }
bookmarkController.remove(atArrangedObjectIndex: clickedRow)
}
func reorderingBoolmarks() {
- guard let objects = bookmarkController.arrangedObjects as? [Bookmark] else { return }
+ guard let objects = bookmarkController.arrangedObjects as? [Bookmark] else {
+
+ return
+ }
var order = 100
objects.forEach {
+
$0.order = order
order += 100
}
func tableViewSelectionDidChange(_ notification: Notification) {
- guard let tableView = notification.object as? NSTableView else { return }
- guard let bookmarks = bookmarkController.arrangedObjects as? [Bookmark] else { return }
+ guard let tableView = notification.object as? NSTableView else {
+
+ return
+ }
+ guard let bookmarks = bookmarkController.arrangedObjects as? [Bookmark] else {
+
+ return
+ }
let selection = tableView.selectedRow
tableView.deselectAll(nil)
- guard case 0..<bookmarks.count = selection else { return }
+ guard case 0..<bookmarks.count = selection else {
+
+ return
+ }
delegate?.didSelectBookmark(bookmarks[selection])
}
func tableView(_ tableView: NSTableView, pasteboardWriterForRow row: Int) -> NSPasteboardWriting? {
- guard let objects = bookmarkController.arrangedObjects as? [NSPasteboardWriting] else { return nil }
+ guard let objects = bookmarkController.arrangedObjects as? [NSPasteboardWriting] else {
+
+ return nil
+ }
return objects[row]
}
func tableView(_ tableView: NSTableView, draggingSession session: NSDraggingSession, willBeginAt screenPoint: NSPoint, forRowIndexes rowIndexes: IndexSet) {
- guard let first = rowIndexes.first else { return }
- guard let last = rowIndexes.last else { return }
+ guard let first = rowIndexes.first else {
+
+ return
+ }
+ guard let last = rowIndexes.last else {
+
+ return
+ }
draggingRange = first...last
}
proposedRow row: Int,
proposedDropOperation dropOperation: NSTableView.DropOperation) -> NSDragOperation {
- guard dropOperation == .above else { return [] }
- guard !(draggingRange ~= row) else { return [] }
- guard let tableView = info.draggingSource() as? NSTableView, tableView == self.tableView else { return [] }
+ guard dropOperation == .above else {
+
+ return []
+ }
+ guard !(draggingRange ~= row) else {
+
+ return []
+ }
+ guard let tableView = info.draggingSource() as? NSTableView, tableView == self.tableView else {
+
+ return []
+ }
return .move
}
return target.order
}()
- guard let items = info.draggingPasteboard().pasteboardItems else { return false }
+ guard let items = info.draggingPasteboard().pasteboardItems else {
+
+ return false
+ }
let store = BookmarkManager.shared.editorStore
store.sync {
+
items.enumerated().forEach {
- guard let data = $0.element.data(forType: .bookmarkItem) else { return }
- guard let uri = NSKeyedUnarchiver.unarchiveObject(with: data) as? URL else { return }
- guard let oID = self.managedObjectContext.persistentStoreCoordinator?.managedObjectID(forURIRepresentation: uri) else { return }
- guard let bookmark = store.object(of: Bookmark.entity, with: oID) else { return }
+ guard let data = $0.element.data(forType: .bookmarkItem) else {
+
+ return
+ }
+ guard let uri = NSKeyedUnarchiver.unarchiveObject(with: data) as? URL else {
+
+ return
+ }
+ guard let bookmark = store.object(of: Bookmark.entity, forURIRepresentation: uri) else {
+
+ return
+ }
bookmark.order = targetOrder + $0.offset + 1
}