diff --git a/YAPS/YAPS/ContentView.swift b/YAPS/YAPS/ContentView.swift index d0abc31..ce13241 100644 --- a/YAPS/YAPS/ContentView.swift +++ b/YAPS/YAPS/ContentView.swift @@ -42,7 +42,7 @@ struct ContentView: View { .focusable() .onMoveCommand { (direction) in var newIndex = Shared.shared.currentFile.index - + print("\(direction)") switch direction { case MoveCommandDirection.down: let max = self.fileList.count diff --git a/YAPS/YAPS/FinderHelper.swift b/YAPS/YAPS/FinderHelper.swift index 7cd5a1e..60a8b5c 100644 --- a/YAPS/YAPS/FinderHelper.swift +++ b/YAPS/YAPS/FinderHelper.swift @@ -53,7 +53,7 @@ class FinderHelper { var index = 0 for item in items { - let yapsFile: YapsFile = YapsFile(index: index, name: item.lastPathComponent, file: item, current: false) + let yapsFile: YapsFile = YapsFile(index: -1, name: item.lastPathComponent, file: item, current: false) fileList.append(yapsFile) index += 1 } @@ -61,7 +61,28 @@ class FinderHelper { // failed to read directory – bad permissions, perhaps? } - return fileList + return indexify(list: fileList.sorted { + let f01: YapsFile = $0 + let f02: YapsFile = $1 + + let cd01 = FinderHelper.shared.getFileAttributes(yapsFile: f01)[FileAttributeKey.creationDate] as! Date + let cd02 = FinderHelper.shared.getFileAttributes(yapsFile: f02)[FileAttributeKey.creationDate] as! Date + + return cd01 > cd02 + }) + } + + func indexify(list: [YapsFile]) -> [YapsFile] { + var indexifiedFileList = [YapsFile]() + var index = 0 + + for item in list { + let yapsFile: YapsFile = YapsFile(index: index, name: item.file.lastPathComponent, file: item.file, current: false) + indexifiedFileList.append(yapsFile) + index += 1 + } + + return indexifiedFileList } func getImageByFiletype(file: URL) -> Image { diff --git a/YAPS/YAPS/MiscHelper.swift b/YAPS/YAPS/MiscHelper.swift index 3c5d47a..506ac46 100644 --- a/YAPS/YAPS/MiscHelper.swift +++ b/YAPS/YAPS/MiscHelper.swift @@ -18,7 +18,7 @@ class MiscHelper { dateFormatterGet.dateFormat = "yyyy-MM-dd HH:mm:ss" let dateFormatterPrint = DateFormatter() - dateFormatterPrint.dateFormat = "yyyy.MM.dd" + dateFormatterPrint.dateFormat = "yyyy.MM.dd HH:mm:ss" if let date = dateFormatterGet.date(from: dateFormatterGet.string(from: inDate)) { return dateFormatterPrint.string(from: date) diff --git a/YAPS/YAPS/Model/YapsFile.swift b/YAPS/YAPS/Model/YapsFile.swift index 5c19b31..a2c53a0 100644 --- a/YAPS/YAPS/Model/YapsFile.swift +++ b/YAPS/YAPS/Model/YapsFile.swift @@ -10,8 +10,9 @@ import Foundation struct YapsFile: Identifiable, Hashable { let id = UUID() - let index: Int - let name: String - let file: URL + + var index: Int + var name: String + var file: URL var current: Bool }